ライブラリを使わないで文字列比較を行い同じであればSame、異なればDifferentを表示するプログラムに関してなのですが、以下のコードを実行すると結果が、逆になってしまいます(同じなのにDifferent)。また、performとperformanceを比較するとSameと出てしまい2文字目以降の比較ができません。解決方法分かる方いらっしゃいましたらご回答お願い致します。
int main(void){ //変数宣言// char str1[100]; char str2[100]; int i=0; int imax=100; //文字列の入力// printf("Input str:"); scanf("%s", str1); printf("Input str:"); scanf("%s", str2); //多くとも100回ループし文字列の各要素を比較// for(i=0; i<imax; i++){ //比較するループが終端文字まで同じであればSameを表示// if(str1[i] == '\0' && str2[i]=='\0'){ printf("Same \n"); break; //比較した要素が違った時点でループを終了しDifferentを表示// }else{ printf("Different \n"); break; } } return 0; }
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/06 10:05
2020/08/06 10:20
2020/08/06 10:38
2020/08/06 10:58 編集
2020/08/06 13:40