gpt4 book ai didi

c - 这段代码有什么问题?使用数组输出 C 中整数的最小值、最大值和平均值的程序

转载 作者:行者123 更新时间:2023-11-30 19:22:00 25 4
gpt4 key购买 nike

/*C program that outputs minimum, maximum and average of integers*/

#include <stdio.h>
#include <conio.h>

void main()
{
int i,a[5],min,max;
float avg;
printf("\n Enter any number : ");
scanf("%d",&a[0]);
max=a[0];
min=a[0];
avg=0;
for(i=1; i++;)
{
printf("\n Enter any0 Number : ");
scanf("%d",&a[i]);
if(a[i]>max)
{
max=a[i];
}
else
{
min=a[i];
}
avg=avg+a[i];

}

avg=avg/5;

printf("\n The minimum number is %d",min);
printf("\n The maximum number is %d",max);
printf("\n The average is %f",avg);

getch();

}

它应该询问用户 5 次,但没有:( ?输出应该是这样的。

输出:

输入数字:4输入数字:6输入数字:7输入数量:20输入数字:1

最小值为 1。最大值为 20。平均值为 7.6。

我该如何解决这个问题?

最佳答案

你的for循环是错误的

for(i=1; i++;)

这应该是

for(i=1;i<5; i++) //because you already scanned a[0].. you need to scan till a[4]    

use avg=a[0]; instead of avg=0;

in for loop you need to write use if (a[i]<min) instead of else

修改后的代码

#include <stdio.h>

void main()
{
int i,a[5],min,max;
float avg;
printf("\n Enter any number : ");
scanf("%d",&a[0]);
max=a[0];
min=a[0];
avg=a[0];

for(i=1;i<5;i++)
{
printf("\n Enter any0 Number : ");
scanf("%d",&a[i]);
if(a[i]>max)
max=a[i];
if( a[i]< min )
min=a[i];

avg=avg+a[i];

}

avg=avg/5;

printf("\n%d ,%d, %f\n",min,max,avg);
}

关于c - 这段代码有什么问题?使用数组输出 C 中整数的最小值、最大值和平均值的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18761356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com