c语言第七天笔记

news2024/9/25 15:28:50

作业题:

设计TVM(地铁自动售票机)机软件。

输入站数,计算费用,计费规则,6站2元,7-10站3元,11站以上为4元。 输入钱数,计算找零(找零时优先找回面额大的钞票),找零方式为各种面额张数,可识别面额: 100,50,20,10,5,1

案例代码:

运行效果:

循环结构

什么是循环

代码的重复执行,就叫做循环。

循环的分类

无限循环:程序设计中尽量避免无限循环。(程序中的无限循环必须可控)

有限循环:循环限定循环次数或者循环的条件。

循环的构成

循环体

循环条件

当型循环的实现

while

语法:

说明:

1. 循环条件的返回值必须是布尔类型,在C语言中,布尔类型为真使用 非0 来表示,布尔类型为假使 用 0 表示。

2. {} 包起来的内容整体称之为为 循环体 。

3. 我们要在 循环体 中控制 循环条件 的变化,否则会产生死循环。

执行过程:

特点:

先判断,后执行,循环体语句有可能一次都不执行。

案例:

案例:

死循环

for..

语法:

说明:

1. () 中可以只保留两个分号,举例: (;;)

2. ① 是循环变量,我们需要赋初值,循环变量可以是列表,多个循环变量使用逗号分隔,举例: in t i=0,j=0

3. ② 是循环条件,用来限制循环的次数,循环条件支持关系表达式,如果加入逻辑表达式,会变成 复合表达式,举例: i < 10 && j < 10

4. ③ 改变循环条件,支持列表,这里可以使用赋值表达式,举例: i++,j++

5. 执行顺序:①②④③ --> ②④③ --> ②④③ ... --> ②,这里①只执行1次。

执行过程:

特点:

先判断,后执行,循环体语句有可能一次都不执行。

案例:

案例:

总结

for语句使用语法规则上,降低/避免因为忘记循环条件更新操作,而引起的产生无限循环的几率。

应用场合:for语句往往应用于循环次数事先可以确定的场景。

死循环

循环实现的三要素

循环变量初始化

循环条件

循环变量更新

案例:

直到型循环的实现

do..while

语法:

说明:

1. 循环条件的返回值必须是布尔类型,在C语言中,布尔类型为真使用 非0 来表示,布尔类型为假使 用 0 表示。

2. {} 包起来的内容整体称之为为 循环体 。

3. 我们要在 循环体 中控制 循环条件 的变化,否则会产生死循环。

执行过程:

特点:

先执行,后判断,循环体语句至少执行一次。

案例:

循环的嵌套

3种循环(while、do……while、for)可以互相嵌套。在前一个循环结构的内部又存在一个完整的循环 结构,如:

案例:

循环结构的典型应用场景

求累和:举例 1+2+3+4+..+100的和

求累乘:举例 1*2*3*4*..*100的积

求均值:举例: (1+2+3+4+..+100) / 100的值

求极值:举例: 12,34,55,2,66中的最大值或者最小值

元素遍历:常用于数组元素的遍历,比如:从 [1,2,3,4,5] 获取每一个元素。数组我们后续课程讲 解。

...

基础算法模型

1. 累加和

定义一个变量(sum),并赋初值为0;

用该变量累加(+=)每一个数据项(i)

当访问完每一个数据项,此时该变量的取值就是累加和的结果。

2. 累乘

定义一个变量,并赋初值为1;

用该变量累乘(*=)每一个数据项;

当访问完每一个数据项,此时该变量的取值就是累乘的结果。

3. 极值【知识点:数组】

定义一个变量,并赋初值为第一个数据项

从第二个数据项开始,一次性与该变量进行比较,如果大于/小于该变量,则将当前数据项的数 据赋值给该变量。

当访问完每一个数据项,此时该变量的取值就是求极值的结果。

补充

什么是素数

素数也被称作质数,只能被1和自身整除的数就叫做素数。

作业

上机题

1. 计算n以内所有正奇数的和 ? n值通过键盘输入

2. 计算 1 + 1/(2 * 3) + 1/(3 * 4) + ...+ 1/(n * (n + 1)) = ?直到最后一相值小于0.00001为至。

3. 计算1+1/2 - 1/3 + 1/4 - 1/5 ...+1/n= ? n通过键盘输入

