用c语言从键盘输入三个整数,要求设三个指针变量p1,p2,p3,使p1指向三个数的最大者,p2指向次大者,p3指向最小者,然后按由小到大的顺序输出这三个数。
时间: 2023-11-24 10:06:31 浏览: 290
C语言实验-有3个整数a,b,c,由键盘输入,输出其中最大的数(或最小的数)。
可以使用冒泡排序的思想来解决这个问题。具体步骤如下:
1. 从键盘输入三个整数a、b、c;
2. 定义三个指针变量p1、p2、p3,并让它们分别指向a、b、c;
3. 利用两层循环,比较三个数的大小,将最大值赋给p1,次大值赋给p2,最小值赋给p3;
4. 按照由小到大的顺序输出p3、p2、p1所指向的值。
代码如下:
```c
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个整数:");
scanf("%d%d%d", &a, &b, &c);
int *p1 = &a, *p2 = &b, *p3 = &c;
if (*p1 < *p2) {
int *tmp = p1;
p1 = p2;
p2 = tmp;
}
if (*p1 < *p3) {
int *tmp = p1;
p1 = p3;
p3 = tmp;
}
if (*p2 < *p3) {
int *tmp = p2;
p2 = p3;
p3 = tmp;
}
printf("按照由小到大的顺序输出这三个数:\n");
printf("%d %d %d\n", *p3, *p2, *p1);
return 0;
}
```
阅读全文