int a[4];
int n,sum=0;
a[0] =a[1] =a[2] =a[3 ]=a[4] =0;
scanf("%d %d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4]);
for(n=1 ;n<=4 ;n++ ){
if(a[n] % a[0]==0) sum += a[n];
}
printf("%d",sum);
return 0;
}
这个编码里的a[n]%a[0]==0,这个没错,但是当我想改成余数是1的时候,双等号就无法运行出结果,改成单等号才行,而改成5的时候,都无法运行出结果,求解
int a[4]改成int a[5]
因为数组int a[4]只有4个元素,当n=4的时候会越界,改成5就可以了
一个等号肯定是错的,没有输出是因为没有符合条件的数据。
因为你定义了数组a[4],只有四个数,但是却给数组输入了五个数