数位拆分v2.0 从键盘上输入一个4位数的整数n,编写程序将其拆分为两个2位数的整数a和b,计算并输出拆分后的两个数的加、减、乘、除和求余运算的结果。例如n=-4321,设拆分后的两个整数为a,b,则a=-43,b=-21。除法运算结果要求精确到小数点后2位。求余和除法运算需要考虑除数为0的情况,即如果拆分后b=0,则输出提示信息"the second operater is zero!" 程序的运行结果示例1: please input n: 1200↙ 12,0 sum=12,sub=12,multi=0 the second operater is zero! 程序的运行结果示例2: please input n: -2304↙ -23,-4 sum=-27,sub=-19,multi=92 dev=5.75,mod=-3 输入格式: "%d" 输入提示信息:"please input n:\n" 拆分后的两个整数的输出格式:"%d,%d\n" 加法、减法、乘法的输出格式:"sum=%d,sub=%d,multi=%d\n" 除法和求余的输出格式:"dev=%.2f,mod=%d\n" 除数为0的提示信息:"the second operater is zero!\n"
时间: 2023-11-27 11:52:29 浏览: 173
计算机二级C上机考试题库100套.pdf
以下是数位拆分v2.0的代码实现:
```c
#include <stdio.h>
int main() {
int n, a, b, sum, sub, multi, mod;
float dev;
printf("please input n:\n");
scanf("%d", &n);
a = n / 100;
b = n % 100;
printf("%d,%d\n", a, b);
sum = a + b;
sub = a - b;
multi = a * b;
printf("sum=%d,sub=%d,multi=%d\n", sum, sub, multi);
if (b == 0) {
printf("the second operater is zero!\n");
} else {
dev = (float) a / b;
mod = a % b;
printf("dev=%.2f,mod=%d\n", dev, mod);
}
return 0;
}
```
代码思路:
1. 定义整型变量`n`、`a`、`b`、`sum`、`sub`、`multi`、`mod`和浮点型变量`dev`。
2. 使用`scanf`函数从键盘输入一个4位数的整数`n`。
3. 将`n`拆分为两个2位数的整数`a`和`b`,分别使用除法运算和取模运算实现,将结果分别赋值给`a`和`b`。
4. 输出拆分后的两个整数`a`和`b`,使用`printf`函数实现。
5. 分别计算拆分后的两个整数`a`和`b`的加、减、乘运算结果,将结果分别赋值给`sum`、`sub`、`multi`。
6. 如果`b`等于0,则输出提示信息"the second operater is zero!";否则计算`a`除以`b`的结果并赋值给`dev`,计算`a`对`b`取余的结果并赋值给`mod`。
7. 最后,分别输出加、减、乘、除、求余的运算结果,使用`printf`函数实现。
注意事项:
1. 除法运算的结果需要使用浮点型变量存储,否则结果会被截断。
2. 如果拆分后的第二个整数`b`等于0,除法运算和求余运算都无法进行,需要特殊处理。
阅读全文