定义1个一维数组:int arr[10],然后从键盘输入10个整数,编程求出其最大值、最小值以及平均值,并在屏幕上
答案:2 悬赏:30 手机版
解决时间 2021-03-26 08:26
- 提问者网友:無理詩人
- 2021-03-26 00:01
定义1个一维数组:int arr[10],然后从键盘输入10个整数,编程求出其最大值、最小值以及平均值,并在屏幕上
最佳答案
- 五星知识达人网友:雪起风沙痕
- 2021-03-26 00:24
#include
void main()
{
int arr[10];
int max;
int min;
float ave;
int sum=0;
int i;
int t;
printf("请输入10个数字:\n");
for(i=0;i<10;i++)
scanf("%d",arr+i);
max=arr[0];
min=arr[0];
for(i=0;i<10;i++)
if(max max=arr[i];
printf("max is %d\n",max);
for(i=9;i>=0;i--)
if(min>arr[i])
min=arr[i];
printf("min is %d\n",min);
for(i=0;i<10;i++)
sum=sum+arr[i];
ave=(float)sum/10;
printf("ave is %.1f\n",ave);
return 0;
}
看看是怎么修改的,,,就知道原理了。。。
void main()
{
int arr[10];
int max;
int min;
float ave;
int sum=0;
int i;
int t;
printf("请输入10个数字:\n");
for(i=0;i<10;i++)
scanf("%d",arr+i);
max=arr[0];
min=arr[0];
for(i=0;i<10;i++)
if(max max=arr[i];
printf("max is %d\n",max);
for(i=9;i>=0;i--)
if(min>arr[i])
min=arr[i];
printf("min is %d\n",min);
for(i=0;i<10;i++)
sum=sum+arr[i];
ave=(float)sum/10;
printf("ave is %.1f\n",ave);
return 0;
}
看看是怎么修改的,,,就知道原理了。。。
全部回答
- 1楼网友:醉吻情书
- 2021-03-26 02:00
求最大最小值的时候,不需要交换数据。按照你的程序,可以找到最大值最小值,但是最后,最大值和最小值都不知arr[]里了,都被交换到max 和min里了。所以按你的程序,求平均值会有问题。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