输入a,b,c3个整数,按从大到小输出。C语言指针
时间: 2024-01-03 07:05:31 浏览: 158
以下是使用C语言指针实现输入a,b,c三个整数,按从大到小输出的代码:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int a, b, c;
int *pa, *pb, *pc;
pa = &a;
pb = &b;
pc = &c;
printf("请输入3个整数:\n");
scanf("%d%d%d", pa, pb, pc);
if (*pa < *pb) {
swap(pa, pb);
}
if (*pa < *pc) {
swap(pa, pc);
}
if (*pb < *pc) {
swap(pb, pc);
}
printf("这3个数由大到小的排序为:%d %d %d\n", *pa, *pb, *pc);
return 0;
}
```
相关问题
输入a、b、c3个人的生日,格式为:yyyy mm dd,按照年龄从大到小输出。
可以按照以下步骤来实现:
1. 输入a、b、c三个人的生日,格式为:yyyy mm dd。
2. 计算每个人的年龄,并将其存储在一个列表中。
3. 对年龄列表进行排序,从大到小。
4. 根据排序后的年龄列表,输出每个人的生日,按照年龄从大到小。
具体实现方法可以参考以下代码:
```
# 输入a、b、c三个人的生日,格式为:yyyy mm dd
a_birthday = input("请输入a的生日(格式为yyyy mm dd):")
b_birthday = input("请输入b的生日(格式为yyyy mm dd):")
c_birthday = input("请输入c的生日(格式为yyyy mm dd):")
# 计算每个人的年龄,并将其存储在一个列表中
from datetime import datetime
today = datetime.today()
a_age = today.year - int(a_birthday.split()[])
b_age = today.year - int(b_birthday.split()[])
c_age = today.year - int(c_birthday.split()[])
age_list = [a_age, b_age, c_age]
# 对年龄列表进行排序,从大到小
age_list.sort(reverse=True)
# 根据排序后的年龄列表,输出每个人的生日,按照年龄从大到小
print("按照年龄从大到小输出:")
for age in age_list:
if age == a_age:
print("a的生日是:", a_birthday)
elif age == b_age:
print("b的生日是:", b_birthday)
else:
print("c的生日是:", c_birthday)
```
运行代码后,可以按照提示输入三个人的生日,然后程序会按照年龄从大到小输出每个人的生日。
编写一个C程序,输入a,b,c3个整数,求这3个数之和
当然可以。编写一个C程序来求解三个整数a、b和c的和非常简单。下面是一个基础的示例:
```c
#include <stdio.h>
int main() {
int a, b, c, sum;
// 输入三个整数
printf("请输入第一个整数a: ");
scanf("%d", &a);
printf("请输入第二个整数b: ");
scanf("%d", &b);
printf("请输入第三个整数c: ");
scanf("%d", &c);
// 计算它们的和
sum = a + b + c;
// 输出结果
printf("这三个数的和是: %d\n", sum);
return 0;
}
```
这个程序首先包含了`stdio.h`头文件,它提供了标准输入输出函数。然后在`main()`函数中,我们定义了变量`a`、`b`、`c`用于存储输入的数值,以及`sum`来计算总和。通过`scanf()`函数获取用户输入,接着将它们相加,并使用`printf()`显示结果。
如果你想要运行此程序,需要复制并粘贴到C编译器中编译和执行。
阅读全文