输入两个整数,按照先大后小的方式,依次输出两数
此问题拥有两种解法,两种方法都大同小异
方法一
代码如下
int main()
{
int a, b, * p, * q, * i;
printf("请输入两个整数:\n");
scanf("%d %d", &a, &b);
p = &a;
q = &b;
if (a < b)
{
i = p;
p = q;
q = i;
}
printf("较大数为%d\n较小数为%d\n", *p, *q);
return 0;
}
方法二
代码如下
int main()//输入两个整数,按照先大后小的方式,依次输出两数
{
int a, b, * p, * q, t;
printf("请输入两个整数:\n");
scanf("%d %d", &a, &b);
p = &a;
q = &b;
if (a < b)
{
t = * p;
* p = * q;
* q = t;
}
printf("较大数为%d\n较小数为%d\n", *p, *q);
return 0;
}
总结
两种方法之间的差异在于比较出两数大小之后如何交换两数顺序,其余完全一致。