【C刷题训练营】第三讲(c语言入门训练)
前言:
大家好,我决定日后逐渐更新c刷题训练营的内容,或许能帮到入门c语言的初学者,如果文章有错误,非常欢迎你的指正!
💥🎈个人主页:Dream_Chaser~ 🎈💥
✨✨刷题专栏:http://t.csdn.cn/baIPx
⛳⛳本篇内容:c语言刷题训练营 第三讲(牛客网)
目录
BC25-计算体重指数
题目描述
BC26- 计算三角形的周长和面积
题目描述
BC27-计算球体的体积
题目描述
BC10-成绩的输入输出
题目描述
BC38-变种水仙花数
题目描述:
BC20-kiki算数
题目描述
BC21-浮点数的个位数字
题目描述
BC22-你能活多少秒
题目描述:
BC25-计算体重指数
来源:计算体重指数_牛客题霸_牛客网 (nowcoder.com)
题目描述
问题:计算BMI 指数(身体质量指数)。 BMI 指数 (即身体质量指数,简称体质指数又称 体重 ,英文为Body Mass Index,简称 BMI ),是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。主要用于 统计 用途,当我们需要比较及分析一个人的体重对于不同高度的人所带来的健康影响时, BMI 值 是一个中立而可靠的 指标 。
一行,两个整数,分别表示体重(公斤),身高(厘米),中间用一个空格分隔
一行, BMI 指数(保留两位小数)。
示例1
输入
70 170
24.22
代码实现:
#include <stdio.h>
int main()
{//输入int weight = 0;int high = 0;double bmi = 0.0;scanf("%d %d", &weight, &high);//计算机BMIbmi = weight / ((high / 100.0) * (high / 100.0));//身高米数的平方//输出printf("%.2lf\n", bmi);return 0;
}
解析:
要得到浮点数,要进行浮点数除法,这里就得保证 / 两端的操作数至少有一个数是浮点数.拿出计算器,可以看出 带一位小数*带一位小数的结果是带两位的所以最后面printf的时候 .2lf保留两位小数是符合前面的逻辑的
前提知识:
%.nf
:其中n
是一个整数,用于指定要显示的小数位数。例如,printf("%.2f", 3.1415926);
将输出3.14
,只保留两位小数。%e
或%E
:用于以科学计数法表示浮点数。默认情况下,它会使用6位小数和指数形式。例如,printf("%e", 12345.6789);
将输出1.234568e+04
。%.ne
或%.nE
:其中n
是一个整数,用于指定要显示的小数位数。例如,printf("%.2e", 12345.6789);
将输出1.23e+04
,只保留两位小数,并以指数形式表示。
执行:
BC26- 计算三角形的周长和面积
来源:计算三角形的周长和面积_牛客题霸_牛客网 (nowcoder.com)
题目描述
一行,三角形 3 条边(能构成三角形),中间用一个空格隔开。
一行,三角形周长和面积(保留两位小数),中间用一个空格隔开,输出具体格式详见输出样例。
3 3 3
circumference=9.00 area=3.90
int main() {double a=0,b=0,c=0;double circumference=0.0;//周长double area=0.0;//面积scanf("%lf %lf %lf",&a,&b,&c);circumference=a+b+c;//海伦公式double p=circumference/2; area=sqrt(p*(p-a)*(p-b)*(p-c));printf("circumference=%.2lf area=%.2lf",circumference, area);return 0;}
解析:
注意,输入输出,照着公式写代码就行。这个题目,如果使用 float 来求解,答案的精度是不够的,所以试错后,使用 double 类型合适海伦公式:计算平方根的函数: 注意计算次方不能写成^
执行:
BC27-计算球体的体积
来源:计算球体的体积_牛客题霸_牛客网 (nowcoder.com)
题目描述
一行,用浮点数表示的球体的半径。
一行,球体的体积,小数点后保留 3 位。
3.0
113.097
#include <stdio.h>
#include<math.h>
int main() {double r=0.0; //半径double pi=3.1415926;//圆周率scanf("%lf",&r);//输入半径double V=(4.0/3)*pi*pow(r,3);//4后面小数点0 可以算出一位小数,pow的意思是r的3次方//4/3执行整数除法printf("%.3lf",V);
}
解析: 🧨✨
注意,输入输出,照着公式写代码就行。这个题目,如果使用 float 来求解,答案的精度是不够的,所以试错后,使用 double 类型合适。这里要知道 float 和 double 为啥精度有区别,简单介绍一下。
float
是单精度浮点数类型,占用4个字节(32位),用于表示带有小数部分的实数。它可以表示大约6到7个有效数字,并具有约7位的十进制精度。double
是双精度浮点数类型,占用8个字节(64位),用于表示更大范围和更高精度的实数。它可以表示大约15到16个有效数字,并具有约15位的十进制精度。因此,
double
的精度比float
更高,可以表示更小的值和更大的值,同时具有更多的有效数字。但是,由于double
使用更多的存储空间,需要更多的计算资源和内存。在选择使用
float
还是double
时,需要根据具体的应用需求来决定。如果对精度要求不高,而且对内存和计算资源有限,可以使用float
。如果需要更高的精度或者处理范围更广的数据,可以选择double
执行:
注意:
BC10-成绩的输入输出
来源:成绩输入输出_牛客题霸_牛客网 (nowcoder.com)
题目描述
输入 3 科成绩,然后把三科成绩输出,成绩为整数形式。
一行,3科成绩,用空格分隔,范围(0~100)。
输出描述:
一行,把 3 科成绩显示出来,输出格式详见输出样例。
60 80 90
score1=60,score2=80,score3=90
#include <stdio.h>int main() {int a=0,b=0,c=0;//输入成绩scanf("%d %d %d",&a,&b,&c);//打印成绩printf("score1=%d,score2=%d,score3=%d",a,b,c);return 0;
}
写法二解析:
int score[3] = {0};
这行声明了一个名为score
的整数数组,大小为3个元素,并将所有元素初始化为0。这个数组将用于存储用户输入的三个分数。变量
i
被声明并初始化为0,它将用作循环计数器。
for
循环用于循环三次,每次循环读取一个分数。在每次迭代中,scanf
函数用于从用户输入中读取一个整数值,并将其存储在score[i]
中。&
运算符用于获取score[i]
的内存地址,以供scanf
存储输入值。读取完三个分数后,
printf
函数用于在控制台上显示这些分数。格式字符串"score1=%d,score2=%d,score3=%d"
指定了打印分数的格式,对应的值score[0]
、score[1]
和score[2]
被作为参数传递给printf
。最后,
return 0;
语句用于退出main
函数并终止程序的执行。
#include <stdio.h>int main(){int score[3]={0};int i=0;for(i=0;i<3;i++){scanf("%d",&score[i]);}printf("score1=%d,score2=%d,score3=%d",score[0],score[1],score[2]);return 0;
}
BC38-变种水仙花数
来源:变种水仙花_牛客题霸_牛客网 (nowcoder.com)
题目描述:
变种水仙花数 - Lily Number:
把任意的数字,从中间拆分成两个数字,比如1461 可以拆分成(1和461),(14和61),(146和1),如果所有拆分后的乘积之和等于自身,则是一个Lily Number
655 = 6 * 55 + 65 * 51461 = 1 * 461 + 14 * 61 + 146 * 1
求出 5位数中的所有 Lily Number。
输入描述:
无
输出描述:
一行, 5 位数中的所有 Lily Number ,每两个数之间间隔一个空格
#include <stdio.h>int main() {int i=0;for(i=10000;i<99999;i++){ //判断i是否为Lily Numberint sum=0;int j=0;for(j=10;j<=10000;j=j*10){sum+=(i/j)*(i%j);}if(i==sum){printf("%d ",i);}}return 0;
}
解析:先看这组数据
再看这组数据:
这就容易理解很多了。
代码执行:
BC20-kiki算数
来源:kiki算数_牛客题霸_牛客网 (nowcoder.com)
题目描述
问题: KiKi 今年 5 岁了,已经能够认识 100 以内的非负整数,并且能够进行 100 以内的非负整数的加法计算。不过,BoBo 老师发现 KiKi 在进行大于等于 100 的正整数的计算时,规则如下:1. 只保留该数的最后两位,例如:对 KiKi 来说 1234 等价于 34 ;2. 如果计算结果大于等于 100 , 那么 KIKI 也仅保留计算结果的最后两位,如果此两位中十位为 0 ,则只保留个位。例如: 45 + 80 = 25要求给定非负整数 a 和 b ,模拟 KiKi 的运算规则计算出 a + b 的值。
一行,输入两个非负整数 a 和 b ,用一个空格分隔。( 0 <= a,b<= 231-1 )。
针对每组输入,输出按照 KiKi 的运算规则计算出 a+b 的值。
45 80
25
方法一:
两数分别取模然后再相加,防止其加起来是三位数,之和再取模100
int main() {//定义int a=0,b=0;int sum=0;//输入scanf("%d %d",&a,&b);//和sum=(a%100+b%100)%100;printf("%d",sum); }
方法二:
两数先加起来,和之后%100,这个很好理解,无论加到多大,只要是大于等于2位数,%100也可以拿到那两位。
int main() {//定义int a=0,b=0;int sum=0;//输入scanf("%d %d",&a,&b);//和sum=(a+b)%100;printf("%d",sum); }
方法三:
分类讨论:
- <100直接输出,a与b之和赋值给sum,直接打印sum
- >=100,a与b之和直接%100,赋值给sum,之后打印sum
int main() {int a=0,b=0;int sum=0;while(scanf("%d %d",&a,&b)!=EOF){if(a+b<100){sum=a+b;printf("%d",sum);}else if(a+b>=100) {sum=(a+b)%100;printf("%d",sum);} }return 0; }
方法一二三均可通过:
BC21-浮点数的个位数字
来源:浮点数的个位数字_牛客题霸_牛客网 (nowcoder.com)
题目描述
给定一个浮点数,要求得到该浮点数的个位数。
数据范围: 0<n≤200 0< n ≤200
输入描述:
一行,包括一个浮点数
输出描述:
一行,包含一个整数,为输入浮点数对应的个位数。
示例1
输入:13.141
输出:3
写法一:
定义一个浮点数,输入浮点数,强制转换成整型,并用整型变量n接收,打印这个n%10的值。
int main() {double d= 0;scanf("%lf", &d);int n = (int)d;printf("%d",n%10);return 0; }
写法二:
定义一个整型,输入浮点数,以整型的形式打印。
int main() {int n = 0;scanf("%d", &n);printf("%d", n % 10); }
写法一二均可通过
BC22-你能活多少秒
来源:你能活多少秒_牛客题霸_牛客网 (nowcoder.com)
题目描述:
问题:一年约有 3.156×107 s,要求输入您的年龄,显示该年龄合多少秒。
数据范围: 0< age ≤200 0<age≤200
输入描述:
一行,包括一个整数age。
输出描述:
一行,包含一个整数,输出年龄对应的秒数。
示例1
输入:20
输出:631200000
#include <stdio.h>
int main() {//定义int age=0;//输入年龄scanf("%d",&age);long long second=age*3.156e7; //输出printf("%lld\n",second);return 0;
}
执行:
c训练营第三讲到此结束,感谢来访!
相关文章:
【C刷题训练营】第三讲(c语言入门训练)
前言: 大家好,我决定日后逐渐更新c刷题训练营的内容,或许能帮到入门c语言的初学者,如果文章有错误,非常欢迎你的指正! 💥🎈个人主页:Dream_Chaser~ 🎈&…...
简述视频智能分析EasyCVR视频汇聚平台如何通过“AI+视频融合”技术规避八大特殊作业风险
视频智能分析EasyCVR视频汇聚平台可以根据不同的场景需求,让平台在内网、专网、VPN、广域网、互联网等各种环境下进行音视频的采集、接入与多端分发。在视频能力上,视频云存储平台EasyCVR可实现视频实时直播、云端录像、视频云存储、视频存储磁盘阵列、录…...
2023年9月NPDP产品经理国际认证报名,找弘博创新
产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是…...
【MySQL】MySQL的安装,登录,配置和相关命令
文章目录 前言一. 卸载不需要的环境二. 获取MySQL的yum源三. 安装MySQL和启动四. 尝试登录MySQL方法1:获取临时root密码方法2:没有密码方法3:配置文件 五. 简单配置结束语 前言 本篇文章是基于云服务器;Linux:Centos7…...
攻防世界-WEB-php_rce
打开靶机链接 搜村ThinkPhP V5存在远程命令执行的漏洞 构建payload /index.php?sindex/think\app/invokefunction&functioncall_user_func_array&vars[0]system&vars[1][]ls 查询当前目录文件,没有发现flag。调整payload 得到flag文件,修…...
WRFDA资料同化实践技术
数值预报已经成为提升预报质量的重要手段,而模式初值质量是决定数值预报质量的重要环节。资料同化作为提高模式初值质量的有效方法,成为当前气象、海洋和大气环境和水文等诸多领域科研、业务预报中的关键科学方法。资料同化新方法的快速发展,…...
C++11新特性② | 左值、左值引用、右值与右值引用
目录 1、引言 2、值类别及相关概念 3、左值、右值 4、左值引用、右值引用 5、移动语义 5.1、为什么需要移动语义 5.2、移动语义定义 5.3、转移构造函数 5.4、转移赋值函数 6、标准库函数 std::move 7、完美转发 std::forward VC常用功能开发汇总(专栏文章…...
Python Opencv实践 - Harris角点检测
参考资料:https://blog.csdn.net/wsp_1138886114/article/details/90415190 import cv2 as cv import numpy as np import matplotlib.pyplot as pltimg cv.imread("../SampleImages/chinease_tower.jpg", cv.IMREAD_COLOR) plt.imshow(img[:,:,::-1])#…...
el-upload上传图片到七牛云或阿里云
(1)绑定上传地址,上传数据对象 <el-upload class"upload-demo" :action"uploadUrl" :data"uploadData":on-success"handleSuccess" :file-list"[]" :show-file-list"false"…...
Web jQuery—选择器、样式和效果
jQuery 选择器、样式和效果 代码下载 jQuery 介绍 JavaScript库:即 library,是一个封装好的特定的集合(方法和函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数在里面&a…...
Java和Kotlin的Field在继承中的不同表现
Kotlin是一个宣称与Java兼容性较好的语言,但在接触后发现一些技术还是有“概念上”的冲突,本文就记录下两者对象的Field(中文的说法有字段、域、属性、成员变量,下文若出现这些表达,指的都是这个东西)在继承…...
MySQL 子查询
文章目录 1.简介2.优势3.分类3.1 标量子查询3.2 行子查询3.3 列子查询IN 操作符ALL 操作符ANY/SOME 操作符 3.4 表子查询 4.关联子查询5.EXISTS 和 NOT EXISTS6.横向派生表7.附录参考文献 1.简介 子查询是另一个语句中的 SELECT 语句。 子查询也称为内查询(Inner …...
Ubuntu离线或在线安装CMake
首先下载适用于Ubuntu的CMake安装包,可以去官网下载,也可以通过下面的命令下载(需要联网): wget https://cmake.org/files/v3.22/cmake-3.22.1.tar.gz将下载的安装包进行解压: tar -xvzf cmake-3.22.1.ta…...
后端面试话术集锦第 十七 篇:MySQL面试话术
这是后端面试集锦第十七篇博文——MySQL面试话术❗❗❗ 1. 解释一下单列索引和联合索引 单列索引是指在表的某一列上创建索引。 联合索引是在多个列上联合创建索引。 单列索引可以出现在where条件的任何位置,而联合索引需要按照一定的顺序来写。在多条件查询的时候,联合索引…...
< 文件资源管理器 > 和 < 此电脑 > 有什么区别?
“文件资源管理器”和 “此电脑” 的区别 1. 文件和文件夹管理:2. 访问存储设备:3. 搜索功能:4. 视图和排序选项:5. 快速访问: 主要的区别1. 界面和用途:2. 显示内容:3. 导航: 在Win…...
线上问诊:可视化展示
系列文章目录 线上问诊:业务数据采集 线上问诊:数仓数据同步 线上问诊:数仓开发(一) 线上问诊:数仓开发(二) 线上问诊:数仓开发(三) 线上问诊:可视化展示 文章目录 系列文章目录前言一、全流程调度1.生产新…...
如何选择合适的HTTP代理服务器
HTTP代理服务器是一种常见的网络代理方式,它可以帮助用户隐藏自己的IP地址,保护个人隐私和安全。然而,选择合适的HTTP代理服务器并不容易,需要考虑多个因素。本文将介绍如何选择合适的HTTP代理服务器。 了解代理服务器的类型 HTT…...
Car Window Control Reset
大众汽车窗口自动升降失效,重置: 扣住5秒,重启汽车,试一下车钥匙,和再重试这个按钮,扣一下试一试...
序列号序列号
主板序列号 string str;str bios.GetSystemSerialNumber(); //wentai//str1 bios.GetSystemECSerialNumber();//CLogHelp::ITCLog(str1);LocalSN str.c_str();str bios.GetSystemVersion();LocalMode str.c_str();string str1;str1 bios.GetSystemSerialNumber();CLogHe…...
SSM(Spring-Mybatis-SpringMVC)
文章目录 1. 介绍1.1 概念介绍 2 SSM整合框架3. SSM功能模块开发4 测试4.1 业务层接口测试4.2 表现层接口测试 5.优化 -表现层数据封装6.异常处理 1. 介绍 1.1 概念介绍 SSM项目是指基于SpringSpringMVCMyBatis框架搭建的Java Web项目。 Spring是负责管理和组织项目的IOC容器和…...
MySQL——数据的删除以及MySQL中的约束
删除数据 删除表中的一行数据,也必须加上 WHERE条件,否则整列的数据都会被删除。删除语句: delete from 表名 where 条件; 他会将所有的符合条件的数据删除,如果不写条件,则表中的数据全部删除: 如果不添…...
静态路由 网络实验
静态路由 网络实验 拓扑图初步配置R1 ip 配置R2 ip 配置R3 ip 配置查看当前的路由表信息查看路由表信息配置静态路由测试 拓扑图 需求:实现 ip 192.168.1.1 到 192.168.2.1 的通信。 初步配置 R1 ip 配置 system-view sysname R1 undo info-center enable # 忽略…...
数据结构-01 数据结构基本概念,算法时间复杂度,空间复杂度
0 数据结构概述 四门课的关系 1 绪论 数据对象、数据元素、数据项关系 1.1 数据结构的基本概念 1.2 算法和算法评价 小练习 空间复杂度中的递归调用 n只是传入 n也是数组,计算存储数组flag的空间大小...
【Redis】Bitmap 使用及应用场景
前言:bitmap 占用空间小,查询效率高,在一些场景中使用 bitmap 是一个很好的选择。 一、bitmap 相关命令 SETBIT - 设置指定位置的比特值,可以设为 1 或 0 例如 SETBIT key 10 1,将在 key 对应的 bitmap 中第10位设置为…...
C#,数值计算——用于积分函数与方法的Stiel类的计算方法与源程序
1 文本格式 using System; namespace Legalsoft.Truffer { public class Stiel { public class pp : UniVarRealValueFun, RealValueFun { public Stiel st { get; set; } null; public pp() { } public doubl…...
报错:为什么数组明明有内容但打印的length是0
文章目录 一、问题二、分析三、解决1.将异步改为同步2.设置延迟 一、问题 在日常开发中,for 循环遍历调用接口,并将接口返回的值进行拼接,即push到一个新的数组中,但是在for循环内部是可以拿到这个新的数组,而for循环…...
go gin gorm连接postgres postgis输出geojson
go gin gorm连接postgres postgis输出geojson 1. 技术环境 go-gin-gorm postgres-postgis go vscode环境安装-智能提示配置 2. 简单实现代码 思路就是:采用原生sql实现查询、更新等,采用gorm的raw来执行sql语句 package mainimport ("fmt"&q…...
4. Java 的线程安全机制之`volatile`
前言:在多线程编程过程中,线程安全是一个非常重要的概念,它有助于保证多线程程序的正确性和健壮性。其中,volatile是实现线程安全的一种方式,保证内存的立马可见,下面将会详细介绍。 文章目录 是什么为什么…...
Vue + Element UI前端篇(二):Vue + Element 案例
Vue Element UI 实现权限管理系统 前端篇(二):Vue Element 案例 导入项目 打开 Visual Studio Code,File --> add Folder to Workspace,导入我们的项目。 安装 Element 安装依赖 Element 是国内饿了么公司提…...
Qt5中connect信号槽无效问题 C++
在写QT的组件信号槽时遇到一个问题,我的QspinBox组件用connect连接函数总是无效,解决办法是: 在QT5中推荐使用如下形式连接槽函数: QObject::connect(ui->spinBox,QOverload<int>::of(&QSpinBox::valueChanged),th…...
做网站所用的工具/安庆seo
2019独角兽企业重金招聘Python工程师标准>>> 下载Stimulsoft Reports.Ultimate最新版本 Stimulsoft专题页:全面汇集Stimulsoft视频教程、版本更新、使用教程、应用案例和相关开发资源等。 执行以下步骤以创建子报表: 运行设计器连接数据&…...
广东省建设安全管理协会网站/seo基础课程
1 弹出页面:GreyBox 官网: http://orangoo.com/labs/GreyBox/2 文件上传控件: Uploadify http://www.uploadify.com/转载于:https://www.cnblogs.com/mikechang/archive/2011/04/04/2005027.html...
创个网站怎么弄/小程序开发需要多少钱
一套Power AIX上的9.2.0.1系统在数据库打开过程中遇到ORA-00600:[2667]内部错误,详细日志如下: Wed Mar 9 19:03:38 2011 RESETLOGS is being done without consistancy checks. This may result in a corrupted database. The database should be recreated. RESET…...
wordpress 统计浏览量/西安seo和网络推广
曾经也在找看看有没有快捷的方法全选,但是网上很多都是重复,并且错误的,比如: 1,$y,这是什么?要写也要写成:1,$y,但是我告诉你,写成:1,$y是全部复制,不是全选 dG,这个就更加误导人了…...
现在市面网站做推广好/国际新闻最新消息2022
安装的过程中遇到了很多问题 查看了一些博客,在一些热心的朋友的帮助下终于安装好了,写个博客做下笔记 第一步:更新显卡驱动 去官方网站下载然后安装 第二步:安装和显卡驱动对应的cuda和cudnn 第三步:安装anacond…...
怎样做模板网站/本周新闻热点
大数据、算法项目在任何大厂无论是面试还是工作运用都是非常广泛的,我们精选了50个百度、腾讯、阿里等大厂的大数据、算法落地经验甩给大家,千万不要做收藏党哦,空闲时间记得随时看看!如果你没有大厂项目经验,对大厂算…...