-->
当前位置:首页 > 题库 > 正文内容

程序填空题:利用指针进行3个数排序

Luz3年前 (2022-05-12)题库2915
请完善程序,实现以下程序功能:从键盘上输入3个整数,使用指针实现升序排序,最后输出结果。<br>
输入样例1:<br>
1 -6 99 <br>
输出样例1:<br>
-6 1 99 <br>
输入样例2:<br>
99 1 -6 <br>
输出样例2:<br>
-6 1 99 <br>
输入样例3:<br>
-6 99 1 <br>
输出样例3:<br>
-6 1 99 <br>

//本程序的基本算法:首先将3个数中最小的数存放在变量a中;然后,将次最小数存放在变量b中;
//变量c中存放的自然是最大数;至此,3个数按由小到大的顺序排好。

#include <stdio.h>
int main(void)
{int k;for(k=1;k<=6;k++){ //该循环用于自动阅卷,请考生忽略
int a,b,c,*p,*q,*r,t;
//指针变量p,q,r分别指向变量a,b,c
p=&a;
q=&b;
r=;
scanf("%d%d%d",p,q,r); //输入3个整数存入变量a,b,c中
if(*p>*q) //将变量a,b中较小的数存放在a中
{t=*p;
;
*q=t;
}
if() //将变量a,c中较小的数存放在a中
{t=*p;
*p=*r;
*r=t;
}
if(*q>*r) //将变量b,c中较小的数存放在b中
{;
*q=*r;
*r=t;
}
printf("%d %d %d\n",*p,,*r); //输出排好序的3个数
} //该循环用于自动阅卷,请考生忽略
return 0;
}









答案:
第1空:&c

第2空:*p=*q

第3空:*p>*r

第4空:t=*q

第5空:*q

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。