C语言详细解析,帮我写出每一步每一行的注释意思

struct stu
{
int num;
char *name;
char sex;
float score;
}boy[5]={
{101,"Li ping",'M',45},
{102,"Zhang ping",'M',62.5},
{103,"He fang",'F',92.5},
{104,"Cheng ling",'F',87},
{105,"Wang ming",'M',58},
};
main()
{
int i,c=0;
float ave,s=0;
for(i=0;i<5;i++)
{
s+=boy[i].score;
if(boy[i].score<60) c+=1;
}
printf("s=%f\n",s);
ave=s/5;
printf("average=%f\ncount=%d\n",ave,c);
谢谢!还有如果学程序没兴趣,感到很难怎么办?还继续学吗?

首先其它这个例子很基础,很简单。看不懂只能说明前面的基础没学好。
两个点。结构体和数组。
//定义一个结构体,这个结构体真没什么好注释的。定义了5个,放在结构体数组里。
struct stu
{
int num;
char *name;
char sex;
float score;
}boy[5]={
{101,"Li ping",'M',45},
{102,"Zhang ping",'M',62.5},
{103,"He fang",'F',92.5},
{104,"Cheng ling",'F',87},
{105,"Wang ming",'M',58},
};

//入口函数,必须有的,不用注释吧
int main()
{
int i,c=0;
float ave,s=0;
for(i=0;i<5;i++) //给这5个结构体赋值。如果发现分数低于60,计下数
{
s+=boy[i].score;
if(boy[i].score<60) c+=1;
}
printf("s=%f\n",s);
ave=s/5;
printf("average=%f\ncount=%d\n",ave,c); //打印平均分和不极格的人数

return 0;
}

第二个问题:兴趣很重要,如果没有兴趣,强让自己学是没用的。重要的是你根本就没有兴趣,还是因为不会才没有兴趣的。 我是机械专业的,就是因为对机械没有兴趣才自学的编程,如果真没有兴趣,不要强求,想想自己的兴趣是什么。(的确大学的教育有很多不合理的地方,不过关键还是自己,不要依靠国内大学的教育给你什么,这是题外话了)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-02-21
struct stu // 这是一个叫stu的类
{
int num; // 定义一个num的int类型的变量
char *name; // 一个char类型的指针 name
char sex; // 一个char类型的变量 sex
float score; // 一个float 类型的变量 score
}boy[5]={ // 5 个这样的类
{101,"Li ping",'M',45}, // num , name , sex , score
{102,"Zhang ping",'M',62.5},
{103,"He fang",'F',92.5},
{104,"Cheng ling",'F',87},
{105,"Wang ming",'M',58},
};
main() // 主程序
{
int i,c=0;
float ave,s=0;
for(i=0;i<5;i++) // i 从0到4
{
s+=boy[i].score; // s记录所有人的成绩和
if(boy[i].score<60) c+=1; // c记录60分以下人的分数
}
printf("s=%f\n",s); //输出s
ave=s/5; // ave 为平均分
printf("average=%f\ncount=%d\n",ave,c); // 输出平均分和小于60的人数
第2个回答  2012-02-21
struct stu
{
int num;
char *name;
char sex;
float score;
} 定义数组里的内容为 整数 num 。字符串 name 字符串 sex 实数 score
boy[5]={
{101,"Li ping",'M',45},
{102,"Zhang ping",'M',62.5},
{103,"He fang",'F',92.5},
{104,"Cheng ling",'F',87},
{105,"Wang ming",'M',58},
}; 定义boy数组共5个数据 并为每一个数组中的量写入相应的内容,{序号,名字,M , 分数}
main() 主程序
{
int i,c=0; 定义整数 i ,c 等于0
float ave,s=0; 定义实数 ace,s 等于0
for(i=0;i<5;i++) 做5次循环
{
s+=boy[i].score; 一次读出 boy数组中的 分数(score) 并且相加后的和 放入 s中
if(boy[i].score<60) c+=1; 如果检测到当前分数 小于 60分 则 c 加1一次
}
printf("s=%f\n",s); 打印输出5个boy的总分数
ave=s/5; 求平均成绩
printf("average=%f\ncount=%d\n",ave,c); 输出平均成绩啊ave 换行后 再输出 不及格的人数 c本回答被网友采纳
第3个回答  2012-02-24
float score;
}boy[5]={
{101,"Li ping",'M',45},
{102,"Zhang ping",'M',62.5},
{103,"He fang",'F',92.5},
{104,"Cheng ling",'F',87},
{105,"Wang ming",'M',58},
};
main()
{
int i,c=0;
float ave,s=0;
for(i=0;i<5;i++)
{
s+=boy[i].score;
if(boy[i].score<60) c+=1;
}