使用c语言用指针编程实现:输入3个整数,按由小到大顺序输出。
时间: 2023-10-31 15:10:47 浏览: 42
可以使用冒泡排序来实现这个功能,具体代码如下:
```c
#include <stdio.h>
void sort(int *a, int *b, int *c) {
int temp;
if (*a > *b) {
temp = *a;
*a = *b;
*b = temp;
}
if (*b > *c) {
temp = *b;
*b = *c;
*c = temp;
}
if (*a > *b) {
temp = *a;
*a = *b;
*b = temp;
}
}
int main() {
int a, b, c;
printf("请输入三个整数:");
scanf("%d%d%d", &a, &b, &c);
sort(&a, &b, &c);
printf("由小到大排列后的结果为:%d %d %d\n", a, b, c);
return 0;
}
```
在 `sort` 函数中,我们使用指针传递三个整数的地址,然后进行冒泡排序。在 `main` 函数中,我们输入三个整数,并且调用 `sort` 函数进行排序,最后输出结果。
相关问题
使用c语言用指针编程实现:输入3个正整数, 按由小到大顺序输出。
下面是使用指针实现的C语言代码:
```c
#include <stdio.h>
void swap(int *p1, int *p2) {
int temp = *p1;
*p1 = *p2;
*p2 = temp;
}
int main() {
int a, b, c;
int *p1, *p2, *p3;
printf("请输入三个正整数: ");
scanf("%d %d %d", &a, &b, &c);
p1 = &a;
p2 = &b;
p3 = &c;
if (*p1 > *p2) {
swap(p1, p2);
}
if (*p1 > *p3) {
swap(p1, p3);
}
if (*p2 > *p3) {
swap(p2, p3);
}
printf("%d %d %d\n", *p1, *p2, *p3);
return 0;
}
```
首先定义了三个整数和三个指针p1,p2,p3。然后通过指针将a,b,c的地址赋值给p1,p2,p3。接着使用swap函数进行排序,最后输出排序后的结果。
c语言使用指针编程实现:输入3个正整数,按由小到大顺序输出。
以下是一种实现方式:
```c
#include <stdio.h>
void sort(int *a, int *b, int *c) {
if (*a > *b) {
int temp = *a;
*a = *b;
*b = temp;
}
if (*b > *c) {
int temp = *b;
*b = *c;
*c = temp;
}
if (*a > *b) {
int temp = *a;
*a = *b;
*b = temp;
}
}
int main() {
int a, b, c;
printf("请输入三个正整数:");
scanf("%d %d %d", &a, &b, &c);
sort(&a, &b, &c);
printf("按由小到大的顺序输出:%d %d %d\n", a, b, c);
return 0;
}
```
首先定义了一个`sort`函数,用于将三个数按由小到大排序。在`main`函数中,先输入三个正整数,然后调用`sort`函数进行排序,最后输出排序后的结果。其中,`sort`函数使用指针作为参数,可以直接修改原变量的值。