Онлайн компилятор C

#include <stdio.h> int main() { int a[10]; for (int i = 0; i < 5; i++) { scanf("%d", &a[i]); } for (int i = 4; i >0; i--) { printf("%d ",a[i]); } for (int i = 5; i < 10; i++) { scanf("%d", &a[i]); } for (int i = 9; i >4; i--) { printf("%d ",a[i]); } return 0; }
这段代码的功能是:先读取5个整数存入数组前5个位置,然后逆序输出这5个数;再读取5个整数存入数组后5个位置,然后逆序输出这5个数。最终输出的是两组逆序的数字,中间没有换行。

- 第一个循环读取前5个数,第二个循环从索引4到1输出(注意索引0没有被输出),第三个循环读取后5个数,第四个循环从索引9到5输出(索引5没有被输出)。检查一下输出循环的边界条件,看看是否漏掉了某个元素。
- 代码中两次读取和两次输出是分开的,但题目可能要求先读取全部10个数,再整体逆序输出。思考一下输入和输出的顺序是否符合预期。