C言語について
Posted: 2011年12月17日(土) 20:55
#include <stdio.h>
#define NUM 10
int main (void)
{
int test[NUM] = {49,52,31,16,76,64,8,24,97,81};
int tmp;
int j,t,s,i;
printf("第元回");
for(i = 0;i < NUM; i++){
printf("%4d",test);
}
printf("\n");
for(s = 0; s < NUM - 1; s++){
j = ??;/*初期値*/
for(t = 0;t < NUM - s; t++){
if(test[t] > test[t + 1]){
tmp = test[t];
test[t] = test[t + 1];
test[t + 1] = tmp;
j = ??;/*初期値と違う値を設定する*/
}
}
for(i = 0;i < NUM; i++){
printf("%4d",test);
}
printf("\n");
if(j == ??){/*初期値と同じか?*/
break;/*初期値と同じなら交換はなし*/
}
}
return 0;
}
上の?の部分に何が入るのかを教えてください。
第元回 49 52 31 16 76 64 8 24 97 81
第1回 8 52 49 31 76 64 16 24 97 81
第2回 8 16 52 49 76 64 31 24 97 81
第3回 8 16 24 52 76 64 49 31 97 81
第4回 8 16 24 31 76 64 52 49 97 81
第5回 8 16 24 31 49 76 64 52 97 81
第6回 8 16 24 31 49 52 76 64 97 81
第7回 8 16 24 31 49 52 64 76 97 81
第8回 8 16 24 31 49 52 64 76 97 81
第9回 8 16 24 31 49 52 64 76 81 97
*/
そして上のような実行結果になるように
付け加えてください。
第6回から第9回までは同じことを繰り返しています。
そういうときに
繰り返しをなくすように設定してください。
第6回で終了されるようにしてください。
#define NUM 10
int main (void)
{
int test[NUM] = {49,52,31,16,76,64,8,24,97,81};
int tmp;
int j,t,s,i;
printf("第元回");
for(i = 0;i < NUM; i++){
printf("%4d",test);
}
printf("\n");
for(s = 0; s < NUM - 1; s++){
j = ??;/*初期値*/
for(t = 0;t < NUM - s; t++){
if(test[t] > test[t + 1]){
tmp = test[t];
test[t] = test[t + 1];
test[t + 1] = tmp;
j = ??;/*初期値と違う値を設定する*/
}
}
for(i = 0;i < NUM; i++){
printf("%4d",test);
}
printf("\n");
if(j == ??){/*初期値と同じか?*/
break;/*初期値と同じなら交換はなし*/
}
}
return 0;
}
上の?の部分に何が入るのかを教えてください。
第元回 49 52 31 16 76 64 8 24 97 81
第1回 8 52 49 31 76 64 16 24 97 81
第2回 8 16 52 49 76 64 31 24 97 81
第3回 8 16 24 52 76 64 49 31 97 81
第4回 8 16 24 31 76 64 52 49 97 81
第5回 8 16 24 31 49 76 64 52 97 81
第6回 8 16 24 31 49 52 76 64 97 81
第7回 8 16 24 31 49 52 64 76 97 81
第8回 8 16 24 31 49 52 64 76 97 81
第9回 8 16 24 31 49 52 64 76 81 97
*/
そして上のような実行結果になるように
付け加えてください。
第6回から第9回までは同じことを繰り返しています。
そういうときに
繰り返しをなくすように設定してください。
第6回で終了されるようにしてください。