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

第一次作业题解

第一次作业题解

P5717 【深基3.习8】三角形分类

思路

在这里插入图片描述
考的是if()的使用,还要给三条边判断大小

在这里插入图片描述

判断优先级:

  • 三角形?
  • 直角、钝角、锐角
  • 等腰
  • 等边

在这里插入图片描述

判断按题给顺序来

代码

#include <stdio.h>
int main()
{int a = 0, b = 0, c = 0, x = 0, y = 0, z = 0;scanf("%d %d %d", &a, &b, &c);x = (a < b ? a : b) < c ? (a < b ? a : b) : c; z = (a > b ? a : b) > c ? (a > b ? a : b) : c;y = a + b + c - x - z;if (x + y <= z) {printf("Not triangle\n");}else {if (x * x + y * y == z * z) printf("Right triangle\n");else if (x * x + y * y > z * z) printf("Acute triangle\n");else if (x * x + y * y < z * z) printf("Obtuse triangle\n");if(x == y || y == z || x == z)  printf("Isosceles triangle\n");if(x == y && y == z)  printf("Equilateral triangle\n");}return 0;
}

P5714 【深基3.例7】肥胖问题

思路

在这里插入图片描述

数据类型用double

在这里插入图片描述

先计算,后判断,超重要多输出个BMI

在这里插入图片描述

看着麻烦,刚开始把我也唬住了

在这里插入图片描述

其实用%g就好了,涨知识了(参考群里《C Primer Plus》表4.3)

在这里插入图片描述

代码

#include <stdio.h>
int main()
{double m = 0, h = 0, bmi = 0;scanf("%lf %lf", &m, &h);bmi = m / (h * h);if (bmi < 18.5) printf("Underweight\n");else if (bmi >= 24) printf("%.6g\nOverweight\n", bmi);else printf("Normal\n");return 0;
}

P1422 小玉家的电费

思路

在这里插入图片描述

对用电量判断,最后保留一位小数

代码

#include <stdio.h>
int main()
{double a = 0, ans = 0;scanf("%lf", &a);if (a <= 150) ans = a * 0.4463;else if (a >= 151 && a <= 400) ans =  150 * 0.4463 + (a - 150) * 0.4663;else ans =  150 * 0.4463 + 250 * 0.4663 + (a - 400) * 0.5663;printf("%.1lf", ans);return 0;
}

P4414 [COCI2006-2007#2] ABC

思路

在这里插入图片描述

先比大小,得出ABC

在这里插入图片描述

ABC、ACB、BAC、BCA、CAB、CBA六种情况,不用字符串也可以,就麻烦一点

代码

#include <stdio.h>
int main()
{int a = 0, b = 0, c = 0, A = 0, B = 0, C = 0;char x = 0, y = 0, z = 0;scanf("%d %d %d", &a, &b, &c);scanf("\n%c%c%c", &x, &y, &z);A = (a < b ? a : b) < c ? (a < b ? a : b) : c; C = (a > b ? a : b) > c ? (a > b ? a : b) : c;B = a + b + c - A - C;if (x == 'A' && y == 'B' && z =='C') printf("%d %d %d", A, B, C);else if (x == 'A' && y == 'C' && z =='B') printf("%d %d %d", A, C, B);else if (x == 'B' && y == 'A' && z =='C') printf("%d %d %d", B, A, C);else if (x == 'B' && y == 'C' && z =='A') printf("%d %d %d", B, C, A);else if (x == 'C' && y == 'B' && z =='A') printf("%d %d %d", C, B, A);else if (x == 'C' && y == 'A' && z =='B') printf("%d %d %d", C, A, B);return 0;
}

P1909 [NOIP2016 普及组] 买铅笔

思路

在这里插入图片描述

  • 每种的情况要买几包
  • 每种情况的价钱
  • 找出最优解

代码

#include <stdio.h>
int main()
{int n = 0, n1 = 0, v1 = 0, n2 = 0, v2 = 0, n3 = 0, v3 = 0;int x = 0, y = 0, z = 0, ans = 0;scanf("%d %d %d %d %d %d %d", &n, &n1, &v1, &n2, &v2, &n3, &v3);if (n % n1 == 0) x = (n / n1) * v1;else x = (n / n1 + 1) * v1; if (n % n2 == 0) y = (n / n2) * v2;else y = (n / n2 + 1) * v2; if (n % n3 == 0) z = (n / n3) * v3;else z = (n / n3 + 1) * v3; ans = (x < y ? x : y) < z ? (x < y ? x : y) : z;printf("%d", ans);return 0;
}

写在后面

洛谷题确实有点难度,不过再难也是基础题。加油吧,少年!
也可以试试C语言网的题集,更基础一点
一个gif

晚安

http://www.lryc.cn/news/177527.html

相关文章:

  • 美篇作文网教学资源源码-自带作文数据
  • 电脑软件:Duplicate Cleaner Pro 5.16 重复文件清理软件(附下载)
  • 支持笔记本电脑直插直充,TOWE 65W智能快充PDU超级插座
  • 部署Kafka
  • Open3D 进阶(11)使用GMM-Tree算法对点云配准
  • 算法刷题注意事项
  • 搭建自己的pypi服务器
  • ndoe.js、npm相关笔记
  • 如何使用ArcGIS Pro制作标准地图样式国界
  • 基于数学模型水动力模拟、水质建模、复杂河网构建技术在环境影响评价、入河排污口论证及防洪评价中的应用
  • 每天学习3个小时能不能考上浙大MBA项目?
  • NVM的下载安装和使用
  • iOS 视频压缩 mov转mp4 码率
  • 基于Esp32-cam在无外部 PIR 传感器情况下实现运动检测(一)
  • 安卓recovery流程分析(编译、界面、图片)
  • 唤醒手腕 2023年 B 站课程 Golang 语言详细教程笔记(更新中)
  • Qt获取屏幕(桌面)的大小或分辨率
  • 第4讲:vue内置命令(文本插值,属性绑定,v-text,v-html)
  • vue实现自动生成路由,非手动创建,含避坑点
  • 数据挖掘note(赵老师语录)
  • 秋招在线人才测评考什么内容?
  • LeetCode算法二叉树—236. 二叉树的最近公共祖先
  • Qt事件处理
  • 宝塔nginx搭建Ftp文件服务器
  • SAP和APS系统订单BOM核对(SAP配置BOM攻略九)
  • ExcelServer EXCEL服务器使用- 用户、角色权限配置
  • JOSEF约瑟 静态中间继电器JZY-402 JZJ-404 AC220V 触点形式两开两闭
  • C#并发编程的实现方式
  • qemu源码下载和安装
  • 计算机,软件工程,网络工程,大数据专业毕业设计选题有哪些(附源码获取)