用C语言输入两个字符串,将第二个字符串插入到第一个字符串中最大的那个字符后面
时间: 2023-10-07 09:05:09 浏览: 93
好的,这是一个比较基础的字符串操作题目。以下是C语言的代码示例:
```c
#include <stdio.h>
#include <string.h>
void insert_str(char *str1, char *str2) {
int max_pos = 0, max_char = 0;
int len1 = strlen(str1), len2 = strlen(str2);
// 找到第一个字符串中ASCII码最大的字符的位置
for (int i = 0; i < len1; i++) {
if (str1[i] > max_char) {
max_char = str1[i];
max_pos = i;
}
}
// 将第二个字符串插入到第一个字符串中最大字符的后面
for (int i = 0; i < len2; i++) {
str1[max_pos + i + 1] = str2[i];
}
}
int main() {
char str1[100], str2[100];
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
insert_str(str1, str2);
printf("插入后的字符串为:%s\n", str1);
return 0;
}
```
注意,上面的代码中我们假设了第一个字符串中最大的字符只出现一次。如果有多个字符的ASCII码相同且都是最大的,那么我们应该将第二个字符串插入到它们的后面,并且在插入后的字符串中它们的顺序应该和原来一致。为了实现这个功能,需要在找到第一个最大字符的位置之后,再遍历一遍字符串,找到所有与之相同的字符的位置,然后按照顺序将第二个字符串插入到它们的后面。
阅读全文