题目描述
给你三个整数,请你从小到大输出。
输入描述:
若干组数据,每组数据占一行,每组数据为三个整数用空格分隔。
输出描述:
对每组数据按要求从小到大重新输出,输出的三个整数之间隔一个空格,每组数据单独占一行。
要求
请发挥你的所学,使用指针编程。
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int arr[100];
int* p = arr;
int i = 1;
int n = 1;
while (scanf("%d ", &arr[i]) != EOF)
{
i++;
n++;
}
for (i = 1; i < n; i = i + 3)
{
if (*(p + i) < *(p + i + 1))
{
int tmp;
tmp = *(p + i);
*(p + i) = *(p + i + 1);
*(p + i + 1) = tmp;
}
if (*(p + i) < *(p + i + 2))
{
int tmp;
tmp = *(p + i);
*(p + i) = *(p + i + 2);
*(p + i + 2) = tmp;
}
if (*(p + i+1) < *(p + i + 2))
{
int tmp;
tmp = *(p + i+1);
*(p + i+1) = *(p + i + 2);
*(p + i + 2) = tmp;
}
printf("%d %d %d", *(p + i + 2), *(p + i + 1), *(p + i));
printf("\n");
}
return 0;
}