4. 计算n的阶乘 ? n! = 123.....*n n值通过键盘输入

5. 输出半径为1~10的圆面积,面积大于100时停止

6. 求输入的十个整数中正数的个数及其平均值

7. 打印出100以内能整除7之外的的自然数

8. 打印乘法表

9. 我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三 值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?

10. 从键盘上输入多个无符号整型数据,直到 0 结束 ,输出所输入数据中的最大值。

思考题

11. 判断一个数是不是回文数。(回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整 数。如:12321

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1971213.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

与树莓派的“黄金”关系,是如何帮助这家医疗设备公司扩大规模

稳定的供应和与Raspberry Pi的“黄金”关系帮助医疗设备公司进行了规模扩张 埃及医疗设备制造商Bio Business需要将物联网功能集成到其成功的患者监测设备系列中。Raspberry Pi技术使他们得以实现。 解决方案 RP2040 Compute Module 4 企业规模 中小企业 行业 医疗技术 …

springbootJZ车行系统-计算机毕业设计源码93812

目 录 摘 要 1 绪论 1.1 研究背景与意义 1.2开发现状 1.3论文结构与章节安排 2 系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 操作可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系统用例分析 2.4 系统流…

Java语聊大厅语音聊天小程序系统源码

语聊大厅语音聊天小程序&#xff1a;遇见声音的温暖角落 &#x1f3a7; 【初识语聊大厅&#xff0c;声音的奇妙邂逅】 在这个快节奏的时代&#xff0c;你是否渴望一份不被视线束缚的真诚交流&#xff1f;语聊大厅语音聊天小程序&#xff0c;就是你我之间最温柔的桥梁。轻轻一…

禅道项目管理软件安装教程

一、禅道软件简介 禅道项目管理软件是一款国产开源项目管理软件。它集项目集管理、产品管理、项目管理、质量管理、DevOps、知识库、BI效能、工作流、学堂、反馈管理、组织管理和事务管理于一体&#xff0c;是一款专业的研发项目管理软件&#xff0c;完整覆盖了研发项目管理的…

提升Windows录屏体验:3款顶级电脑录屏软件推荐!

Hey&#xff01;伙伴们&#xff0c;是不是有时候会觉得需要录屏呢&#xff1f;比如做个教学视频啦、直播玩游戏啦&#xff0c;或者是把重要的会议内容记录下来。这时候有一款好的电脑录屏软件简直不要太棒&#xff01;作为你们身边的科技小能手&#xff0c;今天我就来给大家安利…

vue2前端监听usb

在 Vue2 前端应用中监听 USB 设备的插入和拔出事件&#xff0c;可以使用浏览器提供的 WebUSB API。这需要运行在支持 WebUSB API 的浏览器上&#xff0c;并且用户需要授予相应的权限。 以下是一个示例&#xff0c;展示如何在 Vue2 项目中监听 USB 设备的插入和拔出事件。 1. …

【practise】string_atoi

今天来分享一道比较平常的练习题&#xff0c;说实话我自己写了半天&#xff0c;自己写的很烂最后还是看的答案… 1.题目概要 题目链接&#xff1a;LINK 2.题目难点 这个题目有两个难点&#xff0c;如下&#xff1a; 拿到了全部都是数字字符的字符串&#xff0c;怎么将这个…

新160个crackme - 019-Acid Bytes.3

运行分析 需要破解Name和Serial PE分析 upx壳 linux系统&#xff1a;upx -d CrackMe3.exe 脱壳发现是Delphi系统&#xff0c;32位 静态分析&动态调试 找到关键字符串&#xff0c;进入关键函数 静态分析&#xff0c;发现了Name和Serial明文 验证成功

深入理解 Git `git add -p` 命令中的交互选项

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[2435024119@qq.com] 📱个人微信:15279484656 🌐个人导航网站:www.forff.top 💡座右铭:总有人要赢。为什么不能是我呢? 专栏导…

2 路模拟量转 Lora模块(开关量,0-10V,4-20ma)

一、功能概述 本产品是一款无线中继器&#xff0c;将 0~ 10V 电压信号转为无线信号&#xff0c; 通过无线方式远传&#xff0c;实现远程通信功能。采用 Lora 无线通信技术&#xff0c; 工作中心频率 433M&#xff0c;空旷传输距离 7000 米。点对点电流远传&#xff0c;用无 线…

智慧工厂数字孪生解决方案

项目背景 随着工业自动化和智能化的不断深入&#xff0c;智慧工厂正成为制造业的新标杆。数字孪生技术作为智慧工厂的核心&#xff0c;通过物理模型、传感器更新、运行历史等数据的集成&#xff0c;实现对现实世界的映射&#xff0c;反映实体装备的全生命周期过程。 方案简介 …

Nacos在Docker上单机模式部署

文章目录 前言一、Nacos二、单机Docker部署 前言 Nacos是阿里巴巴开源的一款用于动态服务发现、配置管理和服务管理的平台。它是“Dynamic Naming and Configuration Service”的缩写&#xff0c;旨在帮助用户实现微服务架构中的服务注册与发现、配置管理、动态DNS服务等功能。…

【一文了解大数据及数据要素,浅说隐私计算、联邦学习】

大数据 不等于 数据要素 大数据&#xff1a;大数据指的是体量巨大、增长迅速且结构复杂的数据集合。传统的数据处理工具无法有效存储和分析这些数据。大数据的处理涉及新的技术和方法&#xff0c;以提取有用的信息和知识。 数据作为新型生产要素&#xff0c;是数字化、网络化、…

C语言bsearch函数

目录 开头1.什么是bsearch函数2.bsearch函数的第五个参数的写法3.bsearch函数的实际运用有序数组查询有序字符串查询有序二维字符串数组查询 结尾 开头 大家好&#xff0c;我叫这是我58。今天&#xff0c;我们来学一下关于C语言里的bsearch函数的一些知识。 1.什么是bsearch函…

Ubuntu系统中下载安装Checkmk,搭建网络监控系统

文章目录 checkmk是什么&#xff1f;下载安装checkmkUbuntu系统安装选择checkmk版本下载checkmk安装checkmk检查checkmk版本创建checkmk站点启动checkmk及站点 推荐阅读 checkmk是什么&#xff1f; Checkmk 是一款开源的、可扩展的、企业级的网络监控工具。Checkmk提供了丰富的…

unity2D游戏开发14漫游

漫游算法 让敌人在地图上漫游,发现玩家在附加,就会追击,直到玩家逃跑或者杀死玩家 将Enemy预购件拖进场景,并将实例EnemyObject添加CircleCollider2D,选中Is Trigger复选框 创建漫游脚本 选中EnemyObject,点击Animation,右击enemy-idle-1,选择Set as Layer Default St…

发现编程新乐趣,20个Python小游戏源码宝藏,快来挖掘属于你的惊喜!(附源码)

经常听到有朋友说&#xff0c;学习编程是一件非常枯燥无味的事情。其实&#xff0c;大家有没有认真想过&#xff0c;可能是我们的学习方法不对&#xff1f; 比方说&#xff0c;你有没有想过&#xff0c;可以通过打游戏来学编程&#xff1f; 今天我想跟大家分享几个Python小游…

Node.js(5)——包

包 包的概念&#xff1a;将模块&#xff0c;代码&#xff0c;其他资料聚合成一个文件夹 分类&#xff1a; 项目包&#xff1a;主要用于编写项目和业务逻辑 软件包&#xff1a;封装根据和方法进行使用 要求&#xff1a;根目录中&#xff0c;必须有package.json文件&#xff08…

美林数据Tempo Talents | 两大资源中心,打造开放、成长型数智人才能力平台

在数字化时代的大潮中&#xff0c;高校作为知识与人才培养的重要阵地&#xff0c;独立分散的课程资源管理方式已无法满足现代教育的需求&#xff0c;而数据资源的分散和碎片化也阻碍了科研和教学工作的深入进行。那么&#xff0c;高校如何打造一个集中、高效的课程与数据资源中…

C#/Winform入门、进阶、强化、扩展、知识体系完善等知识点学习、性能优化、源码分析专栏分享

场景 作为一名C#的Winform开发者&#xff0c;势必经历过从入门到自学、从基础到进阶、从学习到强化的过程。 当经历过几年企业级开发的磨炼&#xff0c;再回头看之前的开发过程、成长阶段发现确实是走了好多的弯路。 作为一名终身学习的信奉者&#xff0c;秉承Java体系需持续…