//以下为一段函数,功能为;输入是个人的成绩,求出平均成绩
#include "stdio.h"
#define N 10
main(void)
{
int i;
float a[N], average=0, sum = 0;
printf ("Please input ten number:\n");
for (i = 0; i < N; i++)
{
scanf ("%f", &a[i]);//当把其中的“%f”改为%d时,无论输入啥什么数字,结果都是0;原因是【1】
sum = sum + a[i];
}
average = sum / N;
printf ("The average is :%f \n", average);
return 0;
}
【1】在数据类型转换中,1)float 型数据自动转换成double型;
2)char与short型数据自动转换成int型;
3)int型与doubule型数据运算,直接将int型转换成double型;
4)int型与unsigned型数据,直接将int型转换成unsigned 型;
5)int型与long型数据,直接将ine型转换成long型。
因为当其输入为int型时,无法转换成float型,所以的那个“%f”,改为“%d”时,输出选项为0;因为值丢失了。