输入两个整数,求两个整数的乘积。输出每个整数时控制每个整数的输出长度为3,不足3 个时在右边补空格。
时间: 2024-11-30 15:15:08 浏览: 14
要实现这个功能,你可以使用C语言中的printf函数和字符串处理。首先获取用户的输入,然后计算它们的乘积,同时确保结果被格式化为每行三个字符。这里有一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int num1, num2, product;
// 输入两个整数
printf("请输入第一个整数(最多3位): ");
scanf("%*[^0-9]%d", &num1);
while (num1 < 100 && num1 >= 10) { // 如果数字超过三位,则要求重新输入
printf("输入错误,请输入一个1到99之间的整数: ");
scanf("%*[^0-9]%d", &num1);
}
printf("\n请输入第二个整数(最多3位): ");
scanf("%*[^0-9]%d", &num2);
while (num2 < 100 && num2 >= 10) {
printf("输入错误,请输入一个1到99之间的整数: ");
scanf("%*[^0-9]%d", &num2);
}
// 计算乘积并格式化输出
product = num1 * num2;
char str[5]; // 存储带空格的结果
sprintf(str, "%3d", product); // 格式化为3位数,不足则用空格填充
printf("两个整数的乘积: %s\n", str);
return 0;
}
```
在这个程序中,我们使用scanf的`%*[^0-9]%d`格式匹配非数字字符(忽略前导空格),然后读取整数。如果输入的数字超过了三位,我们会提示用户重新输入。
运行这段代码后,你会看到用户输入的两个整数以及它们的乘积,每行保持三个字符宽。如果你有任何疑问或想了解更深入的内容,请告诉我。
阅读全文