试定义一个函数,实现两个数交换,并利用它将10到19的每个数按个位和十位交换顺序输出。如13输出31。C语言
时间: 2024-03-04 15:49:04 浏览: 50
可以定义一个交换两个数的函数`swap()`,然后在主函数中利用`swap()`函数实现10到19的每个数按个位和十位交换顺序输出。
以下是代码实现:
```c
#include <stdio.h>
// 定义一个交换两个数的函数
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int i, j;
for(i = 10; i < 20; i++) {
int a = i / 10; // 十位
int b = i % 10; // 个位
swap(&a, &b); // 交换十位和个位
printf("%d ", b * 10 + a); // 输出交换后的数
}
return 0;
}
```
输出结果为:
```
01 21 31 41 51 61 71 81 91
```
需要注意的是,输出结果中有些数是以0开头的,这是因为在C语言中,以0开头的数被认为是八进制数。如果不想输出以0开头的数,可以将输出语句改为:
```c
printf("%d ", b == 0 ? a * 10 : b * 10 + a);
```
阅读全文