iOS学习之C语言循环结构
一、while循环
while (循环条件) {
循环体;
}
// 1.定义循环变量
int time = 1;
// 2.循环条件
while (time <= 3) {
// 3.循环体
printf("不能玩手机\n");
// 4.循环增量
time++;
}
// 定义循环变量
int quan = 1;
// 循环条件
while (quan <= 10) {
// 循环体
printf("跑圈%d\n", quan);
// 循环增量
quan++;
}
练习:打印1-0之间所有的数
; ) { printf("%-4d", number); number++; }
//打印1-100之间所有的奇数 ; ) { != ) { printf("奇数为:%d\n",a1); } a1++; }
二、随机数
arc4random()
原理: 余数 < 除数
[0, n] arc4random() % (n + 1)
[a, b] arc4random() % (b - a + 1)+a
//[0, 9] ; printf("random = %d\n", random); // [0, 10] ; printf("random1 = %d\n", random1); // [0, 20] ; printf("random2 = %d\n", random2); // [1, 10] -- [0, 9]+1 + ; printf("random3 = %d\n", random3); // [10, 20]-- [0, 10] + 10 + ; printf("random4 = %d\n", random4);
//练习: 随机产生10个数, 范围[0, 10] ; ) { // 打印随机数 [0, 10] ; printf("%d ", random); number++; } // 练习:用while打印10个随机数(范围为10~30),求最大值和最小值。 ; ; ; ) { // 打印随机数(范围为10~30) + ; printf("%4d", random); if (max < random) { max = random; } if (min > random) { min = random; } number++; } printf("max = %d\n", max); printf("min = %d\n", min);
三、 break, continue
break:在switch...case中,结束当前的case分支
在循环中,遇到break,break后面的语句不再执行并结束整个循环
continue:在循环中遇到continue,后面的语句不再执行并结束本次循环
; ) { ) { printf("相中,走啦%d\n", count); break; } ) { printf("前女友,跳过\n"); count++; continue; } printf("count = %d\n", count); count++; }
//练习:打印1-20之间所有的数,如果是7,不打印,如果是17,17和后面的数不再打印 ; ) { a++; ) { a++; continue; } ) { break; } printf("%d ", a); a++; }
四、do...while
do {
循环体
} while (循环条件);
定义循环变量
int a = 1;
do {
a++;
} while (a > 10);
printf("a = %d\n", a);
while (a > 10) {
a++;
}
printf("a = %d\n", a);
五、 for循环
//打印1-5之间所有的数 ; ;) { printf("%d ", a); a++; }
(定义循环变量 ; 循环条件;循环增量)
for (int a = 1;a <= 5;a++) {
printf("%d ", a);
}
//用for循环打印1-100之间所有的数 ; ; i <= ; i++){ printf("%d", i); printf(" "); } printf("i = %d\n", i); //用for循环打印1-100之间所有的偶数 ; i <= ; i++) { == ) { printf("%d ", i); } } // 用for循环打印出1~100之间7的倍数。 ; i <= ; i++) { == ) { printf("%4d", i); } } //用for循环打印出1~100之间个位为7的数。 ; i<= ; i++) { == ) { printf("%4d", i); } } // 用for循环打印出1~100之间十位为7的数。 ; i <= ; i++) { == ) { printf("%4d", i); } } //用for循环打印出1~100之间既不是7的倍数并且也不包含7的数。 ; i <= ; i++) { != && i % != && i / != ) { printf("%-4d", i); } }
六、循环嵌套
/* 1 2 3 4 1 2 3 4 1 2 3 4 */ //控制行数 ; i <= ; i++) { // 控制每一行要打印的内容 ; j <= ; j++) { printf("%d ", j); } printf("\n"); }
/* 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 */ //控制行数 ; i <= ; i++) { // 每一行要打印的内容 ; j <= i; j++) { printf("%d ", j); } printf("\n"); }
/* 1 2 3 4 5 1 2 3 4 1 2 3 1 2 1 */ //控制行数 ; i >= ; i--) { // 每一行要打印的内容 ; j <= i; j++) { printf("%d ", j); } printf("\n"); }
//打印乘法口诀表 2 3 //控制行数 ; i <= ; i++) { // 控制打印的方格 ; j <= i; j++) { printf("%dx%d=%d ", j, i, j*i); } printf("\n"); }
//打印三个数字(0 - 9)的组合可能(组合成三位数)。 2 3 //控制百位数 ; i <= ; i++) { // 控制十位数 ; j <= ; j++) { // 控制个位数 ; k <= ; k++) { printf(+j*+k); } } }
总结:
for循环通常用于知道循环次数的情况下使用(常用)
while:不明确循环次数,知道循环结束的标识
iOS学习之C语言循环结构的更多相关文章
- iOS学习之C语言分支结构
一.BOOL类型 返回值:真:YES 假:NO 定义一个布尔类型的变量 YES == 1, NO == 0 计算机在识别时,YES就替换成1,NO就替换成0 BOOL isGirl = YES; ...
- IOS学习笔记07---C语言函数-printf函数
IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...
- IOS学习笔记06---C语言函数
IOS学习笔记06---C语言函数 -------------------------------------------- qq交流群:创梦技术交流群:251572072 ...
- Bash脚本编程学习笔记07:循环结构体
本篇中涉及到算术运算,使用了$[]这种我未在官方手册中见到的用法,但是确实可用的,在此前的博文<Bash脚本编程学习笔记03:算术运算>中我有说明不要使用,不过自己忘记了.大家还是尽量使用 ...
- C语言------循环结构II
仅供借鉴.仅供借鉴.仅供借鉴(整理了一下大一C语言每个章节的练习题.没得题目.只有程序了) 文章目录 1 .实训名称 2 .实训目的及要求 3 .源代码及运行截图 4 .小结 1 .实训名称 实训6: ...
- C语言-循环结构及break、continue
循环结构 --1-- 结构循环 1.1 while循环 1.2 do…while循环 1.3 for循环 --2-- break和continue 2.1 break关键字 2.2 continue关 ...
- iOS学习笔记---c语言第二天
一.bool布尔类型 c语言没有bool类型,oc里有bool类型 是一种非真即假的数据类型,布尔类型的变量只有yes和no两个值.yes表示表达式是真,no表示表达式是假. 在c语言中认为非0 ...
- Objective-C 学习笔记(一) 语言程序结构
Objective-C语言程序结构 “Hello World”简单示例 #import <Foundation/Foundation.h> //预处理命令,它告诉Objective-C语言 ...
- iOS学习笔记---C语言第三天
循环结构 : while循环 do...while循环(几乎不用) for循环(使用最多) 特点:在给定的条件成立时,反复执行某程序段,直到条件不成立为止. 给定的条件为循环条件,反复执行 ...
随机推荐
- No.004 Median of Two Sorted Arrays
4. Median of Two Sorted Arrays Total Accepted: 104147 Total Submissions: 539044 Difficulty: Hard The ...
- [Hibernate 1]Hibernate的环境搭建
一.Hibernate是什么 直接使用JDBC操作数据库的步骤很繁琐,JDBC操作的是关系型数据库,而我们用JAVA开发程序,则使用面向对象的思想.Hibernate正是在这两种不同的模型之间建立关联 ...
- Json.net实现方便的Json转C#(dynamic动态类型)对象
以前需要将一段json字符串转换为C#对象时,一般都是定义一个与之对应的实体类来接收.这样做有一个很大的缺点,就是当字符串特别长,属性特别多,又有嵌套时,手敲这个实体类就非常痛苦. 比如之前做的一个接 ...
- Oracle笔记 五、创建表、约束、视图、索引、序列、同义词、表空间
alter table userInfo add(msn varchar2(20)); 1.建表 create table userInfo ( id number(6), name varchar2 ...
- windows installer 出错问题解决
在卸载程序的额时候,如果出现windows installer出错,可以通过一个Windows Installer CleanUp Utility, 有了Windows Installer Clean ...
- 将Windows 7导航窗格中的收藏夹、库、家庭组、网络全部去掉
将Windows 7导航窗格中的收藏夹.库.家庭组.网络全部去掉,只剩下计算机.右键单击ShellFolder,选择权限->Administrators,勾选上“完全控制”,确定后双击右侧窗格中 ...
- sqlserver分区表实践:对时间分区表自动进行管理
项目问题:有一张日志表,插入和查询为主,每天记录数据为200多万,大小为2G-4G之间.一开始开发人员使用delete语句手动删除,保留7天数据,经常造成阻塞和性能瓶颈.但是如果不删除数据随着表越来越 ...
- iOS 层层推进实现代理模式
1.代理模式核心思想:A类委托B类做某件事,然后A类获取B类的执行的返回结果! 举例:女孩想去买电影票,但是自己不亲自去而是委托男孩了解电影电影票信息,同时女孩获得男孩买票的结果,代码模拟实现: /* ...
- C#关于一个程序,只可以有一种实例的方法
方法一:使用线程互斥变量. 通过定义互斥变量来判断是否已运行实例.把program.cs文件里的Main()函数改为如下代码: 说明:程序中通过语句 System.Threading.Mutex ru ...
- IE中console的正确使用方法
本文出处原文链接 转载请注明出处 http://www.cnblogs.com/havedream/p/4519538.html 问题来源:最近在学习easyui,观看的视频教程是孙宇的<EAS ...