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循环(使用最多) 特点:在给定的条件成立时,反复执行某程序段,直到条件不成立为止. 给定的条件为循环条件,反复执行 ...
随机推荐
- 实现web页面按比例缩放
对于web的掌握限于可以看懂别人的代码,并在框架中作相应修改或增加. 今天把另一个项目中的网页源代码粘过来做一个页面,结果问题百出. 首先,同样的代码,放在自己的项目里,页面排版错乱,看了下,引用的w ...
- 洛谷P1983 车站分级
P1983 车站分级 297通过 1.1K提交 题目提供者该用户不存在 标签图论贪心NOIp普及组2013 难度普及/提高- 提交该题 讨论 题解 记录 最新讨论 求帮忙指出问题! 我这么和(diao ...
- 中断是CPU的机制
中断是CPU的机制,不管运行的是什么操作系统,只有是运行于x86架构,IDT结构式必然存在的.IDT表中的ISRs应该有操作系统提供
- PAT1053. Path of Equal Weight
//之前一直尝试用vector存储path,但是每次错误后回退上一级节点时不能争取回退,导致探索路径正确,但是输出不正确,用参数num,标记前一个路径点的位置传递参数,就好多了 //其中在输入时就将后 ...
- Dede后台验证码不显示解决方法详解(dedecms 5.7)
今天朋友问我他本地与服务器上安装了dedecms5.7无法显示验证码,一般这种情况很少见,一般情况就是服务器设置问题,还有临时目录的权限问题 Dede后台验证码不显示或不正常分三种情况,下面来逐一分析 ...
- ASP.NET的SEO:目录
ASP.NET的SEO:基础知识 ASP.NET的SEO:Global.asax和HttpModule中的RewritePath()方法--友好的URL ASP.NET的SEO:正则表达式 ASP.N ...
- Android WebRTC 音视频开发总结(四)-- webrtc传输模块
在介绍WebRTC通讯之前我们先来看一个P2P视频聊天包括的主要过程,转载请说明出处(博客园RTC.Blacker): 音视频数据采集->编码->发送->接收->解码-> ...
- JS兼容getElementsByClassName
getElementsByClassName是通过class来获取DOM,但是IE8及以下不能兼容.这里做了一下兼容性. HTML: <div class="pox"> ...
- POJ C程序设计进阶 编程题#3:运算符判定
编程题#3:运算符判定 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB 描述 两个 ...
- POJ C程序设计进阶 编程题#2:四大湖
编程题#2:四大湖 来源: POJ(Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB 描述 我国有4大 ...