C用循环输入数组死循环
答案:3 悬赏:80 手机版
解决时间 2021-11-27 15:16
- 提问者网友:凉末
- 2021-11-26 15:25
C用循环输入数组死循环
最佳答案
- 五星知识达人网友:忘川信使
- 2021-11-26 15:52
#include
int main()
{
int n,j,sum=0;
int a[1024]; //使用1024不要使用n,n未赋值,有些平台给定0,有些是不确定的
double average;
printf("Please input the number of integers:");
scanf("%d",&n); // 前面定义a[n]达不到动态定义数组的功能,C语言不支持
printf("Please input %d scores:",n);
for(j=0;j {
scanf("%d",&a[j]);
sum=sum+a[j];
}
average=sum/n;
printf("The average score is:%lf",average);
return 0;
}追问如果我想先输入n来确定数组长度该怎么操作啊追答最好不要这样做,因为C语言对这个情况是未定义的,也就是出现任何错误自行负责。
要想实现动态数组的话,最好使用malloc及free完成吧。追问恩 我刚修改了下 的确数组内的要为常数 我把声明数组放在对n的scanf输入后程序就可以正常运行了 谢谢你啦
int main()
{
int n,j,sum=0;
int a[1024]; //使用1024不要使用n,n未赋值,有些平台给定0,有些是不确定的
double average;
printf("Please input the number of integers:");
scanf("%d",&n); // 前面定义a[n]达不到动态定义数组的功能,C语言不支持
printf("Please input %d scores:",n);
for(j=0;j
scanf("%d",&a[j]);
sum=sum+a[j];
}
average=sum/n;
printf("The average score is:%lf",average);
return 0;
}追问如果我想先输入n来确定数组长度该怎么操作啊追答最好不要这样做,因为C语言对这个情况是未定义的,也就是出现任何错误自行负责。
要想实现动态数组的话,最好使用malloc及free完成吧。追问恩 我刚修改了下 的确数组内的要为常数 我把声明数组放在对n的scanf输入后程序就可以正常运行了 谢谢你啦
全部回答
- 1楼网友:慢性怪人
- 2021-11-26 17:38
用dev c++ 运行了一下,能用,看来是你用的编译器和我不太一样吧
- 2楼网友:佘樂
- 2021-11-26 17:20
你定义的整型数组int a[n];
不能用n,n必须是一个常数,这样编译器再编译的时候才知道
给这个数组a开辟多少空间追问那该如何操作呢 我想先输入一个值来确定数组的长度 ?
不能用n,n必须是一个常数,这样编译器再编译的时候才知道
给这个数组a开辟多少空间追问那该如何操作呢 我想先输入一个值来确定数组的长度 ?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