输入一个三位整数,将个位和百位交换后输出,如果个位是0,交换后也输出 c语言
时间: 2024-11-25 12:18:49 浏览: 4
在C语言中,你可以使用条件判断和基本的数学运算来实现这个功能。下面是一个简单的示例程序,它接受用户输入一个三位整数,然后交换个位和百位:
```c
#include <stdio.h>
int main() {
int num, temp; // 定义变量存储输入的数字和临时值
printf("请输入一个三位整数:");
scanf("%d", &num); // 读取用户的输入
// 检查是否为三位数
if (num >= 100 && num <= 999) {
// 分离百位、十位和个位
temp = num % 10; // 个位
num = num / 10; // 移除个位,得到十位和百位
num = num * 10 + temp; // 将百位放回原位置,个位放回最后
printf("交换后的数字:%d\n", num);
} else {
printf("输入不是三位数,请重新输入。\n");
}
return 0;
}
相关问题
用c语言输入一个三位整数,将其百位和个位交换后输出
在C语言中,要实现这个功能,你可以使用数组或者临时变量来存储输入的三位数并进行交换操作。下面是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int num, temp; // 用于存储原始数字和中间值
printf("请输入一个三位整数: ");
scanf("%d", &num); // 输入整数
// 分离百位、十位和个位
int hundreds = num / 100; // 百位
int tens = (num % 100) / 10; // 十位
int ones = num % 10; // 个位
// 交换百位和个位
temp = hundreds;
hundreds = ones;
ones = temp;
// 组合新的三位数
num = hundreds * 100 + tens * 10 + ones;
printf("交换后的三位数是: %d\n", num);
return 0;
}
```
当你运行这个程序时,它会提示你输入一个三位数,然后输出交换了百位和个位的新数。
用c语言输入一个三位整数,将其百位和个位交换后输出,个位数是零也要交换
在 C 语言中,你可以通过以下几个步骤来实现这个功能:
1. 首先,提示用户输入一个三位数。
2. 然后,将输入的数字转换成字符串以便于操作每一位数。
3. 分离出百位、十位和个位。
4. 如果个位是0,则不需要单独处理,因为其他位数已经足够组成新的三位数。
5. 将百位和个位互换位置。
6. 再次将变换后的数组转换回整数形式并输出。
下面是一个简单的示例程序实现:
```c
#include <stdio.h>
#include <string.h>
void swap(char *num, int pos1, int pos2) {
char temp = num[pos1];
num[pos1] = num[pos2];
num[pos2] = temp;
}
int main() {
printf("请输入一个三位数:");
unsigned int input;
scanf("%u", &input);
// 将输入转换为字符串
char str[5]; // 考虑到可能是负数,需要额外一位
itoa(input, str, 10);
// 检查是否为三位数,并且个位非零
if (strlen(str) != 4 || str[3] == '0') {
printf("输入错误,不是三位数或个位是0。\n");
return 0;
}
// 交换百位和个位
swap(str, 0, 2); // 数组下标从0开始计
// 输出结果
unsigned int output = atoi(str); // 把字符串转回整数
printf("交换后得到的三位数是:%u\n", output);
return 0;
}
```
阅读全文