用c语言输入两个字符串a和b,将b串中的最大字符插入到a串中最小字符后面。
时间: 2024-05-03 19:17:02 浏览: 125
以下是C语言代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char a[100], b[100];
char max_char, min_char = 127; // ASCII码表中最大字符是127,因此初始最小字符要大于127
printf("请输入字符串a:");
scanf("%s", a);
printf("请输入字符串b:");
scanf("%s", b);
// 找到b串中的最大字符和a串中的最小字符
for (int i = 0; i < strlen(b); i++) {
if (b[i] > max_char) {
max_char = b[i];
}
}
for (int i = 0; i < strlen(a); i++) {
if (a[i] < min_char) {
min_char = a[i];
}
}
// 找到最小字符的位置,并在其后面插入最大字符
for (int i = 0; i < strlen(a); i++) {
if (a[i] == min_char) {
// 移动后面的字符,腾出位置
for (int j = strlen(a) - 1; j >= i + 1; j--) {
a[j + 1] = a[j];
}
a[i + 1] = max_char; // 插入最大字符
break;
}
}
printf("结果:%s\n", a);
return 0;
}
```
注意:以上代码假设输入的字符串均为不带空格的单词。如果需要支持输入带空格的句子,则需要使用fgets()函数来读取输入。
阅读全文