#include stdiohint main int i=9; int a10; fori=0;i10;i++ scanfd&ai; ifi!=9 printfdai; printfdna9; int b10; int j=0; forj=0;j10;j++ bj=a
这段代码有以下问题:
-
在第一个for循环中,循环变量
i已经在最开始被赋值为9,所以不需要再次定义int i=9;。 -
在第一个for循环中,循环条件是
i<10,但是在循环体中,每次循环都会对i进行自增操作,所以循环条件可以改为i<9。 -
在第一个for循环中,将用户输入的值存储在数组
a中时,应该使用&a[i]而不是&a[j]。 -
在第一个for循环中,如果
i不等于9,则应该输出逗号。 -
在第一个for循环结束后,需要换行符
"\n"来分隔输出。 -
在第二个for循环中,将数组
a的元素逆序存储到数组b中时,应该使用b[j]=a[i-1]而不是b[j]=a[i],并且应该在进行自减操作之前执行赋值操作。 -
在第二个for循环中,如果
j不等于9,则应该输出逗号。 -
在第二个for循环结束后,需要换行符
"\n"来分隔输出。
以下是修改后的代码:
#include <stdio.h>
int main()
{
int a[10];
for(int i = 0; i < 9; i++)
{
scanf("%d", &a[i]);
if(i != 8)
printf("%d,", a[i]);
}
scanf("%d", &a[9]);
printf("%d\n", a[9]);
int b[10];
int j = 0;
for(j = 0; j < 10; j++)
{
b[j] = a[9-j];
if(j != 9)
{
printf("%d,", b[j]);
}
}
printf("%d\n", b[9]);
return 0;
}
``
原文地址: https://www.cveoy.top/t/topic/hH6M 著作权归作者所有。请勿转载和采集!