1. while语句是什么?在C语言中,while语句是一种循环控制结构,用于重复执行一段代码,直到指定的条件不再满足为止。它属于“入口条件循环”,这意味着在每次循环迭代之前,都会先检查条件。如果条件为真,则执行循环体;如果条件为假,则跳过循环体并继续执行while语句之后的代码。
基本语法:
123while (条件表达式) { // 循环体(statements to be executed repeatedly)}
条件表达式:这是一个布尔表达式,其结果为真(非零)或假(零)。
循环体:当条件表达式为真时,这部分代码会被执行。循环体可以是一条语句,也可以是由花括号 {} 包裹的多条语句。
工作原理:
程序首先评估条件表达式。
如果条件表达式为真(非零),则执行while循环体内的代码。
循环体执行完毕后,程序再次回到步骤1,重新评估条件表达式。
这个过程会一直重复,直到条件表达式为假(零)时,循环终止,程序继续执行while循环后面的代码。
2. while语句何时用?while语句在编程中非常常用,尤其适用于以下场景:
...
C语言小课堂
未读编程的世界里,循环语句就像是我们的“重复执行器”,能帮我们高效地完成大量重复性任务。今天,我们要深入了解一个有点“特别”的循环——do-while 语句。它不像你可能熟悉的 while 和 for 循环那样“先看后做”,而是有点“不回头”的执着,先做一次再说!
一、do-while 语句:先做再说,至少一次!1. 是什么?do-while 循环是 C 语言提供的一种后测试循环结构。它的基本语法如下:
123do { // 循环体(要重复执行的代码)} while (条件表达式); // 注意这里有一个分号!
do 关键字:表示循环体的开始。
循环体:包含了一组需要重复执行的语句。
while (条件表达式):在循环体执行完毕后,才会对条件表达式进行判断。
分号 ;:这是 do-while 循环特有的,while 后必须跟着一个分号,表示循环语句的结束。
与 while 循环(先判断条件,再执行循环体)不同,do-while 循环的特点是无论条件表达式是否为真,循环体至少会执行一次。 只有在第一次执行完毕后,才会检查条件表达式。如果条件为真,则继续执行下一 ...
今天,我们将一起探索两个在循环中扮演“指挥家”角色的关键字——continue 和 break。它们就像是循环中的“暂停键”和“终止键”,能够灵活地控制程序的执行流程,让你的代码更加高效和优雅。
一、知识点讲解1. continue 和 break 是什么?在C语言中,for、while 和 do-while 循环是程序重复执行某段代码的强大工具。然而,有时我们希望在循环执行过程中,根据特定条件跳过某些迭代,或者提前结束整个循环。这时,continue 和 break 就派上用场了。
continue 关键字:
作用:continue 的作用是跳过当前循环中剩余的语句,直接进入下一次循环的判断条件(或更新表达式)。它并非跳出整个循环,而是跳过当前循环体的剩余部分,开始下一轮循环。
比喻:你可以把 continue 想象成一个“快进”按钮。当程序遇到 continue 时,它会说:“嘿,这一轮剩下的部分我不想看了,直接跳到下一轮的开头!”
break 关键字:
作用:break 的作用是立即终止当前的循环(for、while 或 do-while),并跳出循环体,程序继续执行循 ...
C语言小课堂
未读今天我们要聊一个非常实用且充满“小玄机”的知识点——自增自减运算符。它们就像代码世界的“加减法”速效药,能让你的代码更简洁,效率更高。但别急,这药可不能乱用,里面藏着不少值得我们细细品味的小秘密。
一、知识点讲解1. 什么是自增自减运算符?在C语言中,自增(++)和自减(--)运算符是一种单目运算符,它们专门用来对变量的值进行加1或减1的操作。你可以把它们理解为一种特殊的“计数器”或“步进器”。
自增运算符 (++):使变量的值增加1。
例如:a++ 等价于 a = a + 1;++a 也等价于 a = a + 1。
自减运算符 (--):使变量的值减少1。
例如:a-- 等价于 a = a - 1;--a 也等价于 a = a - 1。
看起来很简单,对不对?但它们真正的“魔力”在于它们出现的位置——前缀和后缀。
前缀形式(++a 或 --a):先进行自增/自减操作,然后再使用变量的新值。
想想“先完成任务,再汇报成果”。
后缀形式(a++ 或 a--):先使用变量的原始值,然后再进行自增/自减操作。
想想“先汇报成果,再完成任务”。
2 ...
C语言小课堂
未读今天我们来聊聊C语言中一个看似不起眼,实则举足轻重的概念——运算优先级。它就像代码世界的“交通规则”,决定了表达式中各个运算符的执行顺序,理解它,能让你的程序按照你预想的路径运行,避免“交通事故”!
一、知识点讲解1. 运算优先级:它“是什么”?在C语言中,一个表达式可能包含多个运算符,比如加减乘除、赋值、逻辑运算等等。当这些运算符同时出现时,计算机如何知道先计算哪个,后计算哪个呢?这就是“运算优先级”要解决的问题。
简单来说,运算优先级就是C语言为各种运算符预设的执行顺序规则。优先级高的运算符会先于优先级低的运算符执行。如果优先级相同,那么就按照“结合性”来决定执行顺序(通常是从左到右,但也有例外,比如赋值运算符是从右到左)。
我们可以把C语言的运算符想象成一支军队,每个士兵(运算符)都有自己的军衔(优先级)。军衔高的士兵自然拥有更高的指挥权,会优先执行任务。当军衔相同的时候,就看军队的行军方向(结合性)了。
2. 何时用?为什么用?何时用?只要你的C语言表达式中出现两个或两个以上的运算符,你就需要考虑运算优先级。无论是在编写简单的数学计算,还是复杂的条件判断、位操作,运算优先级的知 ...
C语言小课堂
未读你是否曾想过,编程语言是如何理解“大于”、“小于”或者“等于”这些日常概念的?它又是如何根据这些比较结果做出“决定”的?今天,我们就来揭开C语言中“关系表达式”的神秘面纱,它正是C语言用来判断和比较的“眼睛”。
一、知识点讲解1. 关系表达式是什么?在C语言中,关系表达式(Relational Expression)是用来比较两个值之间关系的表达式。它的结果只能是真(非零,通常为1)或假(零)。你可以把它想象成一个“是/否”的判断器,当你给它两个数值,它会告诉你它们之间是否存在某种特定的关系。
关系表达式主要由关系运算符连接两个操作数组成。C语言提供了以下6种关系运算符:
运算符
含义
示例
结果
<
小于
5 < 10
真 (1)
<=
小于或等于
10 <= 10
真 (1)
>
大于
15 > 8
真 (1)
>=
大于或等于
20 >= 20
真 (1)
==
等于
7 == 7
真 (1)
!=
不等于
3 != 5
真 (1)
注意:
== 是“等于”运算符,用于比较两个值是否相 ...
人工智能入门
未读这些年,人工智能已经深刻融入了我们的生活里。
每天都用的手机支付;随处可见的人脸识别;又或者我们看书、听歌,app好像知道我们的喜好,总把我们喜欢的东西推到眼前。
作为计算机通识课的老师,我总在想,能不能把这层技术的壳剥掉,用一个简单的方法,让我的学生能看到里面最根本的道理是什么。
许多复杂的事情,道理往往是相通的。我们不妨借一个上学时都学过的、简单的函数范式:y = f(x),把它当作一根线,来串起我们对人工智能这件事的零散思绪。
人自己的聪明,也是一个 f(x)
要明白人工的聪明,不如先看看我们人自己天然的聪明是怎么回事。
好比我们学开车。眼睛瞧着前方的红绿灯、路上的行人、镜子里的车影,这许多零零碎碎的景象,就是那个 x 。
它们一股脑儿地进了我们的脑子。我们的大脑,可以说是一个精密的 f。它把驾校师傅教的规矩、自己开过的路、甚至一瞬间的感觉,都掺和在一起,进行了一番极快的计算。
计算的结果,就是那个 y——我们的脚,不轻不重,稳稳地踩住了刹车。
这么看来,我们人所谓的聪明,大抵就是这么一个过程:接收外部的信息(x),经过我们头脑里那个掺杂了学识、经验和思辨的 f 来处置,最终做出 ...
“人工智能通识”
未读这些年,人工智能已经深刻融入了我们的生活里。
每天都用的手机支付;随处可见的人脸识别;又或者我们看书、听歌,app好像知道我们的喜好,总把我们喜欢的东西推到眼前。
作为计算机通识课的老师,我总在想,能不能把这层技术的壳剥掉,用一个简单的方法,让我的学生能看到里面最根本的道理是什么。
许多复杂的事情,道理往往是相通的。我们不妨借一个上学时都学过的、简单的函数范式:y = f(x),把它当作一根线,来串起我们对人工智能这件事的零散思绪。
人自己的聪明,也是一个 f(x)要明白人工的聪明,不如先看看我们人自己天然的聪明是怎么回事。
好比我们学开车。眼睛瞧着前方的红绿灯、路上的行人、镜子里的车影,这许多零零碎碎的景象,就是那个 x。
它们一股脑儿地进了我们的脑子。我们的大脑,可以说是一个精密的 f。它把驾校师傅教的规矩、自己开过的路、甚至一瞬间的感觉,都掺和在一起,进行了一番极快的计算。
计算的结果,就是那个 y——我们的脚,不轻不重,稳稳地踩住了刹车。
这么看来,我们人所谓的聪明,大抵就是这么一个过程:接收外部的信息(x),经过我们头脑里那个掺杂了学识、经验和思辨的 f来处置,最终做出一个 ...
上回说到,我们搞定了技术选型问题,今天我们将具体聊一聊具体的「课前问答模态框」如何实现的,「智能体对话功能」是怎么调 Coze API 的,以及如何纯靠前端操作+后端轻量接口,实现数据储存功能。
课前问答:用 JS「搭积木」
需求是做一个「渐进式问答」:用户点「开启微课」按钮 → 弹出问题1→ 选答案 → 显示解析 → 自动跳到问题2→ 最后跳转视频页。这功能看起来简单,实际写起来全是细节。
1.1 模态框的「显隐控制」
首先得让模态框能弹出来。在index.html里,模态框是一个 div,默认display: none。点击「开启微课」按钮(#start-lesson)时,用 JS 给它加active类,触发显示:
1234// 绑定按钮点击事件document.getElementById('start-lesson').addEventListener('click', () => { document.getElementById('welcome-modal').classList.add(& ...
计算机设计大赛
未读今年带了一组大一学生参加计算机设计大赛冲入了国赛,这是我们学生制作的作品简介快闪,欢迎大家围观 TalkerPlus
向上滑动看下一个