读书人

这个如何打印出来

发布时间: 2012-02-04 15:43:08 作者: rapoo

这个怎么打印出来?
#include "stdio.h "
struct student
{
char num[5];
char name[10];
float score[3];
float average;
}stu[5];
main()
{
int i,j,sum;
for (i=0;i <5;i++)
{
printf( "\n ");
printf( "input NO.%d: ",i+1);
scanf( "%s ",stu[i].num);
printf( "input NAME %d: ",i+1);
scanf( "%s ",stu[i].name);
sum=0;
for (j=0;j <3;j++)
{
printf( "\n ");
printf( "input NO.%d score: ",j+1);
scanf( "%d ",&stu[i].score[j]);
sum+=stu[i].score[j];
}
stu[i].average=sum/3.0;

}

for(i=0;i <5;i++)
{
printf( "num is:%s\n ",stu[i].num);
printf( "name is:%s ",stu[i].name);

for (j=0;j <3;j++)
{
printf( "%f\n ",stu[i].score[j]);
printf( "%f\n ",stu[i].average);
}
}
system( "pause ");
}
可以输入五位学生的学号和姓名还有各三门成绩,但打印不出来,大虾们帮我看下打印的语句哪里不对?谢谢指教


[解决办法]
#include <stdio.h>
#include <stdlib.h>

struct student
{
char num[5];
char name[10];
float score[3];
float average;
}stu[5];

int main()
{
int i,j;
float sum;
for (i=0;i <5;i++)
{
printf( "\n ");
printf( "input NO.%d: ",i+1);
scanf( "%s ",stu[i].num);
printf( "input NAME %d: ",i+1);
scanf( "%s ",stu[i].name);
sum=0;
for (j=0;j <3;j++)
{
printf( "\n ");
printf( "input NO.%d score: ",j+1);
scanf( "%f ",&stu[i].score[j]); //=====> f not d
sum+=stu[i].score[j];
}
stu[i].average=sum/3.0;

}

for(i=0;i <5;i++)
{
printf( "num is:%s\n ",stu[i].num);
printf( "name is:%s\n ",stu[i].name);

for (j=0;j <3;j++) {
printf( "%f\n ",stu[i].score[j]);
}
printf( "%f\n ",stu[i].average);
}
system( "pause ");
}
[解决办法]
scanf( "%f ",&stu[i].score[j]);

读书人网 >C语言

热点推荐