C语言求10人平均分求助,为什么算出来平均分总是0.00 要用数组
发布网友
发布时间:2024-10-05 02:46
我来回答
共5个回答
热心网友
时间:2024-11-07 09:24
#include<stdio.h>
#define N 10
void main()
{
float grade[10];
float average=0;
printf("请输入学生的成绩");
for(int i=0;i<N;i++); //注意数组角标是从0开始的
{
scanf("%f",&grade[i]);
average=average+grade[i];
}
average=average/N;
printf("平均成绩是:%.2f\n",average);
}追问可是算出来问什么是0.1呢 假如我输入的是1到10
热心网友
时间:2024-11-07 09:24
double grade[10] 改为:double grade[N];
for循环改为:for(i=0;i<N;i++),你的代码循环了十一次,而不是十次;
scanf("%f",&grade[i]);
应该就没问题了追问可是算出来问什么是0.1呢 假如我输入的是1到10
热心网友
时间:2024-11-07 09:25
#include<stdio.h>
#define N 10
void main()
{
float grade[10];
float average=0;
printf("请输入学生的成绩");
for(int i=0;i<N;i++) //这里多了个分号
{
scanf("%f",&grade[i]);
average=average+grade[i];
}
average=average/N;
printf("平均成绩是:%.2f\n",average);
}
热心网友
时间:2024-11-07 09:26
#include<stdio.h>
#define N 10
void main()
{
float grade[10];
float average=0;
int i;
printf("请输入学生的成绩");
for(i=0;i<=N;i++);
{
scanf("%f",&grade[i]);
average=average+grade[i];
}
average=average/N;
printf("平均成绩是:%.2f\n",average);
}
热心网友
时间:2024-11-07 09:26
scanf("%lf",&grade);这句话应该改成
scanf("%lf",grade[i]);