英単語をアルファベット順になるように並べ替えるプログラムです。しかし、うまく行きません。どこに間違えがあるのでしょうか?
c
1#include <stdio.h> 2#include <string.h> 3 4int main(void) 5{ 6 int i, j, k, l, m; 7 int number; //英単語の個数 8 char eitanngo[number][34]; 9 int tmp; 10 char TMP[34]; 11 12 printf("英単語何個ですか?"); 13 scanf ("%d", &number); 14 for(j = 0; j < number; j++){ 15 printf("%d個目",j + 1); 16 scanf("%s", eitanngo[j]); 17 printf("%s\n", eitanngo[j]); 18 } 19 20 //文字の長さに並べ、連結 21 for(l = 0; l < number; l++){ 22 for(m = l+1; m < number; m++){ 23 strcmp(eitanngo[l], eitanngo[m]); 24 if (strcmp(eitanngo[l], eitanngo[m]) > 0){ 25 //printf("%s %s\n", eitanngo[l], eitanngo[m]); 26 strcpy(TMP,eitanngo[l]); 27 strcpy(eitanngo[l], eitanngo[m]); 28 strcpy(eitanngo[m], TMP); 29 } 30 } 31 } 32 printf ("連結結果 :"); 33 for(k= 0; k < number; k ++){ 34 printf("%s ", eitanngo[k]); 35 } 36 printf("\n"); 37 return 0; 38} 39 40 41 42 43 44
なにがどのように「うまくいかない」かを説明しなさい。
回答3件
あなたの回答
tips
プレビュー