若数组a包含10个整型元素,将a中所有的后项除以前项的商取整后,存入数组b中,并按每行3个元素的形式输出

这样子写
有什么错误。。。。

错误太多了

1,后项除以前,那么最多有9次,你除以第十次会取a[10],溢出...

2.for用法错误,可以多条件,但是不是这么写,第一个分号前面赋值和定义,中间判断条件,很明显你的错误,双控制应该这样

for (int j =0,i=0;j < 9 && i < 10; i++,j++)

但这里用不上

3.%是取余数,不是商,直接用 / 就可以了,

4.printf输出参数不需要 & ,那个输出的是地址了,不是值

参考代码:

int a[10],b[9];
printf("Input numbers:\n");
for (int i = 0; i &lt; 10; i++)
{
printf("输入第%d个数字:",i+1);
scanf("%d",&amp;a[i]);
}
printf("结果如下:\n");
for (int j =0;j &lt; 9; j++)
{
b[j]=a[j+1] / a[j];
printf("%d\t",b[j]);
if (j % 3==2)
{
printf("\n");
}
}

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答