用c语言swap试定义一个函数,实现一个数的十位与个位交换
时间: 2024-03-15 17:43:53 浏览: 20
好的,这是一个用C语言实现一个数的十位与个位交换的函数:
```c
void swapDigit(int *num) {
int temp = *num % 10; // 取个位数
*num /= 10; // 去掉个位数
temp = temp * 10 + (*num % 10); // 取十位数,并与原个位数交换
*num /= 10; // 去掉十位数
*num = (*num * 10) + temp; // 将交换后的十位数和原来的数重新组合
}
```
这个函数接收一个指向整数的指针,直接修改这个整数的值。你可以将你需要交换十位和个位的数传递给这个函数,它会返回交换后的结果。
相关问题
用c语言swap函数试定义一个函数,实现一个数的十位与个位交换
好的,这是一个用C语言实现一个数的十位与个位交换的函数,其中使用了swap函数:
```c
void swapDigit(int *num) {
int low = *num % 10; // 取个位数
int high = (*num / 10) % 10; // 取十位数
swap(&low, &high); // 交换个位数和十位数
*num = (*num / 100) * 100 + low * 10 + high; // 将交换后的个位数和十位数重新组合
}
```
这个函数接收一个指向整数的指针,直接修改这个整数的值。你可以将你需要交换十位和个位的数传递给这个函数,它会返回交换后的结果。
用C语言写一个静态函数,实现两个数的交换
下面是用C语言写一个静态函数,实现两个数的交换的代码:
```c
static void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
```
在调用这个函数时,只需要传入两个整数的指针即可:
```c
int a = 1, b = 2;
swap(&a, &b);
printf("a = %d, b = %d\n", a, b); // 输出 a = 2, b = 1
```
注意,这里使用了指针来实现交换,因为在函数内部修改变量的值不会影响到函数外部的变量。