小数点后面的数跑那去了啊
#include<stdio.h>#define ww 6
#define ee 5
int c[ww][ee];
int main(void)
{
int f;float pjfs,txpjfs[ee];
for(f=0;f<ee;f++)
{
c[0][f]=f;
}
for(f=0;f<ee;f++)
{
printf("请输入学号为%d同学的A,B,C,D,E课程的分数(输入小数会省略!字符则会出错!):\n ",c[0][f]);
scanf("%d %d %d %d %d",&c[1][f],&c[2][f],&c[3][f],&c[4][f],&c[5][f]);
}
/*for(f=0;f<ww;f++)
{
for(i=0;i<ee;i++)
{
printf("%d ",c[f][i]);
}
printf("\n");
}*/
pjfs=pjfsx();
printf("全班同学平均分为:%f\n",pjfs);
for(f=0;f<ee;f++)
{
txpjfs[f]=txpjfsx(f);
printf("学生%d的平均分为:%f\n",f,txpjfs[f]);
}
getch();
return 0;
}
float pjfsx()
{
int f,i,p[2]={0};
for(f=1;f<ww;f++)
{
for(i=0;i<ee;i++)
{
p[0]=p[0]+c[f][i];
p[1]=p[1]+1;
}
}
return p[0]/p[1]; //如果返回的带有小数为什么他会省略??如果不想省略要怎么样修改下??
}
float txpjfsx(int a)
{
int f,p[2]={0};
for(f=1;f<ww;f++)
{
p[0]=p[0]+c[f][a];
p[1]=p[1]+1;
}
return p[0]/p[1]; //这里也是
}
如果我这样输入的话,结果是这样的:
请输入学号为0同学的A,B,C,D,E课程的分数(输入小数会省略!字符则会出错!):
150 10 111 20 32
请输入学号为1同学的A,B,C,D,E课程的分数(输入小数会省略!字符则会出错!):
155 54 12 33 111
请输入学号为2同学的A,B,C,D,E课程的分数(输入小数会省略!字符则会出错!):
99 877 41 21 33
请输入学号为3同学的A,B,C,D,E课程的分数(输入小数会省略!字符则会出错!):
11 22 78 44 3
请输入学号为4同学的A,B,C,D,E课程的分数(输入小数会省略!字符则会出错!):
455 1 333 11 22
全班同学平均分为:109.000000
学生0的平均分为:64.000000 这里应该是 64.6 为什么小数点后面的数他会省略??
学生1的平均分为:73.000000
学生2的平均分为:214.000000
学生3的平均分为:31.000000
学生4的平均分为:164.000000
谢谢啦!!帮忙帮忙!