电子学会一级-3算术表达式与顺序执行
1.3 算术表达式与顺序执行
06 甲流疫情死亡率
题解
在C++中,两个整数相除的结果仍然是整数(除数不能为0),整数相除会舍弃小数部分
例如:
int val=21/6=3
整数相除如果需要得到小数的情况,需要保证除数和被除数必须有一个是浮点数
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b;
float c;
cin>>a>>b;
c=b*1.0/a*100;
printf("%.3f%%",c);
}
07 计算多项式的值
题解
浮点数定义
scanf 输入浮点数
- 数据类型字符:用于表示输入数据的类型,表 1 列出了其格式字符和意义。
格式字符 | 输出示例 | 意义 |
---|---|---|
d | scanf("%d",&Int); | 输入十进制整数 |
u | scanf("%u",&Int); | 输入无符号十进制整数 |
o | scanf("%o",&Int0); | 输入八进制整数 |
x | scanf("%x",&Int0x); | 输入十六进制整数 |
f | scanf("%f",&Float); | 输入小数形式的实数 |
e | scanf("%e",&Float); | 输入指数形式的实数 |
c | scanf("%c",&Char); | 输入单个字符 |
s | scanf("%s",String); | 输入字符串 |
-
数据宽度:用十进制整数指定输入数据的宽度(即字符数),若输入字符数超出指定值,超出部分被截去。例如:
scanf("%5f",&Pi);
输入3.1415925,scanf( ) 只是把 3.141 这 5 个字符存储在了变量中,其余部分被截去。即用printf("%f",Pi);
显示变量 Pi 的值为3.141000。 -
数据长度:长度格式符有 l 和 h 两种。l 表示输入长整型数(如 %ld )或双精度浮点数(如 %lf )。h 表示输入短整型数或单精度浮点数
#include<bits/stdc++.h>
using namespace std;
int main(){
double a,b,c,d,x,ans;
scanf("%lf %lf %lf %lf %lf",&x,&a,&b,&c,&d);
ans = a*x*x*x+b*x*x+c*x+d;
printf("%.7f",ans);
}
09 与圆相关的计算
题解
输入 scanf
输出 printf
#include<bits/stdc++.h>
using namespace std;
int main(){
double r,d,p,s;
scanf("%lf",&r);
d=2*r;
p=2*3.14159*r;
s=3.14159*r*r;
printf("%.4lf %.4lf %.4lf",d,p,s);
}
15 苹果和虫子
题解
由题意知:
如果刚好把某个苹果吃完,则剩余苹果数=总苹果数-吃的小时数/每小时吃的个数
n-y/x
如果某个苹果吃不完,则剩余苹果数=总苹果数-吃的小时数/每小时吃的个数-1
n-y/x-1
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,x,y;
cin>>n>>x>>y;
if(y%x==0){
cout<<n-y/x;
}else{
cout<<n-y/x-1;
}
}
y/x 如果不能整数 舍去小数 也可以算出小数后向上取整
例如:
9/4=2
9*1.0/4=2.25
ceil(9*1.0/4)=3
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,x,y;
cin>>n>>x>>y;
if(y%x==0){
cout<<n-y/x;
}else{
cout<<n-ceil(y*1.0/x);
}
}
floor ceil round
floor 向下取整
ceil 向上取整
round 四舍五入
例如:
cout<<ceil(2.5)<<endl;
cout<<floor(2.5)<<endl;
cout<<round(2.4)<<endl;
cout<<round(2.5)<<endl;
3
2
2
3
负数:
cout<<ceil(-2.5)<<endl;
cout<<floor(-2.5)<<endl;
cout<<round(-2.4)<<endl;
cout<<round(-2.5)<<endl;
-2
-3
-2
-3
作者:newcode 更多资源请关注纽扣编程微信公众号
从事机器人比赛、机器人等级考试、少儿scratch编程、信息学奥赛等研究学习