C语言从键盘输入任意一个4位正整数(如5678),编写程序将其拆分为两个2位的正整数a和b(如56和78),计算并输出拆分后的两个数a与b的加、减、乘、除和求余的结果。
时间: 2024-10-11 07:09:38 浏览: 47
在C语言中,你可以使用`scanf`函数从用户那里获取输入,然后通过字符串处理将这个四位数拆分成两位数。接下来,你需要创建两个变量分别存储这两个数字,并对它们进行基本的算术运算。以下是实现这一功能的一个示例程序:
```c
#include <stdio.h>
#include <string.h>
int main() {
int num, a, b;
// 从键盘读取4位数
printf("请输入一个4位正整数:");
scanf("%d", &num);
// 拆分数字为两个2位数
char str[5]; // 存储四位数字符串
sprintf(str, "%04d", num); // 添加前导零以确保始终是四位数
a = str[0] - '0'; // 取第一个字符转成十进制
b = str[2] - '0'; // 取第三个字符转成十进制
// 进行算术运算并输出结果
int sum = a + b;
int difference = a - b;
int product = a * b;
int division = a / b; // 如果b为0,这将会产生错误,需要特殊处理
int remainder = a % b;
printf("a 和 b 的加法结果:%d\n", sum);
printf("a 和 b 的减法结果:%d\n", difference);
printf("a 和 b 的乘法结果:%d\n", product);
if (b != 0) { // 避免除数为0的情况
printf("a 除以 b 的结果:%d\n", division);
} else {
printf("a 除以 b (b为0)结果:除法不可行\n");
}
printf("a 对 b 的求余结果:%d\n", remainder);
return 0;
}
```
在这个程序中,我们假设用户输入的是正整数,如果用户输入非数字或者负数,上述代码可能会有误。在实际应用中,你可能需要添加更多的错误检查。
阅读全文