C语言输入一个字符串,再输入一个字符插入到字符串的首位,输出新的字符串。
时间: 2024-05-03 19:18:21 浏览: 58
可以使用C语言中的字符串函数来实现这个功能。以下是一种可能的解决方案:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
char c;
printf("请输入一个字符串:");
scanf("%s", str);
printf("请输入一个字符:");
scanf(" %c", &c); // 注意要在%c前加一个空格,避免读入上一个输入中的回车符
// 使用strcat函数将字符插入到字符串的首位
memmove(str + 1, str, strlen(str) + 1);
str[0] = c;
printf("新的字符串为:%s\n", str);
return 0;
}
```
运行结果:
```
请输入一个字符串:hello
请输入一个字符:w
新的字符串为:whello
```
相关问题
C语言输入一个字符串,输出一个字符串。
在C语言中,你可以通过标准库函数`scanf()`从用户那里获取输入,并使用`printf()`函数将处理后的结果输出。以下是一个简单的示例,演示如何输入一个字符串并将其反转后输出:
```c
#include <stdio.h>
#include <string.h>
int main() {
char input[100]; // 定义一个足够大的数组来存储字符串
char reversed[100]; // 存储反转后的字符串
printf("请输入一个字符串:"); // 提示用户输入
fgets(input, sizeof(input), stdin); // 使用fgets读取一行字符串
// 移除换行符
input[strcspn(input, "\n")] = '\0';
// 反转字符串
int len = strlen(input);
for (int i = 0; i < len / 2; i++) {
char temp = input[i];
input[i] = input[len - i - 1];
input[len - i - 1] = temp;
}
printf("反转后的字符串是:%s", reversed); // 输出反转后的字符串
return 0;
}
```
用C语言输入一个字符串输出反序后的字符串
在C语言中,你可以通过动态内存分配和字符数组操作来实现字符串反转。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <string.h>
// 功能:反转字符串
void reverse_string(char* str) {
int length = strlen(str);
char temp;
for (int i = 0; i < length / 2; i++) {
temp = str[i];
str[i] = str[length - i - 1]; // 交换字符位置
str[length - i - 1] = temp;
}
}
int main() {
char input[100]; // 定义足够大的数组用于输入
printf("请输入一个字符串: ");
fgets(input, sizeof(input), stdin); // 从标准输入读取字符串
// 移除fgets读取的换行符
if (input[strlen(input) - 1] == '\n') {
input[strlen(input) - 1] = '\0';
}
reverse_string(input); // 反转字符串
printf("反转后的字符串是: %s\n", input);
return 0;
}
```
在这个程序中,`reverse_string`函数接收一个指向字符数组的指针,然后逐个字符地交换首尾位置,完成字符串反转。`main`函数则负责获取用户输入并调用这个函数。
阅读全文
相关推荐
















