C语言(1)编写一个将数组元素逆序打印的递归函数。 (2)编写main函数,输入N个整数,将其存入到一个数组中,并调用(1)中的函数,将元素逆序输出。【输入形式】 5,7,1,4,6(以逗号分隔) 【输出形式】 6,4,1,7,5
时间: 2024-05-10 07:15:29 浏览: 19
以下是C语言代码实现:
```c
#include <stdio.h>
void reverse(int arr[], int start, int end) {
if (start >= end) {
return;
}
int tmp = arr[start];
arr[start] = arr[end];
arr[end] = tmp;
reverse(arr, start + 1, end - 1);
}
int main() {
int arr[100];
int n = 0;
char c;
while (scanf("%d", &arr[n++])) {
// 判断是否读取到逗号
if ((c = getchar()) == '\n' || c == EOF) {
break;
}
}
// 调用递归函数将数组逆序
reverse(arr, 0, n - 2);
// 输出逆序后的数组
for (int i = 0; i < n - 1; i++) {
printf("%d", arr[i]);
if (i != n - 2) {
printf(",");
}
}
return 0;
}
```
输入格式以逗号分隔,使用while循环不断读取输入的整数并存入数组中,直到读取到换行符或文件结束符EOF。调用递归函数reverse将数组元素逆序,然后遍历数组输出逆序后的元素,注意最后一个元素后面不加逗号。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)