首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

帮忙看下咋回事

2012-02-04 
帮忙看下怎么回事#include stdio.h#define N 10main(){intscore[N]int i,high,sum0float averagefor

帮忙看下怎么回事
#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

热点排行