读书人

帮忙看下咋回事

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

帮忙看下怎么回事
#include "stdio.h"
#define N 10
main()
{
int score[N];
int i,high,sum=0;
float average;
for(i=0;i<N;i++){
scanf("%d",&score[i]);
sum+=score[i];}
for(high=score[0],i=0;i<N;i++)

if (score[i]>high)high=score[i];

average=(float)sum/10.0;
printf("sum=%f\n",sum);
printf("higher=%6d\n",high);
}



为什么输入数字 计数后 sum=0.000000那

[解决办法]

C/C++ code
printf("sum=%d\n",sum);
[解决办法]
sum用错误的使用浮点格式输出。
C/C++ code
#include <stdio.h>#define N 10int main(){    int score[N];     int i,high,sum=0;    float average;        for(i=0;i<N;i++)    {        scanf("%d",&score[i]);        sum+=score[i];    }        for(high=score[0],i=0;i<N;i++)            if (score[i]>high)high=score[i];        average=(float)sum/10.0;        printf("sum=%d\n",sum); //更改为%d格式    printf("higher=%6d\n",high);}
[解决办法]
printf("sum=%d\n",sum);

浮点数按整数输出时,会不一样的,这要看浮点数的内存表示了。
[解决办法]
sum 是int型,printf输出格式为%d

读书人网 >C++

热点推荐