c语言编程输入一个不超过4位的正整数,判断该数是几位数,如果是2位数或3位数,请计算出各位数的和,如果是4位数,则计算出前两位与后两位的积,并输出相应信息
时间: 2024-11-12 07:46:12 浏览: 115
在C语言编程中,你可以通过以下步骤来完成这个任务:
1. 首先,定义一个变量 `num` 来接收用户输入的数字。使用 `scanf` 函数从标准输入读取数值。
```c
int num;
printf("请输入一个不超过4位的正整数:");
scanf("%d", &num);
```
2. 接着,使用条件语句判断数字的位数:
- 如果 `num` 的十位数不为0(即不是一位数),那么它是一个两位数或三位数,计算各位数之和。可以用临时变量存储每一位,然后相加。
```c
if (num >= 10 && num < 100) {
int sum = num % 10 + num / 10; // 取余得到个位,整除得到十位
printf("这是一个%dd数,各位数之和为:%d\n", num / 10 == 1 ? "两" : "三", sum);
}
```
- 否则,如果 `num` 足够大(大于等于100),则说明它是一个四位数,计算前两位(百位和十位)与后两位(个位和十位的乘积)。
```c
else if (num >= 100) {
int product = (num / 100) * (num % 10); // 百位*个位
printf("这是一个四位数,前两位与后两位的积为:%d\n", product);
}
```
3. 最后,别忘了处理边界情况,比如用户输入非数字字符。可以使用 `scanf` 函数的返回值检查是否成功读取,若失败则提示错误。
```c
if (scanf("%d", &num) != 1) {
printf("无效输入,请输入一个正整数。\n");
}
```
将以上代码组合起来,就是一个完整的程序结构了。
阅读全文