任意の数の文字列を入力し、同じ文字列が無い場合は「YES」、既にある場合は「NO」と表示させたいです
#include <stdio.h> #include <string.h> int main(void){ int kaisu = 0; int hrg,i,k,h=0; char name[20][20]; //入力回数を入力 scanf("%d",&kaisu); printf("回数は%d\n",kaisu); //nameに文字列を入れていく for(i=0; i<kaisu; i++){ scanf("%s",name[i]); } //nameの中の文字列を比較 for(k=0; k<kaisu; k++){ for(h = kaisu; h>0 ;h--){ if(strcmp(name[k],name[h])!=0){ hrg=1; }else{ hrg=0; } } printf("k%dは%s\n",k,name[k]); printf("h%dは%s\n",h,name[h]); printf("hrg%d\n",hrg); if(hrg==1){ printf("NO\n"); }else if(hrg==0){ printf("YES\n"); } } return 0; }
■入力
3
aa
bb
aa
■出力
回数は3
k0はaa
h0はaa
hrg1
NO
k1はbb
h0はaa
hrg0
YES
k2はaa
h0はaa
hrg1
NO
※出力時はデバッグ用にprintfで文字列を表示させている
■期待する出力
YES
YES
NO
※同じ文字列があった場合、初めに入力されている文字列を「YES」判定
後に入力されているものを「NO」判定にしたい
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。