C言語で文字列の入れ替えを実現する方法は何ですか?
C言語では、一時変数を使用して文字列の入れ替えを実現することができます。具体的な手順は次のとおりです:
- 2つの文字配列を宣言して、それぞれ交換したい文字列を保存します。
- strcpy関数を使用して、最初の文字列を一時配列にコピーします。
- strcpy関数を使用して、2番目の文字列を1番目の文字列にコピーします。
- strcpy関数を使用して、一時配列の文字列を第二の位置にコピーします。
以下はコードの例です:
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100], temp[100];
printf("输入第一个字符串: ");
fgets(str1, sizeof(str1), stdin);
printf("输入第二个字符串: ");
fgets(str2, sizeof(str2), stdin);
// 去除输入的换行符
str1[strcspn(str1, "\n")] = '\0';
str2[strcspn(str2, "\n")] = '\0';
// 调换字符串
strcpy(temp, str1);
strcpy(str1, str2);
strcpy(str2, temp);
printf("调换后的第一个字符串: %s\n", str1);
printf("调换后的第二个字符串: %s\n", str2);
return 0;
}
プログラムを実行すると、ユーザーが2つの文字列を入力すると、プログラムは交換された結果を出力します。