【发布时间】:2018-01-29 03:09:24
【问题描述】:
我要解决的问题:
- 向用户询问五个数字并将其存储在一个数组中。
- 确定输入的最大数字和数组的平均值
- 将使用 for 循环来解决此问题。
我为解决这个问题而编写的代码,但我不知道为什么会这样 不工作。有人可以告诉我我做错了什么吗?
#include <stdio.h>
int main()
{
int i, n;
float arr[5], sum = 0, average;
printf("Please enter five numbers, separated by spaces!\n");
scanf("%d", &n);
//Stores numbers entered into an array
for(i = 0; i < n; i++)
{
printf("%d: ", i++);
scanf("%d", &arr[0]);
for(i = 1; i < n; i++)
{
if(arr[0] < arr[i])
arr[0] = arr[i];
}
printf("The highest of the five numbers is %d\n", arr[0]);
for(i = 0; i < n; i++)
{
printf("%d. Enter number: ", i+1);
scanf("%f", &arr[i]);
sum += arr[i];
}
average = sum / n;
printf("The average of the five numbers is %f\n", average);
}
}
【问题讨论】:
-
欢迎来到 Stack Overflow。请使用tour 并阅读How to Ask。来吧,只是在代码的 cmets 中输入代码并提出问题是低于任何标准的。请以可读的方式编辑您的问题。向我们表明您至少愿意花时间正确提出问题。
-
是的,如果不出意外,请准确解释您的代码是如何失败的。