簡體   English   中英

需要幫助倒車陣列

[英]Need Help reversing array

我需要的是用戶輸入由空格分隔的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;

}

我注意到了兩個問題。

  1. 您的數組a僅有9個元素。 您應該使其足夠大以包含所有十個元素。

  2. 第二個for循環具有結尾的分號:

    for(i = 0; i <10; i ++); {

此分號將導致循環的行為如下:

for(i = 0; i < 10; i++) { }
{

這不是你想要的。

您已經定義了數組a[9] 數組的大小實際上是10,所以應該像a[10]

請記住,在定義數組時,必須指定SIZE而不是LAST INDEX。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM