- 博客(14)
- 资源 (43)
- 问答 (1)
- 收藏
- 关注
原创 7.8 如何选择循环(for、while、do while)
C语言学习栏目目录如何选择使用哪一种循环?首先,确定是需要入口条件循环还是出口条件循环。通常,入口条件循环用得比较多,有几个原因。其一,一般原则是在执行循环之前测试条件比较好。其二,测试放在循环的开头,程序的可读性更高。另外,在许多应用中,要求在一开始不满足测试条件时就直接跳过整个循环。那么,假设需要一个入口条件循环,用for循环还是while循环?这取决于个人喜好,因为二者皆可。要让for循环看起来像while循环,可以省略第1个和第3个表达式。例如:for ( ; test ; ).
2020-07-24 13:25:30 1139
原创 7.7 出口条件循环:do while
while循环和for循环都是入口条件循环,即在循环的每次迭代之前检查测试条件,所以有可能根本不执行循环体中的内容。C语言还有出口条件循环(exit-condition loop),即在循环的每次迭代之后检查测试条件,这保证了至少执行循环体中的内容一次。这种循环被称为 do while循环。程序清单演示了一个示例。/************************************************************************ 功能:出口条件循环 ********.
2020-07-24 11:52:10 663
原创 7.6 逗号运算符
逗号运算符扩展了for循环的灵活性,以便在循环头中包含更多的表达式。例如,下程序清单演示了一个打印一类邮件资费/************************************************************************ 功能:一类邮资 ************************************************************************/#include <stdio.h>int main(void)
2020-07-24 10:38:30 347
原创 7.5 其他赋值运算符:+=、-=、*=、/=、%=
C语言学习栏目目录C有许多赋值运算符。最基本、最常用的是=,它把右侧表达式的值赋给左侧的变量。其他赋值运算符都用于更新变量,其用法都是左侧是一个变量名,右侧是一个表达式。赋给变量的新值是根据右侧表达式的值调整后的值。确切的调整方案取决于具体的运算符。例如scores += 20 与 scores = scores + 20 相同dimes -= 2 与 dimes = dimes - 2 相同bunnies *= 2 与 bunnies = bunni
2020-07-24 09:11:41 884
原创 7.4 for循环
C语言学习栏目目录目录举个栗子for循环把上节(7.3不确定循环和计数循环)叙述的3个行为(初始化、测试和更新)组合在一处。程序清单使用for循环修改了7.2 用关系运算符和表达式比较大小中最后一个程序清单的程序。/************************************************************************ 功能:使用for循环的计数循环 ************************************************
2020-07-17 11:39:21 233
原创 7.3不确定循环和计数循环
一些while循环是不确定循环(indefinite loop)。所谓不确定循环,指在测试表达式为假之前,预先不知道要执行多少次循环。例如,程序清单通过与用户交互获得数据来计算整数之和。我们事先并不知道用户会输入什么整数。另外,还有一类是计数循环(counting loop)。这类循环在执行循环之前就知道要重复执行多少次。程序清单6.10就是一个简单的计数循环。/*********************************************************************.
2020-07-16 19:28:48 1533
原创 7.2 用关系运算符和表达式比较大小
C语言学习栏目目录目录1、什么是真2、其他真值3、真值的问题4、新的_Bool类型5、优先级和关系运算符while循环经常依赖测试表达式作比较,这样的表达式被称为关系表达式(relational expression),出现在关系表达式中间的运算符叫做关系运算符(relational operator)。前面的示例中已经用过一些关系运算符,下表中列出了 C 语言的所有关系运算符。该表也涵盖了所有的数值关系(数字之间的关系再复杂也没有人与人之间的关系复杂)。关系运算符.
2020-07-16 19:04:08 2200
原创 7.1 while循环
1、while语句while循环的通用形式如下:while ( expression )statementstatement部分可以是以分号结尾的简单语句,也可以是用花括号括起来的复合语句。到目前为止,程序示例中的expression部分都使用关系表达式。也就是说,expression是值之间的比较,可以使用任何表达式。如果expression为真(或者更一般地说,非零),执行 statement部分一次,然后再次判断expression。在expression为假(0)之前,循环的判.
2020-07-07 14:52:12 1186
原创 第七 C控制语句:循环
本章介绍以下内容:关键字:for、while、do while运算符:<、>、>=、<=、!=、==、+=、*=、-=、/=、%=函数:fabs()C语言有3种循环:for、while、do while使用关系运算符构建控制循环的表达式其他运算符循环常用的数组编写有返回值的函数大多数人都希望自己是体格强健、天资聪颖、多才多艺的能人。虽然有时事与愿违,但至少我们用 C能写出这样的程序。诀窍是控制程序流。对于计算机科学(是研究计算机,不是用计算机做研究
2020-07-07 14:18:12 185
原创 6.4 带参数的函数
现在,相信大家已经熟悉了带参数的函数。要掌握函数,还要学习如何编写自己的函数程序清单中有一个pound()函数,打印指定数量的#号(该符号也叫作编号符号或井号)。该程序还演示了类型转换的应用。/************************************************************************功能:定义一个带一个参数的函数******************************************************************
2020-07-07 11:11:00 1153
原创 6.3 类型转换
通常,在语句和表达式中应使用类型相同的变量和常量。但是,如果使用混合类型,C 不会像 Pascal那样停在那里死掉,而是采用一套规则进行自动类型转换。虽然这很便利,但是有一定的危险性,尤其是在无意间混合使用类型的情况下(许多UNIX系统都使用lint程序检查类型“冲突”。如果选择更高错误级别,许多非UNIX C编译器也可能报告类型问题)。最好先了解一些基本的类型转换规则。1.当类型转换出现在表达式时,无论是unsigned还是signed的char和short都会被自动转换成int,如有必要会被转换成u
2020-07-07 10:37:27 330
原创 6.2 表达式和语句
在前几章中,我们已经多次使用了术语表达式(expression)和语句 (statement)。现在,我们来进一步学习它们。C的基本程序步骤由语句组 成,而大多数语句都由表达式构成。因此,我们先学习表达式。1、表达式表达式(expression)由运算符和运算对象组成(前面介绍过,运算对 象是运算符操作的对象)。最简单的表达式是一个单独的运算对象,以此为 基础可以建立复杂的表达式。下面是一些表达式:4-64+21 a*(b + c/d)/20 q = 5*2 x = +...
2020-07-06 15:27:13 1362
原创 6.1 特殊运算符
C语言学习栏目目录目录1、sizeof运算符和size_t类型2、求模运算符:%3、递增运算符:++4 、递减运算符:--5、 优先级C语言有大约40个运算符,有些运算符比其他运算符常用得多。前面讨 论的是最常用的,本节再介绍4个比较有用的运算符。1、sizeof运算符和size_t类型前面我们就见过sizeof运算符。回顾一下,sizeof运算符以字节为单 位返回运算对象的大小(在C中,1字节定义为char类型占用的空间大小。过 去,1字节通常是8位,但是一些...
2020-07-06 14:37:13 1056
原创 STM32调试正常断电重启后,程序跑飞
问题描述: 这几天做了个新项目,程序是从旧项目一直过来的,程序调试中都没有问题。烧录后面跑的也是正常。甚至用串口工具rts重启都是好的,就是断电重启后,或者软件重启后,程序跑飞了(几个全局变量数据异常)。解决方式:1、检测是否内存溢出,导致程序跑飞;2、检测EPRom,是否存储是否正确,比如char存入一位即可(之前的项目是应为这个导致几个参数一直错误);3、查看堆栈是否溢出或者分配错误4、(这个项目的解决方式)重新建立keil工程(eclipse工程),由于项目更换了芯片,导致内
2020-07-03 13:28:57 3674
va_x安装.zip
2019-12-16
wpf页面参数传递,源码
2022-07-14
8.6 循环辅助:continue和break.7z
2020-09-11
8.2 if else语句.7z
2020-09-01
Keil.STM32F1xx_DFP.1.0.5.pack.7z
2020-08-31
错误 10 error LNK1281: 无法生成 SAFESEH 映像。
2016-12-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人