题目
从标准输入读入两个整数 a、b,依次输出和、差、积、整数商;若 b 为 0,不要做除法。
思路
用 scanf("%d %d", &a, &b) 一次读入两数;和、差、积直接算术表达式输出。商写 a / b 前必须判断 b != 0,否则只打印无法整除的说明,避免对 0 做除法。 若 scanf、printf 格式串不熟,可先对照 C 语言输入输出:printf 与 scanf。
解题分析
四个结果彼此独立,读入成功后分别计算即可。差是 a-b 不是 b-a;积用 *;商是整数除法,余数直接丢掉。
b==0时不要执行a/b,先分支再除。scanf返回值等于读到的项数,本题应检查是否为 2。
完整程序
#include <stdio.h>
int main(void)
{
int a, b;
if (scanf("%d %d", &a, &b) != 2) {
return 1;
}
printf("和: %d\n", a + b);
printf("差: %d\n", a - b);
printf("积: %d\n", a * b);
if (b != 0) {
printf("商: %d\n", a / b);
} else {
printf("商: 除数为 0,无法整除\n");
}
return 0;
}运行示例
输入:
7 2输出:
和: 9
差: 5
积: 14
商: 3