输入数给数组赋值 ,输入-1时停止输入,-1不放入数组

CSDN问答 2021-12-30 14:46:43 阅读数:622

数组 赋值 输入 数给

#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int a[20]={0};
int i,b;
for(i=0;;i++){
scanf("%d",&b);
if(b!=-1) a[i]=b;
printf("a[%d]=%d\n",i,a[i]);
if(b==-1) break;
}

img

为什么会这样?
怎么改?




采纳答案:

因为前面那个给变量n读取整数的sccanf读取掉一个整数了,所以后面的scanf少了一个数,修改了一下,如下:

#include<stdio.h>int main(){ int n; scanf("%d",&n); int a[20]={
0}; int i,b; for(i=0;i<n;i++){ scanf("%d",&b); if(b!=-1) a[i]=b; printf("a[%d]=%d\n",i,a[i]); if(b==-1) break; }} 

版权声明:本文为[CSDN问答]所创,转载请带上原文链接,感谢。 https://ask.csdn.net/questions/7613537