c语言 输入n个数,然后把这n个数逆序输出。 输入格式: 测试数据有多组,处理到文件尾。每组测试数据在一行上首先输入整数n,接着输入n(n<=40)个整数。 输出格式: 对于每组测试,逆序输出n个数,每两个数据之间留一个空格。每两组测试数据之间留一个空行。
时间: 2024-03-16 11:43:20 浏览: 74
以下是 C 语言的代码实现:
```c
#include <stdio.h>
int main() {
int n;
while (scanf("%d", &n) != EOF) {
int arr[40];
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
for (int i = n - 1; i >= 0; i--) {
printf("%d", arr[i]);
if (i != 0) {
printf(" ");
}
}
printf("\n\n");
}
return 0;
}
```
解释:
首先通过 `while` 循环处理多组测试数据,每次读入一个整数 `n`,表示接下来要输入的数的个数。
定义一个整型数组 `arr`,通过循环读入 `n` 个数,存入数组中。
再通过循环从数组尾部开始遍历,逆序输出数组中的元素,每两个数据之间留一个空格。
注意每组测试数据输出后要输出两个换行符,以满足题目要求。
相关问题
c语言逆序输出 分数 10 作者 usx程序设计类课程组 单位 绍兴文理学院 输入n个数,然后把这n个数逆序输出。 输入格式: 测试数据有多组,处理到文件尾。每组测试数据在一行上首先输入整数n,接着输入n(n<=40)个整数。 输出格式: 对于每组测试,逆序输出n个数,每两个数据之间留一个空格。每两组测试数据之间留一个空行。
好的,这是一个简单的C语言问题,可以使用数组来存储输入的n个数,然后倒序输出即可。以下是示例代码:
```c
#include <stdio.h>
int main() {
int n, i;
int nums[40];
while (scanf("%d", &n) != EOF) { // 处理多组测试数据
for (i = 0; i < n; i++) {
scanf("%d", &nums[i]);
}
for (i = n - 1; i >= 0; i--) { // 倒序输出
printf("%d", nums[i]);
if (i > 0) {
printf(" ");
}
}
printf("\n\n"); // 每两组测试数据之间留一个空行
}
return 0;
}
```
注意,在输出每组测试数据之后,需要输出两个换行符来与下一组测试数据分隔开。
输入格式: 首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试输入一个整数n(int范围内)。 输出格式: 对于每组测试数据,输出n的位数,然后分别以正序和逆序输出各位数字,每两个数据之间用一个逗号“,”分隔。用c语言
以下是用 C 语言实现的代码:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int T, n, i, m, digit;
scanf("%d", &T);
while (T--) {
scanf("%d", &n);
// 计算 n 的位数
m = 0;
digit = n;
while (digit > 0) {
digit /= 10;
m++;
}
// 正序输出
digit = n;
for (i = 0; i < m; i++) {
printf("%d", digit % 10);
digit /= 10;
if (i != m - 1) {
printf(",");
}
}
printf(" ");
// 逆序输出
digit = n;
for (i = 0; i < m; i++) {
printf("%d", digit % 10);
digit /= 10;
if (i != m - 1) {
printf(",");
}
}
printf("\n");
}
return 0;
}
```
思路如下:
首先读入测试数据的组数 T。然后,对于每组测试数据,我们读入一个整数 n,并计算出它的位数 m。接着,我们从右往左依次取出 n 的每一位,先输出正序的结果,再输出逆序的结果,每个数字之间用逗号分隔。最后别忘了输出换行符。
阅读全文