C语言编写一个程序,将用户输入的字符串中的字符从i到j的顺序颠倒过来。(字符串、i和j的值由用户通过键盘输入) 例如:
时间: 2024-03-26 20:34:38 浏览: 89
您好!根据您的要求,我提供以下 C 语言代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int i, j;
printf("请输入字符串:");
gets(str);
printf("请输入要反转字符的起始位置和结束位置(用空格隔开):");
scanf("%d %d", &i, &j);
// 反转字符串
int len = strlen(str);
for (int k = i - 1, l = j - 1; k < l; k++, l--) {
char temp = str[k];
str[k] = str[l];
str[l] = temp;
}
// 输出结果
printf("反转后的字符串是:%s\n", str);
return 0;
}
```
以上代码中,我们首先通过 `gets()` 函数获取用户输入的字符串,然后通过 `scanf()` 函数获取用户输入的起始位置 `i` 和结束位置 `j`。接着,我们通过一个循环将字符串中从位置 `i` 到位置 `j` 的字符顺序颠倒过来,最后输出反转后的字符串。
需要注意的是,在实际开发中,使用 `gets()` 函数容易受到缓冲区溢出的风险,建议使用更安全的输入函数,如 `fgets()` 等。
阅读全文