使用C语言输入3个整数,按由大到小的顺序输出。(用指针做)
时间: 2024-03-22 21:37:26 浏览: 43
好的,下面是代码:
```c
#include <stdio.h>
void sort(int *a, int *b, int *c) {
if (*a < *b) {
int t = *a;
*a = *b;
*b = t;
}
if (*b < *c) {
int t = *b;
*b = *c;
*c = t;
}
if (*a < *b) {
int t = *a;
*a = *b;
*b = t;
}
}
int main() {
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
sort(&a, &b, &c);
printf("%d %d %d\n", a, b, c);
return 0;
}
```
这个程序中,我们定义了一个 `sort()` 函数,它将三个整数按由大到小的顺序排序。在 `main()` 函数中,我们使用 `scanf()` 函数输入三个整数,然后调用 `sort()` 函数,将它们排序。最后,我们使用 `printf()` 函数输出排序后的结果。需要注意的是,我们在调用 `sort()` 函数时,传递的是三个整数的地址,而不是它们的值。这样做可以让 `sort()` 函数直接修改这三个整数的值。
相关问题
用c语言顺序输出 输入3个整数,利用指针和函数相关知识将数字按由小到大顺序输出 输入说明: 3个整数 输入说明: 由小到大顺序输出 输入示例: 1 2 3 输出示例: 1 2 3
好的,这是一个简单的C语言程序,使用指针和函数将输入的三个整数按照从小到大的顺序输出:
```c
#include<stdio.h>
void sort(int *a, int *b, int *c);
int main()
{
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
sort(&a, &b, &c);
printf("%d %d %d", a, b, c);
return 0;
}
void sort(int *a, int *b, int *c)
{
if(*a > *b)
{
int temp = *a;
*a = *b;
*b = temp;
}
if(*a > *c)
{
int temp = *a;
*a = *c;
*c = temp;
}
if(*b > *c)
{
int temp = *b;
*b = *c;
*c = temp;
}
}
```
这个程序中,`sort`函数使用指针参数来交换三个整数的值,使它们按从小到大的顺序排列。最后在主函数中输出已排序的三个整数。
c语言用指针,内容:从键盘输入三个整数a,b,c,按从大到小顺序输出,用指针方式实现数据交换
下面是使用指针实现从大到小排序的C语言代码:
```c
#include <stdio.h>
void swap(int *a, int *b)
{
int temp = *a;
*a = *b;
*b = temp;
}
int main()
{
int a, b, c;
// 从键盘输入三个整数
printf("请输入三个整数:");
scanf("%d %d %d", &a, &b, &c);
// 按从大到小顺序排序
if (a < b) swap(&a, &b);
if (a < c) swap(&a, &c);
if (b < c) swap(&b, &c);
// 输出排序后的结果
printf("%d %d %d\n", a, b, c);
return 0;
}
```
在这个例子中,我们定义了一个 `swap` 函数用于交换两个整数的值。这个函数接受两个指向整数的指针作为参数,通过指针交换两个整数的值。
在 `main` 函数中,我们先从键盘输入三个整数 `a`、`b` 和 `c`。然后通过比较大小,使用 `swap` 函数交换它们的值,使得 `a` 存储最大的整数,`c` 存储最小的整数。最后输出排序后的结果。
阅读全文