我需要的是用户输入由空格分隔的10个整数然后将其打印出来。这就是我所拥有的,但它不起作用。
#include <stdio.h>
int main(int argc, char *argv[])
{
int a[ 9 ], i, j, t ;
printf("Enter ten integers seperated by spaces:\n");
for(i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
}
j = i - 1;
i = 0;
while (i < j)
{
t = a[i];
a[i] = a[j];
a[j] = t;
i++;
j--;
}
printf("\nReverse array is:\n");
for(i = 0; i < 10; i++);
{
printf("%d ", a[i]);
}
return 0;
}
答案 0 :(得分:1)
我发现了两个问题。
您的数组a
只有9个元素。你应该把它做得足够大,以包含所有十个元素。
第二个for
循环有一个尾随分号:
for(i = 0; i <10; i ++); {
这个分号会使循环表现得像这样:
for(i = 0; i < 10; i++) { }
{
这不是你想要的。
答案 1 :(得分:0)
您已定义数组a[9]
。
数组的大小实际上是10,所以这应该像a[10]
。
请记住,在定义数组时,必须指定SIZE而不是LAST INDEX。