c语言有3个整数,按从大到小的顺序输出用指针进行操作
时间: 2023-09-18 07:01:32 浏览: 71
首先,我们可以定义三个整数变量a,b和c来存储要排序的三个整数。
然后,我们使用指针变量ptr1、ptr2和ptr3来分别指向a、b和c的地址。
接下来,我们将使用指针变量之间的比较来完成从大到小的排序。
我们首先比较ptr1和ptr2所指向的值,并将较大的值交换到ptr1所指向的位置。然后,我们再次比较ptr1和ptr3所指向的值,并将较大的值交换到ptr1所指向的位置。
接下来,我们比较ptr2和ptr3所指向的值,并将较大的值交换到ptr2所指向的位置。
最后,我们按照从大到小的顺序输出a、b和c的值。
以下是实现该功能的示例代码:
```c
#include <stdio.h>
void swap(int *ptr1, int *ptr2) {
int temp = *ptr1;
*ptr1 = *ptr2;
*ptr2 = temp;
}
void sortDescending(int *ptr1, int *ptr2, int *ptr3) {
if (*ptr1 < *ptr2) {
swap(ptr1, ptr2);
}
if (*ptr1 < *ptr3) {
swap(ptr1, ptr3);
}
if (*ptr2 < *ptr3) {
swap(ptr2, ptr3);
}
}
int main() {
int a, b, c;
int *ptr1, *ptr2, *ptr3;
printf("请输入三个整数:\n");
scanf("%d %d %d", &a, &b, &c);
ptr1 = &a;
ptr2 = &b;
ptr3 = &c;
sortDescending(ptr1, ptr2, ptr3);
printf("按从大到小的顺序输出:\n");
printf("%d %d %d\n", *ptr1, *ptr2, *ptr3);
return 0;
}
```
以上代码会先要求用户输入三个整数,然后按照从大到小的顺序输出这三个整数。