演習10ー3
問: ポインタn1、n2、n3が指す三つのint型整数を昇順にソートする関数を作成せよ。
void sort2(int* n1, int* n2, int* n3)
// Ex1003.c
#include
void swap(int* x, int* y)
{
int temp = *x;
*x = *y;
*y = temp;
}
void sort2(int* n1, int* n2, int* n3)
{
if (*n1 > *n2)
swap(n1, n2);
if (*n2 > *n3)
swap(n2, n3);
if (*n1 > *n2)
swap(n1, n2);
}
int main(void)
{
int a, b, c;
puts("三つの正数を入力せよ");
printf("整数A:"); scanf("%d", &a);
printf("整数B:"); scanf("%d", &b);
printf("整数C:"); scanf("%d", &c);
sort2(&a, &b, &c);
putchar('\n');
printf("ソート後\n");
printf("Aの値 = %d\n", a);
printf("Bの値 = %d\n", b);
printf("Cの値 = %d\n", c);
return 0;
}
コメント
特になし。
書籍情報
コメント