C++基础语法-顺序结构的综合应用
侧边栏壁纸
  • 累计撰写 1,121 篇文章
  • 累计收到 3 条评论

C++基础语法-顺序结构的综合应用

私人云
2026-01-31 / 0 评论 / 0 阅读 / 正在检测是否收录...

1、圆(常量和变量)

题目描述:输入半径r,输出圆的直径、周长、面积,数与数之间以一个空格分开,每个数保留小数点后4位。

注意:

pi = 3.1415926

圆的直径 = 2 * r

圆的周长 = 2 * pi * r

圆的面积 = pi * r * r

输入示例:

1.0

输出示例:

2.0000 6.2832 3.1416

参考代码:

#include<iostream>using namespace std;//定义全局常量,这一个地方改了,后续所有用到的地方都跟着改动const double PI = 3.1415926;//定义常量,习惯上常量名全大写int main(){double r, d, c, s;//定义变量,变量名小写cin >> r;//输入圆的半径 d = 2 * r;//计算圆的直径 c = 2 * PI * r;//计算圆的周长 s = PI * r * r;//计算圆的面积//输出结果,保留小数点后4位 printf("%.4lf %.4lf %.4lf",d, c, s);return 0;}

拓展:

1)常量是指在程序中使用的一些具体的数、字符,程序运行过程中,其值不能被更改。

2)变量代表了一个存储单元,其中的值可以改变,因此称为变量。为了区分存储单元,需要给其取名(称为变量名——合法的标识符),存储单元中存储的值,称为变量的值

3)变量需要“先定义后使用”,遵循自定义标识符的命名规则,区分大小写。

2、反向输出三位数(算术运算符)

题目描述:将一个三位正整数反向输出,例如输入一个358,输出853。

输入示例:

100

输出示例:

001

参考代码:

#include<iostream>using namespace std;int main(){int num, a, b, c;//abc分别为num数字的百位、十位和个位 cin >> num;c = num % 10;//计算个位 a = num / 100;//计算百位 b = num / 10 % 10; //计算十位//将数字反向输出 cout << c << b << a;return 0;}

3、计算三角形的面积(数学函数)

题目描述:传说古代的叙拉古国王海伦二世发现的公式,利用三角形的三条边长来求取三角形面积。已知△ABC中的三边长分别为a,b,c,求△ABC的面积。

提示:海伦公式

开根号:cmath头文件里面的sqrt()函数

输入:三条边的边长

输出:面积(保留3位小数)

输入示例:

2.1 3.1 4.1

输出示例:

3.179

参考代码:

#include<iostream>#include<cmath> //引入数学相关头文件 using namespace std;int main(){float a,b,c;cin >> a >> b >> c;//输入三角形的三条边 float p = (a+b+c)/2;//计算p的值 //根据公式计算面积,sqrt是开平方函数 float s = sqrt(p*(p-a)*(p-b)*(p-c));//输出三角形的面积,保留小数点后3位 printf("%.3f", s);return 0;}

拓展:常用的数学函数,ceil()、floor()、pow()和sqrt()需要导入头文件cmath

4、鸡兔同笼

题目描述:数学中经典的“鸡兔同笼”问题,已知头共30个,脚共90只,问笼中鸡和兔各有多少只?

输入:头和脚的数量

输出:鸡和兔各自数量。一个空格隔开。

输入示例:

30 90

输出示例:

15 15

分析:假设笼中30个头全都是兔,那么都按每头4只脚计算,总脚数为(4*h),与实际脚数(f)之差为(4*h-f),如果这个差=0,则笼中全是兔(即鸡为0只);如果这个差值>0,说明多计算了脚数,凡是鸡都多计算了两只脚,用它除以2就能得到鸡的只数。

j = (4 * h - f) / 2

t = h - j

参考代码:

#include<iostream>using namespace std;int main(){int j,t,h,f;//鸡,兔,头,脚cin >> h >> f;//输入头和脚 j = (4 * h - f) / 2;//计算鸡的数量 t = h - j;//计算兔的数量 cout << j << " " << t;//输出结果 return 0;}

5、计算浮点数相除的余数(向下取整)

题目描述:计算两个双精度浮点数a和b的相除的余数,a和b都是双精度浮点数。这里余数(r)的定义是:a=k×b+r,其中k是整数,0≤r<b。

输入:输入仅一行,包括两个双精度浮点数a和b。

输出:输出也仅一行,a÷b的余数。

提示:需要用到cmath中的floor()

输入示例:

73.263 0.9973

输出示例:

0.4601

参考代码:

#include<iostream>#include<cmath>using namespace std;int main(){double a,b;//定义两个双精度变量 cin >> a >> b;//输入 int k = floor(a / b);//向下取整,获取整数部分 double r = a - k * b;//获取余数部分 cout << r;//输出结果 return 0;}

6、计算球的体积(常量)

题目描述:对于半径为 r 的球,其体积的计算 公式为V=4π

/3,这里取 π=3.14。现给定 r,即球半径,类型为double,求球的体积V,保留到小数点后2位。

输入:输入为一个不超过 100 的非负实数,即球半径,类型为double。

输出:输出一个实数,即球的体积,保留到小数点后 2 位。

输入示例:

4

输出示例:

267.95

参考代码:

#include<iostream>using namespace std;const double PI = 3.14;int main(){double r,v;cin >> r;//半径 //体积计算公式(乘4除3在最后,否则答案可能会不一样) v = PI * r * r * r * 4 / 3;printf("%.2lf", v);//输出体积 return 0;}
0

评论 (0)

取消