在C語言中,合并字符串并排序的一種方法是使用字符串數組和排序算法(例如冒泡排序、插入排序等)。以下是一個示例代碼:
#include <stdio.h>
#include <string.h>
int main() {
char str1[100], str2[100], merged[200];
int i, j, k, len1, len2;
printf("Enter the first string: ");
gets(str1);
printf("Enter the second string: ");
gets(str2);
len1 = strlen(str1);
len2 = strlen(str2);
// 合并字符串
for (i = 0; i < len1; i++) {
merged[i] = str1[i];
}
for (j = 0; j < len2; j++) {
merged[i++] = str2[j];
}
merged[i] = '\0';
// 使用冒泡排序對合并后的字符串進行排序
for (i = 0; i < strlen(merged) - 1; i++) {
for (j = 0; j < strlen(merged) - i - 1; j++) {
if (merged[j] > merged[j + 1]) {
// 交換字符位置
char temp = merged[j];
merged[j] = merged[j + 1];
merged[j + 1] = temp;
}
}
}
printf("Merged and sorted string: %s", merged);
return 0;
}
這個程序首先讓用戶輸入兩個字符串,然后使用strlen
函數獲取字符串的長度。接下來,通過兩個循環將兩個字符串合并到一個字符串數組中。最后,使用冒泡排序算法對合并后的字符串數組進行排序,并打印出最終排序后的字符串。