用C语言解答“输入一个3位数,更换其各个位与百位的数字输出”
时间: 2024-11-13 16:25:08 浏览: 1
c代码-9.键盘输入一个三位数的正整数,其个位与百位相加若等于十位上的数字则输出"Yes",否则输出"No"。例如,输入"176",则输出"Yes"。输入"258",则输出"No"
在C语言中,你可以通过以下步骤来实现这个功能:
```c
#include <stdio.h>
// 定义一个函数来交换一个整数的十位和百位数字
void swap(int num) {
int temp = num % 10; // 取出个位数字
num /= 10; // 移除个位
num *= 100; // 将移除个位后的数扩大100倍,表示百位
num += temp; // 添加原个位到新位置
}
int main() {
int input;
printf("请输入一个三位数: ");
scanf("%d", &input); // 读取用户输入
// 检查输入是否为三位数
if(input >= 100 && input <= 999) {
swap(input);
printf("交换后的数字是: %d\n", input);
} else {
printf("输入的不是一个三位数,请重新输入。\n");
}
return 0;
}
```
在这个程序里,我们首先定义了一个`swap`函数,它接收一个整数作为参数,然后通过一系列操作(取余、除以10、乘以100、加上原来个位)实现了位的交换。在主函数`main`中,我们获取用户的输入并检查是否为三位数,如果是,则调用`swap`函数,并输出结果。
阅读全文