【B2007】A + B 问题
思路
这题和B2001只有一些不同
只需要把数据类型改为int就行
代码
也可以用【B2001】的代码,具体看这
【B2008】计算 (a+b)×c 的值
思路
这题数据范围较小,可以用short储存
表达式的值最大约为,超过short的取值范围,用int储存
输入,然后带入表达式中,将值赋给
代码
#include <stdio.h>
using namespace std;
short a, b, c;
int main () {
scanf("%hd%hd%hd", &a, &b, &c);
int x = (a + b) * c;
printf("%d", x);
return 0; //好习惯*1
}
【B2009】计算 (a+b)/c 的值
思路
这题思路如上题
用int储存,用short会出现问题,表达式的值可以用short,就是"/"
代码
#include <stdio.h>
using namespace std;
int a, b, c;
int main () {
scanf("%d%d%d", &a, &b, &c);
short x = (a + b) / c;
printf("%hd", x);
return 0; //好习惯*2
}
【B2010】带余除法
思路
求余数可以用c++自带的运算符%(mod,取余)
题目取值范围较小,可以用short
代码
#include <stdio.h>
using namespace std;
short a, b;
int main () {
scanf("%hd%hd", &a, &b);
printf("%hd %hd", a / b, a % b);
return 0; //好习惯*3
}
【B2011】计算分数的浮点数值
思路
可以用int储存,节省内存
在计算的时候强制转换为double类型,然后将值赋给double类型的就行
也可以把都设为double类型
代码
#include <stdio.h>
using namespace std;
int a, b;
double x;
int main () {
scanf("%d%d", &a, &b);
x = (double)a / (double)b;
printf("%.9lf", x);
return 0; //好习惯*4
}
【B2012】甲流疫情死亡率
思路
设死亡率为%,确诊数为,死亡数为,
我们有
输出%用printf("%%");
代码
#include <stdio.h>
using namespace std;
float a, b, x;
int main() {
scanf("%f%f", &a, &b);
x = b * 100.0 / a;
printf("%.3lf%%", x);
return 0; //好习惯*5
}