编写程序,设计函数 ,实现把两个输入的字符串交叉合并,合并时,把小写字符改为大写
时间: 2023-04-03 10:05:06 浏览: 121
您好,我可以回答您的问题。以下是实现把两个输入的字符串交叉合并,合并时,把小写字符改为大写的函数代码:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
void merge(char *str1, char *str2, char *result) {
int len1 = strlen(str1);
int len2 = strlen(str2);
int i, j, k;
for (i = 0, j = 0, k = 0; i < len1 && j < len2; ) {
if (islower(str1[i])) {
result[k++] = toupper(str1[i++]);
} else {
result[k++] = str1[i++];
}
if (islower(str2[j])) {
result[k++] = toupper(str2[j++]);
} else {
result[k++] = str2[j++];
}
}
while (i < len1) {
if (islower(str1[i])) {
result[k++] = toupper(str1[i++]);
} else {
result[k++] = str1[i++];
}
}
while (j < len2) {
if (islower(str2[j])) {
result[k++] = toupper(str2[j++]);
} else {
result[k++] = str2[j++];
}
}
result[k] = '\0';
}
int main() {
char str1[100], str2[100], result[200];
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
merge(str1, str2, result);
printf("合并后的字符串为:%s\n", result);
return 0;
}
```
希望能够帮到您!
阅读全文