《手把手教你学C语言》学习笔记(10)--- 程序的循环控制
C语言程序设计中,有些代码需要重复执行很多次,循环主要有三类:
一、for循环
1、基本格式为:for(表达式1;表达式2;表达式3){ //表达式1:循环变量赋初值
//表达式2:循环变量满足的条件
//表达式3:循环变量的增加量
执行语句1;
……
执行语句n;
}
2、语句块功能:执行特定次数的代码循环
例子1代码:
- #include <stdio.h>
- int main(int argc, char **argv)
- {
- int sum = ;
- int num = ;
- printf("请输入你要求和的个数:");
- scanf("%d", &num);
- for(int i = ; i <= num; i++){
- sum += i;
- }
- printf("1~%d的和为: %d\n", num, sum);
- sum = ;
- for(int i = ; i <= num; i += ){
- sum += i;
- }
- printf("1~%d的奇数和为: %d\n", num, sum);
- sum = ;
- for(int i = ; i <= num; i += ){
- sum += i;
- }
- printf("1~%d的偶数和为: %d\n", num, sum);
- return ;
- }
代码的执行结果为:
请输入你要求和的个数:100
1~100的和为: 5050
1~100的奇数和为: 2500
1~100的偶数和为: 2550
注:在代码第10行中for循环中出现了i++中的++是自增运算符,根据运算符与变量的位置关系,可以写为++i和i++,那究竟有什么区别呢:例如以下代码:
- #include <stdio.h>
- int main(int argc, char **argv)
- {
- int var1 = ;
- int var2 = ;
- int i = ;
- int j = ;
- printf("i: %d and var1: %d\n", i, var1);
- var1 = ++i;
- printf("i: %d and var1: %d\n", i, var1);
- printf("iiiiiiiiiiiiiii jjjjjjjjjjjjjjj\n");
- printf("j: %d and var2: %d\n", j, var2);
- var2 = j++;
- printf("j: %d and var2: %d\n", j, var2);
- return ;
- }
代码的结果:
i: 5 and var1: 0
i: 6 and var1: 6
iiiiiiiiiiiiiii jjjjjjjjjjjjjjj
j: 5 and var2: 0
j: 6 and var2: 5
例子表明:var1 = ++i;等效为代码 i = i + 1; var1 = i;
var2 = j++;等效为代码var2 = j;j = j + 1;
《手把手教你学C语言》学习笔记(10)--- 程序的循环控制的更多相关文章
- 《手把手教你学C语言》学习笔记(2)---学习C语言的目标和方法
一.学习C语言的目标主要是: 熟练掌握C语言的关键字,语法规则,程序控制等: 掌握基本的数据结构,数组.链表.栈和队列等: 掌握C语言中指针和内存.数组与指针.函数与指针.变量和指针.结构体和指针.硬 ...
- 《手把手教你学C语言》学习笔记(1)---C语言的特点
学习C语言的原因,主要是需要使用C语言编程,我用故我学,应该是最主要的原因了. C语言的定位:C语言严格意义上只能算是中级语言,是面向过程编程语言的集大成者,虽然这种语言有很多的问题,但总体而言是瑕不 ...
- 《手把手教你学C语言》学习笔记(4)---代码规范
编程过程中需要遵守编译器的各种约定,例如以下代码: 1 #include <stdio.h> 2 3 int main(int argc, char **argv) 4 { 5 print ...
- 《手把手教你学C语言》学习笔记(9)--- 程序的选择控制
C语言是面向过程编程语言的主要代表,其特征就是严格控制程序的执行语句顺序,因此,C程序的主要结构控制就是顺序控制,以main函数为入口函数,根据控制,一条一条地执行语句.由于实际需求是很复杂的,只用顺 ...
- 《手把手教你学C语言》学习笔记(8)--- 运算符和表达式
C语言编程的核心是指针和库,而库的核心就是函数,函数的基本组成部分就是语句. C语言合法表达式加上分号(语句结束符)构成C函数的基本部分语句.如果只有分号没有表达式就构成空语句,空语句常常用来形成占位 ...
- 《手把手教你学C语言》学习笔记(7)---程序的输入与输出
程序设计中,为了观察程序的运行状态和结构,需要输出指定的内容:为了让程序能够更加灵活,可以根据需求输入内容,让计算机处理和运行:所以程序的输入输出就显的尤为重要.主要包括printf和scanf函数. ...
- 《手把手教你学C语言》学习笔记(6)---数据类型和常量
计算机中需要保存信息,就需要数据存储,数据的存储就需要划分数据类型.主要包括:基本数据类型.指针类型.构造类型.空类型. 基本类型:整型---主要用来表示整数,可以分为无符号和有符号:又分为基本整型. ...
- 《手把手教你学C语言》学习笔记(5)---计算机的存储和访问
数据存储是以“字节”(Byte)为单位,数据传输是以大多是以“位”(bit,又名“比特”)为单位,一个位就代表一个0或1(即二进制),每8个位(bit,简写为b)组成一个字节(Byte,简写为B),是 ...
- 《手把手教你学C语言》学习笔记(3)---变量
编程目的是为了解决问题,编程本质是用计算机的思维操作数据,操作就是算法,数据主要是数据类型,也可以说量,其中分为常量和变量,常量主要是指在量的生命周期内无法改变其值:变量主要是指在量的生命周期内可以随 ...
随机推荐
- MYSQL 自定义排序
在mysql order by排序中,大多数情况下仅使用默认排序规则就够了:字符串按字典顺序,数字按大小等等.可有时候,某个字段是有自身业务含义的,比如 type(1,2,3)可能表示早/中/晚,如果 ...
- request_resource
1.全局变量 resource结构体定义如下,指针parent.sibling.child用于构建树状结构. struct resource { resource_size_t start; reso ...
- devicemaps_init(mdesc)
devicemaps_init的参数为machine_desc结构体.以s3c6410为例,在arch/arm/mach-s3c64xx/mach-smdk6410.c中使用上述宏声明machine_ ...
- Oracle redo与undo 第二弹
首先看一下undo与redo的字面意思: undo:撤销,也就是取消之前的操作. redo:重做,重新执行一遍之前的操作. 什么是REDO REDO记录transaction logs,分为o ...
- CCPC_1003
这个题可以暴力的哟,直接暴力的哟 不用做什么订立的哟 不需要特别判断的哟 去死吧!!!愚蠢的我! #include<bits/stdc++.h> using namespace std; ...
- Scrapy的架构与原理的理解【转】
Scrapy 框架 Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应用框架,用途非常广泛. 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页 ...
- 命令java 找不到或无法加载主类
这个是由于用了package导致cmd下找不到class文件产生的错误,解决方案: 方法1.删除HelloWord.java源程序中的第一行package demo1:然后在cmd下正常使用javac ...
- 《鸟哥的Linux私房菜》学习笔记(6)——管道及IO重定向
一.标准I/O 标准输入:也可以叫STDIN,用0来标识,通常是键盘 标准输出:也 ...
- Android设为系统默认的短信应用
要设为系统默认的短信应用首先要配置一下AndroidManifest.xml文件,添加下列: <!-- BroadcastReceiver that listens for incoming S ...
- 使用数组的splice方法以及循环嵌套来实现数组去重
javascript代码如下 <script type="text/javascript"> var arr = [1,2,3,4,5,6,5,4,3,7,8,9, ...