### C语言基础实例知识点解析 #### 一、计算一元二次方程的根 ##### 核心知识点: 1. **一元二次方程**: 形式为 \(ax^2 + bx + c = 0\) 的方程,其中 \(a \neq 0\)。 2. **判别式**: 用于确定一元二次方程根的性质,计算公式为 \(\Delta = b^2 - 4ac\)。 3. **根的性质**: - 当 \(\Delta > 0\) 时,方程有两个不相等的实数根。 - 当 \(\Delta = 0\) 时,方程有两个相等的实数根(即一个重根)。 - 当 \(\Delta < 0\) 时,方程有一对共轭复数根。 ##### 实现代码解析: ```c #include<stdio.h> #include<math.h> void main() { float a, b, c, disc, x1, x2, realpart, imagpart; scanf("%f%f%f", &a, &b, &c); if (fabs(a) <= 1e-6) { printf("不是二次方程\n"); } else { disc = b * b - 4 * a * c; if (fabs(disc) <= 1e-6) { printf("有两个相同的实数根:%8.4f\n", -b / (2 * a)); } else if (disc > 1e-6) { x1 = (-b + sqrt(disc)) / (2 * a); x2 = (-b - sqrt(disc)) / (2 * a); printf("有两个不同的实数根:%8.4f 和 %8.4f\n", x1, x2); } else { realpart = -b / (2 * a); imagpart = sqrt(-disc) / (2 * a); printf("有两个复数根:\n"); printf("%8.4f + %8.4fi\n", realpart, imagpart); printf("%8.4f - %8.4fi\n", realpart, imagpart); } } } ``` 1. **变量声明**: 使用 `float` 类型来存储系数 \(a, b, c\) 及计算过程中需要用到的其他浮点数。 2. **输入**: 使用 `scanf` 函数从用户处获取 \(a, b, c\) 的值。 3. **特殊情况处理**: 如果 \(a\) 接近于 0,则提示用户这不是一个二次方程。 4. **判别式的计算**: 通过 `disc` 变量计算判别式的值。 5. **条件判断**: - 当判别式 \(\Delta = 0\) 时,输出两个相同的实数根。 - 当 \(\Delta > 0\) 时,输出两个不同的实数根。 - 当 \(\Delta < 0\) 时,输出一对复数根。 #### 二、计算三角形的面积 ##### 核心知识点: 1. **海伦公式**: 用于计算已知三边长度时三角形的面积,公式为 \(\sqrt{s(s-a)(s-b)(s-c)}\),其中 \(s = \frac{a + b + c}{2}\)。 2. **三角形存在的条件**: 任意两边之和大于第三边。 ##### 实现代码解析: ```c #include<math.h> #include<stdio.h> void main() { float a, b, c, s, s1; printf("请输入3个实数:\n"); scanf("%f%f%f", &a, &b, &c); if ((a + b) > c && (a + c) > b && (b + c) > a) { s = (a + b + c) * 0.5; s1 = s * (s - a) * (s - b) * (s - c); s = sqrt(s1); printf("\n三角形的面积是 %f\n", s); } else { printf("这不是一个三角形!\n"); } } ``` 1. **输入**: 获取三个边长 \(a, b, c\)。 2. **三角形存在性验证**: 使用条件判断确保输入的边长能构成三角形。 3. **计算半周长 \(s\)**: 使用公式 \(s = \frac{a + b + c}{2}\)。 4. **面积计算**: 使用海伦公式计算面积。 5. **输出结果**: 输出三角形的面积。 #### 三、基本数学运算 ##### 核心知识点: 1. **基本运算**: 加法、减法、乘法、除法。 2. **运算符**: `+`, `-`, `*`, `/`。 3. **异常处理**: 处理除数为零的情况。 ##### 实现代码解析: ```c #include<stdio.h> void main() { int x, y, z; char ch; printf("请输入一个运算符 (+, -, *, /):\n"); ch = getchar(); printf("请输入两个整数:\n"); scanf("%d%d", &x, &y); switch (ch) { case '+': z = x + y; printf("%d + %d = %d\n", x, y, z); break; case '-': z = x - y; printf("%d - %d = %d\n", x, y, z); break; case '*': z = x * y; printf("%d * %d = %d\n", x, y, z); break; case '/': if (y == 0) { printf("除数不能为零\n"); } else { z = x / y; printf("%d / %d = %d\n", x, y, z); } break; default: printf("无效的运算符\n"); } } ``` 1. **输入运算符与操作数**: 使用 `getchar()` 和 `scanf()` 分别读取运算符和两个整数。 2. **选择结构**: 使用 `switch` 语句根据输入的运算符执行相应的计算。 3. **异常处理**: 当除数为零时,给出错误提示信息。 4. **输出结果**: 显示运算的结果。 #### 四、计算一年中的第几天 ##### 核心知识点: 1. **月份对应的天数**: - 非闰年: 1月(31天),2月(28天),3月(31天),4月(30天),5月(31天),6月(30天),7月(31天),8月(31天),9月(30天),10月(31天),11月(30天),12月(31天)。 - 闰年: 2月有29天。 2. **闰年判断**: 若年份能被4整除但不能被100整除,或者能被400整除,则该年是闰年。 ##### 实现代码解析: ```c #include<stdio.h> void main() { int day, month, year, sum, leap; printf("请输入年、月、日\n"); scanf("%d%d%d", &year, &month, &day); switch (month) { case 1: sum = 0; break; case 2: sum = 31; break; case 3: sum = 59; break; case 4: sum = 90; break; case 5: sum = 120; break; case 6: sum = 151; break; case 7: sum = 181; break; case 8: sum = 212; break; case 9: sum = 243; break; case 10: sum = 273; break; case 11: sum = 304; break; case 12: sum = 334; break; default: printf("数据错误"); break; } // 计算闰年情况 if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) { leap = 1; // 表示为闰年 } else { leap = 0; // 表示为非闰年 } sum += day; // 添加当月的日期 if (leap && month > 2) { // 如果是闰年且月份大于2月,则添加一天 sum++; } printf("这是第 %d 天\n", sum); } ``` 1. **输入**: 获取年、月、日。 2. **月份对应累计天数**: 使用 `switch` 语句根据月份确定累计天数。 3. **闰年判断**: 判断当前年份是否为闰年,并据此调整天数。 4. **输出结果**: 输出该日期是一年中的第几天。
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![docx](https://img-home.csdnimg.cn/images/20241231044901.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/release/download_crawler_static/3616919/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/3616919/bg2.jpg)
![](https://csdnimg.cn/release/download_crawler_static/3616919/bg3.jpg)
![](https://csdnimg.cn/release/download_crawler_static/3616919/bg4.jpg)
![](https://csdnimg.cn/release/download_crawler_static/3616919/bg5.jpg)
剩余63页未读,继续阅读
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/5aec125102214f3dabf9f402945aee62_ericsing.jpg!1)
- 粉丝: 0
- 资源: 4
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- 串口制作.zip
- 基于JavaScript的简易校园二手电子产品交易网站设计源码
- 常用集成时序逻辑器件及应用.zip
- 单片机课件.zip
- 基于若依框架的Java+Shell脚本驱动的江财停车场管理系统设计源码
- 单片及的综合技术应用.zip
- 电磁波实验指导书.zip
- 基于Springboot+MybatisPlus的垃圾分类志愿活动网站后端设计源码
- 基于Matlab的欧拉离散化算法研究与应用设计源码
- 电感线圈的简易制作.zip
- 电力电子实验指导书.zip
- 电工基础-重要.zip
- 电机控制专用集成电路+(PDF格式).zip
- 电压电阻转换模块.zip
- 电子基础实训的几个实验.zip
- 电子元件基础教程.zip
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)