编写一个C程序,输入两个整数a、b,交换a和b的值后输出。
时间: 2024-09-06 18:08:18 浏览: 416
在C语言中,你可以通过临时变量来实现两个整数a和b的值交换。下面是一个简单的示例程序:
```c
#include <stdio.h>
// 函数声明
void swap(int *a, int *b);
int main() {
int a, b;
// 输入两个整数
printf("请输入两个整数a和b: ");
scanf("%d %d", &a, &b);
// 调用函数交换a和b的值
swap(&a, &b);
// 输出交换后的结果
printf("交换后的结果是: a = %d, b = %d\n", a, b);
return 0;
}
// 定义swap函数,接受指向整数的指针并交换它们的值
void swap(int *x, int *y) {
int temp = *x; // 将a的值存入temp
*x = *y; // 将b的值赋给a
*y = temp; // 将temp的值赋给b
}
```
在这个程序中,`swap`函数接收两个整数的地址作为参数,并通过这两个地址间接修改了原始的a和b变量。运行程序后,会提示用户输入两个数字,然后交换并显示结果。
相关问题
交换变量的值。编写一个C程序,输入两个整数a,b,交换a和b的数值,然后输出
在C语言中,可以使用临时变量来交换两个整数a和b的值。以下是使用这种方法的一个简单程序:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp; // 创建一个临时变量
temp = *a; // 将a的值存储到temp中
*a = *b; // 将b的值赋给a
*b = temp; // 将temp的值赋给b,完成交换
}
int main() {
int a, b;
// 输入两个整数
printf("请输入两个整数:\n");
scanf("%d %d", &a, &b);
// 调用函数交换a和b的值
swap(&a, &b);
// 输出交换后的结果
printf("交换后的值:a=%d, b=%d\n", a, b);
return 0;
}
```
在这个程序中,`swap`函数接受两个指向整数的指针,通过临时变量实现了a和b值的交换。在`main`函数中,我们先读取用户的输入,然后调用`swap`函数,并输出交换后的结果。
扩展编程】 (1)编写一个C程序,输入两个整数a、b,交换a和b的值后输出。 (2)编写一个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;
printf("请输入第一个整数a: ");
scanf("%d", &a);
printf("请输入第二个整数b: ");
scanf("%d", &b);
swap(&a, &b); // 使用函数交换变量的值
printf("交换后的结果:a=%d, b=%d\n", a, b);
return 0;
}
```
**扩展编程示例二:找出并输出三个数中的最大值**
```c
#include <stdio.h>
int max(int a, int b, int c) {
if (a > b && a > c)
return a;
else if (b > a && b > c)
return b;
else
return c;
}
int main() {
int a, b, c;
printf("请输入第一个整数a: ");
scanf("%d", &a);
printf("请输入第二个整数b: ");
scanf("%d", &b);
printf("请输入第三个整数c: ");
scanf("%d", &c);
int max_value = max(a, b, c);
printf("三个数中的最大值是: %d\n", max_value);
return 0;
}
```
阅读全文
相关推荐















