質問: C言語についてで質問です!キーボードから5単語を入力し、その後に番号を1〜5の中から入力すると、その番号の単語の文字を逆にして出力表示するプログラムのソースコードの添削をお願いしますm(_ _)m
回答: #include int main(void){ char str[4][32]; ←5単語だろ? int i; int count ←;が無い for(i=0;i<4;i++){ ←5単語だろ? printf("%d: ",i+1); scanf("%s",&str[i]); } printf("何番の単語を選択しますか?: "); scanf("%d",&i); ←変数iは次のfor文で初期化されてしまう for (i = 0; str[i] != '\0'; i++){ ←strは2次元配列です count++; ←初期化せずに使っているので0からカウントしない } for (i=count - 1; i>= 0; i--){ printf("%c", str[i]); ←strは2次元配列です } return 0; } 私の回答例は↓↓↓(出来れば見ずに考える) #include int main(void){ char str[5][32]; int i,n; int count; for(i=0;i<5;i++){ printf("%d: ",i+1); scanf("%s",&str[i]); } printf("何番の単語を選択しますか?: "); scanf("%d",&n); n--; for (i = 0; str[n][i] != '\0'; i++); count=i; for (i=count - 1; i>= 0; i--){ printf("%c", str[n][i]); } return 0; } 1: 1234 2: 4567 3: 89123 4: asdfg 5: zxcvb 何番の単語を選択しますか?: 3 32198