// //为什么运行出来求不了平均值,存在疑问?
#define _CRT_SECURE_NO_WARNINGS
#include
int main()
{
int i;
int x;
int cnt = 0;
int numble[100];
double sum = 0;
scanf("%d", &x);
while (x != -1)
{
numble[cnt] = x;
sum += x;
cnt++;
scanf("%d", &x);
}
if (cnt > 0)
{
double average = sum / cnt;
printf("平均值:%1f", average);//注意这里是浮点数
for (i=0;iif (numble[i] > average)
{
printf("%d", numble[i]);
}
}
}
}
想知道最下面的for循环为什么运行不了,是因为cnt没有输入到for循环里面吗?
正常,有输出,只是接着 平均值:2.0000003 ,这个 3 就是,输出平均值这句修改下:printf("平均值:%1f\n", average); ,供参考;
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int i;
int x;
int cnt = 0;
int numble[100];
double sum = 0;
scanf("%d", &x);
while (x != -1)
{
numble[cnt] = x;
sum += x;
cnt++;
scanf("%d", &x);
}
if (cnt > 0)
{
double average = sum / cnt;
printf("平均值:%1f\n", average);//修改
for (i=0;i < cnt;i++)
{
if (numble[i] > average)
{
printf("%d ", numble[i]);//修改 每个数之间加空格分隔
}
}
}
}
printf("平均值:%1f", average);
你写成了1f,应该是lf