当前位置: 首页 > news >正文

#C语言——刷题攻略:牛客编程入门训练(四):运算(二)

🌟菜鸟主页:@晨非辰的主页

👀学习专栏:《C语言刷题合集》

💪学习阶段:C语言方向初学者

名言欣赏:"代码行数决定你的下限,算法思维决定你的上限。"


目录

1. 统计成绩

2. 计算三角形的周长和面积(海伦公式、sqrt函数)

3. KiKi和酸奶

4. 温度转换

5. 牛牛的圆

6. 牛牛的并联电路

7. 牛牛的水杯 

8. 牛牛的等差数列 


前言:在学习编程语言的同时,千万别忘了刷刷题来巩固一下学到的知识,对于牛客网_编程入门系列,小子会持续更新分享刷题过程,其中包括一些基础板块的题目,本次将呈现的运算章节,共8道题。都为基础简单题,大家只当开开胃就行。

~~注意部分标题括号内代表对题目涉及到的知识进行说明!


1. 统计成绩

题目链接:牛客网_BC33 统计成绩_入门

int main()
{int num = 0;//定义科目数scanf("%d", &num);float score[100] = { 0 };int i = 0;for (i = 0; i < num; i++)scanf("%f", &score[i]);//假设第一门最大float max = score[0];//循环判断int j = 0;for (j = 1; j < num; j++){if (score[j] > max)max = score[j];//后面的大就替换}//假设第一门最小float min = score[0];int k = 0;for (k = 1; k < num; k++){if (score[k] < min)min = score[k];//后面的小就替换}//求和float sum = 0;float avr = 0;i = 0;for (i = 0; i < num; i++){sum += score[i];}avr = sum / num;printf("%.2f %.2f %.2f", max, min, avr);return 0;
}

解题思路——

--本题的关键在于如何判断谁大谁小,对于输入多组数据,肯定要将数据存在数组中,比较大小据可以用数组下标来进行。


2. 计算三角形的周长和面积(海伦公式、sqrt函数)

题目链接:牛客网_BC34 计算三角形的周长和面积_简单

#include <math.h>//sqrt函数(开平方)
int main()
{//接收三条边int a = 0;int b = 0;int c = 0;//面积、周长scanf("%d%d%d", &a, &b, &c);float cir = 0;float area = 0;cir = a + b + c;//海伦公式float s = 0.5 * (a + b + c);area = sqrt((s * (s - a) * (s - b) * (s - c)));printf("circumference=%.2f area=%.2f\n", cir, area);return 0;
}

解题思路——

--本题关键是在于使用什么公式进行计算,因为键盘的输入的三条边数值可能是特殊三角形或者一般三角形,所以这里考虑使用海伦公式:面积 = √ s(s−a)(s−b)(s−c)​, s=2a+b+c​,涉及到开根号sqrt函数,要包含头文件 <math.h> ,其余设计较为简单,小子不再赘述。


3. KiKi和酸奶

题目链接:牛客网_BC35 KiKi和酸奶_简单

int main()
{int n = 0;//原来有多少盒int h = 0;//几分钟一盒int m = 0;//几分钟后int a = 0;//剩余while (scanf("%d%d%d", &n, &h, &m) != EOF){int b = m / h;//求喝了几盒,if (m % h != 0)//如果不是整数,将正在喝的部分算入{b += 1;}a = n - b;printf("%d", a);}return 0;
}

解题思路——

--本题的关键在于如果只单纯的整型算 m/h ,这只能计算出喝完几盒,有可能算出小数表示正在喝,所以要进行判断是否能整除。


4. 温度转换

题目链接:牛客网_BC36 温度转换_入门

int main()
{float f = 0;scanf("%f", &f);float c = 5.0/9.0 * (f-32);printf("%.3f\n", c);return 0;
}

解题思路——

--本题要注意的点是:进行除法时,要注意至少保证一个操作数为浮点型,不然会导致结果为0!


