计算机c语言编程,输出50个学生中成绩高于80分的人的学号与成绩

如题所述

typedef struct
{
usigned int score;

usigned int stu_num;

}Stu;

int main ()
{
Stu s[50]={0};

int i=0;

for(;i<50;i++)

{

printf("输入第%d个同学的学号\n",i+1);
scanf("%d",&s[i].stu_num);
printf("输入第%d个同学的成绩\n",i+1);
scanf("%d",&s[i].score);
}

for(i=0;i<50;i++)

{

if(s[i].score>80)

{
printf("第%d个成绩高于80分的学号:%d,成绩:%d\n",i+1,s[i].score,s[i].stu_num);
}

}

return 0;

}追问

看不懂,我是初学者

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-09
typedef struct
{
usigned int score;

usigned int stu_num;

}Stu;

int main ()
{
Stu s[50]={0};

int i=0;

for(;i<50;i++)

{

printf("输入第%d个同学的学号\n",i+1);
scanf("%d",&s[i].stu_num);
printf("输入第%d个同学的成绩\n",i+1);
scanf("%d",&s[i].score);
}

for(i=0;i<50;i++)

{

if(s[i].score>80)

{
printf("第%d个成绩高于80分的学号:%d,成绩:%d\n",i+1,s[i].score,s[i].stu_num);
}

}

return 0;

}
代码我就不写了。借用一下“洗洗647 ”的代码给你讲解一下。typedef struct
{
usigned int score;

usigned int stu_num;

}Stu;这是一个结构类型,类型的名字是Stu。和你定义普通类型变量一样。int类型你总该认识吧,你就把他先当成int类型来看。typedef是帮你为结构类型起一个别名,不然你总用struct
{
usigned int score;

usigned int stu_num;

}Stu当类型名那得多麻烦。接着进入main函数,Stu s[50]={0};定义一个结构数组。前面我说过,你先把结构类型当成int类型来看,int array[50]这样的数组你总该认识吧。={0}是赋初值,所有结构成员都是0.接下来第一个for循环输入50个结构成员的数据。结构算是复杂类型,访问结构成员需要使用 . 来访问。如果是结构指针就需要换成->。最后一个for循环是判断成绩高于80分的同学,并输出了成绩+学号。不懂再问
第2个回答  2014-04-08
一个简单的比较就可了
相似回答