输入任意字符组成的一个字符串(长度<=100),将其反序输出。用C语言
时间: 2024-03-23 15:40:46 浏览: 107
好的,下面是用 C 语言编写的代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[101];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
printf("反序输出的字符串为:");
for (int i = len - 1; i >= 0; i--) {
printf("%c", str[i]);
}
printf("\n");
return 0;
}
```
这段代码首先通过 `scanf` 函数获取用户输入的字符串,然后计算字符串长度,并通过循环输出反序后的字符串。
相关问题
【问题描述】 输入任意字符组成的一个字符串(长度<=100),将其反序输出。 【输入形式】 任意字符串 【输出形式】 字符串的反序 【样例输入】 This is a test. 【样例输出】 .tset a si sihT用C语言
好的,下面是用 C 语言编写的代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[101];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
printf("反序输出的字符串为:");
for (int i = len - 1; i >= 0; i--) {
printf("%c", str[i]);
}
printf("\n");
return 0;
}
```
这段代码首先通过 `scanf` 函数获取用户输入的字符串,然后计算字符串长度,并通过循环输出反序后的字符串。例如,输入字符串 "This is a test.",则输出 ".tset a si sihT"。
1、字符串反序(指针方式) 【编程挑战】利用指针,将输入的字符串反序输出。 【输入】一行不含空格的字符串(长度<=50) 【输出】逆序后的字符串 【输入样例】ABCDEFGHIJK 【输出样例】KJIHGFEDCBA
【解答】在指针的方式下,可以使用两个指针,一个指向字符串开始,另一个指向结束。然后通过交换这两个指针所指向的字符,逐次向中间移动,直到它们相遇。以下是用C语言实现的一个简单示例:
```c
#include <stdio.h>
#include <string.h>
void reverse(char* str) {
char* start = str; // 指向字符串开始
char* end = str + strlen(str) - 1; // 指向字符串结尾
while (start < end) { // 当开始指针小于结束指针时
char temp = *start; // 临时存储开始处的字符
*start = *end; // 开始处的字符替换为结束处的字符
*end = temp; // 结束处的字符替换为临时存储的字符
start++; // 移动开始指针
end--; // 移动结束指针
}
}
int main() {
char input[] = "ABCDEFGHIJK";
printf("输入样例:%s\n", input);
reverse(input);
printf("输出样例:%s\n", input); // 输出:KJIHGFEDCBA
return 0;
}
```
在这个例子中,`reverse`函数接受一个字符串指针作为参数,然后通过指针操作实现了字符串的反转。
阅读全文