5. 牛牛的圆

题目链接:牛客网_BC37 牛牛的圆_入门

int main()
{float r = 0;scanf("%f", &r);printf("%.2f\n", 3.14 * r * r);return 0;
}

解题思路——

--本题要注意小数位数的限制。


6. 牛牛的并联电路

题目链接:牛客网_BC38 牛牛的并联电路_入门

int main()
{float r1 = 0;float r2 = 0;scanf("%f%f", &r1, &r2);printf("%.1f", 1 / ((1 / r1) + (1 / r2)));return 0;
}

解题思路——

--本题只要写出并联电阻公式即可,嘴遁~~


7. 牛牛的水杯 

题目链接:牛客网_BC39 牛牛的水杯_中等

int main()
{int h = 0;int r = 0;scanf("%d%d", &h, &r);int num = 10000 / (3.14 * h * r * r) + 1;printf("%d\n", num);return 0;
}

解题思路——

--本题和第3题类似,要将未喝完的部分算上。


8. 牛牛的等差数列 

题目链接:牛客网_BC40 牛牛的等差数列_入门

int main()
{int a = 0;int b = 0;scanf("%d%d", &a, &b);int dif = b - a;printf("%d", b + dif);return 0;
}

 解题思路——

--本题小子依旧嘴遁~~


相关刷题系列回顾 :

 #C语言——刷题攻略:牛客编程入门训练(三):输出格式化、基本运算符

#C语言——刷题攻略:牛客编程入门训练(四):运算(一)

结语:本篇文章就到此结束了,本文主要是练习有关运算的题目,后续的题目练习难度会慢慢上来,但总体来说不会太难,喜欢的朋友们,一起来学习吧!欢迎三连~ 

http://www.dtcms.com/a/315047.html

相关文章:

  • 【基于超表面实现电磁感应透明(EIT)的复现与讲解】
  • Spring P1 | 创建你的第一个Spring MVC项目(IDEA图文详解版,社区版专业版都有~)
  • [Shell编程] 零基础入门 Shell 编程:从概念到第一个脚本
  • 基于TurboID的邻近标记质谱(PL-MS)实验指南:从质粒构建到质谱鉴定
  • 【OS】操作系统概述
  • 互联网医院整体项目套表整理过程文档全流程分析
  • Stanford CS336 assignment1 | Byte-Pair Encoding (BPE) Tokenizer
  • 飞算JavaAI:颠覆传统开发的智能利器
  • Effective C++ 条款22: 将成员变量声明为private
  • Pixel 4D 3.4.4.0 | 支持丰富的壁纸资源,高清画质,高度的个性化设置能力,智能推荐功能
  • Ubuntu 下 MySQL 离线部署教学(含手动步骤与一键脚本)
  • 力扣面试150题--加一
  • ZCC1004E-120V 3A 零功耗使能异步降压电源芯片
  • 人工智能之数学基础:条件概率及其应用
  • JS中的Set和WeakSet联系与区别
  • 数据结构---配置网络步骤、单向链表额外应用
  • 【Linux】Linux 操作系统 - 33 , 线程(二) 线程互斥和同步 , 带你对线程使用深刻理解 !
  • 《Python 实用项目与工具制作指南》· 2.2 变量
  • JVM调优工具详解
  • 把“距离过近”的节点(或端点)合并成一个,避免重复。机器学习 python
  • web:ts元组
  • 【RH124知识点问答题】第8章 监控和管理 Linux 进程
  • Bean的生命周期和循环依赖问题的解决
  • 防火墙认证用户部署
  • 开发规范(一)移动端
  • 多线程(一)
  • 【C#】操作Execl和Word文件-1
  • 子词分词器(Byte Pair Encoding + WordPiece)
  • 如何给Word和WPS文档添加密码或取消密码
  • 【Java】使用FreeMarker来实现Word自定义导出