#include<stdio.h>
int main()
{
int i,m,a[m],max,min,sum,aver;
scanf("%d",&m);
sum=0;
for(i=0;i<m;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
}
aver=sum/m;
max=a[0];
for(i=0;i<m;i++)
{
if(a[i]>max)
max=a[i];
}
min=a[0];
for(i=0;i<m;i++)
{
if(a[i]<min)
min=a[i];
}
printf("aver=%d,max=%d,min=%d\n",aver,max,min);
return 0;
}
输入m个数,求其最大数、最小数和平均值。想问下列源程序有什么错误?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 雷鬼007 2021-04-21 22:55关注
#include<stdio.h> int main() { int i,m,a[m],max,min,sum,aver; // m未赋值之前(随机值)就拿来定义数组,这是极其危险的 scanf("%d",&m); sum=0; for(i=0;i<m;i++) { scanf("%d",&a[i]); sum+=a[i]; } aver=sum/m;//这里是帧数除法,符合你的设计预期吗? max=a[0]; for(i=0;i<m;i++) { if(a[i]>max) max=a[i]; } min=a[0]; for(i=0;i<m;i++) { if(a[i]<min) min=a[i]; } printf("aver=%d,max=%d,min=%d\n",aver,max,min); return 0; } // 给你一段代码你参考一下 #include<stdio.h> static inline int MyMax(int a, int b) { return (a > b) ? a : b; } static inline int MyMin(int a, int b) { return (a > b) ? b : a; } int main() { int i, m, sum; int max = 0x80000000; int min = 0x7fffffff; double aver; scanf("%d",&m); int a[m]; sum=0; for(i = 0; i < m; i++) { scanf("%d",&a[i]); sum += a[i]; min = MyMin(min, a[i]); max = MyMax(max, a[i]); } aver = (double)sum / (double)m; printf("aver = %f, max=%d, min=%d\n", aver, max, min); return 0; }
解决 1无用 1
悬赏问题
- ¥15 如何处理复杂数据表格的除法运算
- ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
- ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
- ¥200 uniapp长期运行卡死问题解决
- ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
- ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
- ¥15 乘性高斯噪声在深度学习网络中的应用
- ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
- ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
- ¥15 C++ 头文件/宏冲突问题解决