将数组11111222333倒序输出c语言
时间: 2023-12-22 16:27:13 浏览: 188
以下是两种C语言将数组倒序输出的方法:
1.使用递归函数实现数组倒序输出
```c
#include <stdio.h>
int Strlen(char* arr) {
int count = 0;
if (*arr != '\0') {
count++;
Strlen(arr + 1);
}
return count;
}
void reverse_string(char* arr) {
int sz = Strlen(arr);
char tmp = *arr;
*arr = *(arr + sz - 1);
*(arr + sz - 1) = '\0';
if (Strlen(arr + 1) >= 2) reverse_string(arr + 1);
*(arr + sz - 1) = tmp;
}
int main() {
char arr[] = "11111222333";
reverse_string(arr);
printf("%s\n", arr); // 输出:33332211111
return 0;
}
```
2.使用while循环实现数组倒序输出
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char* arr) {
int l = 0;
int r = strlen(arr) - 1;
while (l < r) {
char tmp = *(arr + l);
*(arr + l) = *(arr + r);
*(arr + r) = tmp;
l++;
r--;
}
}
int main() {
char arr[] = "11111222333";
reverse_string(arr);
printf("%s\n", arr); // 输出:33332211111
return 0;
}
```
阅读全文