(1)要素数 4 個の整数型配列 {5,3,6,2}の中身を表示するプログラム
#include <stdio.h>
void main()
{
int i , a[4]={5,3,6,2};
for( i=0; i<4; i++){
printf("%d ",a[i]);
}
}
(2)(1)の配列の中身を入れ替えるプログラム
#include <stdio.h>
void main()
{
int i , a[4]={5,3,6,2},tmp;
for( i=0; i <4; i++){ /*最初の中身表示*/
printf("%d ",a[i]);
}
tmp=a[0];
a[0]=a[2];
a[2]=tmp;
printf("¥n");
for( i=0; i <4; i++){ /*入れ替え後の中身表示*/
printf("%d ",a[i]);
}
}
(3)(1)の配列を大きい順に並び替えるプログラム
#include <stdio.h>
void main()
{
int i,j,k, a[4]={5,3,6,2},tmp;
for( i=0; i <4; i++){ /*最初の中身表示*/
printf("%d ",a[i]);
}
for(i=0; i<4; i++){
printf("¥n");
for(j=i+1; j<4; j++){
if(a[i] < a[j]){
tmp = a[i];
a[i] = a[j];
a[j] = tmp;
for( k= 0; k < 4; k++){
printf("%d ",a[k]);
}
}
}
}
for( i = 0; i < 4; i++){ /*入れ替え後の中身表示*/
printf("%d ",a[i]);
}
}
(4)要素数10の配列をバブルソートで小さい順に並び替えるプログラム
#include <stdio.h>
void main()
{
int a[10]={5, 3, 8, 6, 4, 9, 2,7, 5, 1 }, i, j, k, tmp;
printf("並べ替え前:");
for( i=0; i<10; i++){
printf("%d ",a[i]);
}
printf("¥n");
for( i=9; i>0; i-- ){ /* バブルソート */
for( j=0; j<i; j++ ){
if( a[j] > a[j+1] ){
tmp = a[j];
a[j] = a[j+1];
a[j+1] = tmp;
for( k=0; k<10; k++){ /* 途中経過表示 */
printf("%d ",a[k]);
}
printf("¥n");
}
}
}
printf("並べ替え後:");
for( i=0; i<10; i++){
printf("%d ",a[i]);
}
}
(5)要素数10の配列を挿入ソートで小さい順に並び替えるプログラム
#include <stdio.h>
void main()
{
int a[10]={5, 3, 8, 6, 4, 9, 2,7, 5, 1 }, i, j,k, tmp;
printf("並べ替え前:");
for( i=0; i<10; i++){
printf("%d ",a[i]);
}
printf("¥n");
for (i = 1; i < 10; i++) { /* 挿入ソート */
tmp = a[i];
for (j = i; j > 0 && a[j-1] > tmp; j--) {
a[j] = a[j -1];
}
a[j]=tmp;
for( k=0; k<10; k++){ /* 途中経過表示 */
printf("%d ",a[k]);
}
printf("¥n");
}
printf("並べ替え後:");
for( i=0; i<10; i++){
printf("%d ",a[i]);
}
}