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循环(使用最多) 特点:在给定的条件成立时,反复执行某程序段,直到条件不成立为止. 给定的条件为循环条件,反复执行 ...
随机推荐
- C# 特性Attributes 和反射
一,Attributes 类新建一个子类,DetailAttributes 二, 在类的属性声明上面加Attributes public class testAttributes { [Detail( ...
- DataGridview焦点不移开不保存数据问题
this.datagridLeft.ClearSelection(); this.datagridLeft.Refresh(); this. ...
- JS常用的设计模式(15)—— 职责链模式
职责链模式是一个对象A向另一个对象B发起请求,如果B不处理,可以把请求转给C,如果C不处理,又可以把请求转给D.一直到有一个对象愿意处理这个请求为止. 打个比方,客户让老板写个php程序.老板肯定不写 ...
- leetcode 112
112. Path Sum Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that ...
- sqlite3_exec函数的使用
sqlite3_exec函数的使用 sqlite3数据库是一个小型的关系型的数据库,以文件的方式存在,打开文件即是打开数据库,它小巧且功能强大,在嵌入式领域内使用很广.现在就介绍一下其中一个重要函数的 ...
- rhythmbox插件开发笔记1:简介&入门
rhythmbox是gnome下一款开源的音乐播放软件.ubuntu和fedora的桌面环境中均默认安装了rhythmbox. rhythmbox架构非常灵活,几乎所有地方都可以用插件来修改.用户想实 ...
- SpringMVC与HTML页面
springMVC返回html页面 spring-mvc.xml配置: <bean id="viewResolver" class="org.springfram ...
- HTML5应用之时钟
利用HTML5的Canvas API可以完成我们以前意想不到的动画效果,以前我们想在网页上放置一个时钟,需要先用flash工具制作一个钟表,并写上复杂的JavaScript代码,然后载入到页面中.而H ...
- Linux下vi编辑器粘贴复制剪切功能
RedHat 9.0 Linux下vi编辑器实现简单的粘贴复制剪切功能": 如果想把文件内的第三行内容黏贴到第十五行: 1.进入你的文件,(处于命令模式,而不是编辑模式) 2.将你的光标移到 ...
- linux下source命令的基本功能
source命令用法:source FileName作用:在当前bash环境下读取并执行FileName中的命令.注:该命令通常用命令“.”来替代.如:source .bash_rc 与 . .bas ...