1. int main(){
  2. //2.控制流
  3.  
  4. //2.1 if语句
  5. //1.
  6. if(expression){
  7.  
  8. }
  9. //2.
  10. if(expression){
  11.  
  12. }else{
  13.  
  14. }
  15. //3.能够有0个或是多个else if,最后一个else也可省略
  16. if(expression){
  17. cx
  18. }else if(expression){
  19.  
  20. }else{
  21.  
  22. }
  23. //2.2 switch语句
  24. //1.单行代码
  25. switch(n){
  26. case 0:
  27. printf("000000");
  28. break;
  29. case 1:
  30. printf("111111");
  31. break;
  32. case 2:
  33. printf("222222");
  34. break;
  35. default:
  36. break;
  37. }
  38. //2.多行代码
  39. switch(n){
  40. case 0:{
  41. printf("000000");
  42. printf("000000");
  43. break;
  44. }
  45. case 1:{
  46. printf("111111");
  47. printf("000000");
  48. break;
  49. }
  50. case 2:{
  51. printf("222222");
  52. printf("000000");
  53. break;
  54. }
  55. default:
  56. break;
  57. }
  58.  
  59. //2.3循环结构
  60. //1.while 循环
  61. while(expression){
  62. //dosomething
  63. }
  64. //2.for循环
  65. for(int i=0;i<count;i++){
  66. //dosomething
  67. }
  68. //3.嵌套循环
  69. for(int i=0;i<count;i++){
  70. for(int j=0;j<otherCount;j++){
  71.  
  72. }
  73. }
  74. //4.控制循环结构
  75. //break是直接跳出循环,结束循环,直接開始循环之外的东西
  76. for (int i=0;i<10;i++){
  77. if(i==9){
  78. break;
  79. }
  80. }
  81. //continue 是结束本次循环之后的语句,開始新的循环
  82. for(int i=0;i<10;i++){
  83. if(i==1){
  84. continue;
  85. }
  86. printf("hehheheh");
  87. }
  88. //return 本来不是用来结束循环的。是用来返回函数的,只是也可用于结束循环
  89. //遇到return时循环结束
  90. for(int i=0;i<10;i++){
  91. if(i>2){
  92. return 0;
  93. }
  94. }
  95.  
  96. //2.4 goto语句,进来少用或是不用
  97. //一般也要用在嵌套循环里面
  98. for(int i=0;i<count;i++){
  99. for(int j=0;j<otherCount;j++){
  100. if(i>5){
  101. goto outer;
  102. }
  103. }
  104. }
  105. outer:
  106. printf("结束嵌套了");
  107.  
  108. //3.数组
  109. //3.1定义数组
  110. tyoe arrayName[lenth];
  111. //数组计算地址的时候是
  112. //元素的地址 = 首地址+数组变量所占的内存大小*索引
  113. //3.2数组的赋值
  114. int arr[2] = {1,2};
  115. //3.3使用数组
  116. printf("%d",arr[0]);
  117. //遍历基本类型的数组元素
  118. for(int i=0,length = sizeof(arr)/sizeof(arr[0]);i<length;i++){
  119. NSLog(@"arr[%d]:%d",i,arr[i]);
  120. }
  121.  
  122. //遍历元素类型为指针类型的数组元素、
  123. NSString *arrString = {@"拟好",@"哈哈哈哈"};
  124. for(int i=0,length = sizeof(arrString)/sizeof(arrString[0]);i<length;i++){
  125. NSLog(@"arr[%d]:%@",i,arrString[i]);
  126. }
  127. //输出 拟好 哈哈哈哈 null null
  128.  
  129. //默认赋值为空
  130. int arr[5];
  131. arr[0]=12;
  132. arr[1]= 23;
  133. for(int i=0,length = sizeof(arr)/sizeof(arr[0]);i<length;i++){
  134. NSLog(@"arr[%d]:%@",i,arr[i]);
  135. }
  136. //输出 12 23 0 0 0
  137.  
  138. //3.4多维数组
  139. type arrayName[length][length];
  140.  
  141. float arr[3][4];
  142. int iArr[3][5];
  143.  
  144. //Object-C的二维数组的本质是一维数组,仅仅只是它的数组元素又是一维数组
  145. arr[0]://该数组中再次包括了arr[0][0] arr[0][1]
  146. //二维数组的赋值
  147. int arr2[3][4] = {{2,3,4,4},{2,4,5,6},{3,4,5,6}};
  148. //採用嵌套循环遍历二维数组
  149. for(int i=0,length = sizeof(arr2)/sizeof(arr[0]);i<lenth;i++ ){
  150. for(int j = 0,len=sizeof(arr[i])/sizeof(arr[i][0]);j<len;j++){
  151. printf("%d",arr2[i][j]);
  152. }
  153. }
  154.  
  155. //3.5字符数组,字符串与结束标志
  156. //定义并初始化数组
  157. char cArr[] = {'I','L'};
  158. //遍历字符串数组
  159. for(int i = 0,length=sizeof(cArr)/sizeof(cArr[0])){
  160. NSLog(@"%c",cArr[i]);
  161. }
  162.  
  163. char str[] = "I love Ios";
  164. printf("%s\n",str);
  165.  
  166. char str[20] = "I love Ios";
  167. printf("%s\n",str);
  168.  
  169. }

附加一个关于二位数组的使用实例  c语言版五子棋

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #define NO_CHESS "╋"
  5. #define BLACK_CHESS "●"
  6. #define WHITE_CHESS "○"
  7. #define BOARD_SIZE 15//定义棋盘的大小
  8.  
  9. static char * board[BOARD_SIZE][BOARD_SIZE];//定义一个二维数组来充当棋盘
  10.  
  11. void initBoard(){
  12. int i,j;
  13. //把每一个元素赋值用于棋盘输出
  14. for ( i=0;i<BOARD_SIZE;i++){
  15. for(j = 0;j<BOARD_SIZE;j++){
  16. board[i][j] = NO_CHESS;
  17. }
  18. }
  19. }
  20.  
  21. void printBoard(){
  22. int i,j;
  23. //把每一个元素赋值用于棋盘输出
  24. for (i=0;i<BOARD_SIZE;i++){
  25. for(j = 0;j<BOARD_SIZE;j++){
  26. printf("%s",board[i][j]);
  27. }
  28. printf("\n");
  29. }
  30. }
  31. int main(){
  32. initBoard();
  33. printBoard();
  34. while(1){
  35. int xPos=0;
  36. int yPos=0;
  37. printf("请输入你要下棋的坐标,以x,y的格式:\n");
  38. scanf("%d,%d",&xPos,&yPos);
  39. printf("%d,%d",xPos,yPos);
  40. board[xPos-1][yPos-1] = WHITE_CHESS;
  41. //产生随机数用于下棋的位置
  42. time_t t;
  43. srand((unsigned) time(&t));/*用时间初始化随机函数*/
  44. int pcx;
  45. pcx = rand()%BOARD_SIZE;
  46. int pcy;
  47. pcy = rand()%BOARD_SIZE;
  48. board[pcx][pcy] = BLACK_CHESS;
  49. printBoard();
  50. }
  51. return 0;
  52. }

IOS新手教程(二)-控制流的更多相关文章

  1. WCF 新手教程二

    基本知识: [ServiceContract] Attribute 能够有以下Property 的: CallbackContract 设置callback的类型:Duplicate指Service ...

  2. GitHub 新手教程 二,Windows 版 GitHub 安装

    1,下载地址: https://git-scm.com/download/ 2,信息: 3,选择安装位置: 例如:d:\soft\git 4,选择组件: 5,创建开始菜单: 6,选择Git使用的默认编 ...

  3. C#微信公众号开发系列教程二(新手接入指南)

    http://www.cnblogs.com/zskbll/p/4093954.html 此系列前面已经更新了两篇博文了,都是微信开发的前期准备工作,现在切入正题,本篇讲解新手接入的步骤与方法,大神可 ...

  4. 【OpenCV新手教程之十一】 形态学图像处理(二):开运算、闭运算、形态学梯度、顶帽、黑帽合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/23184547 作者:毛星云(浅墨) ...

  5. 【OpenCV新手教程之十二】OpenCV边缘检測:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/25560901 作者:毛星云(浅墨) ...

  6. Spring MVC新手教程(二)

    第一篇文章宏观讲了Spring MVC概念,以及分享了一个高速入门的样例. 这篇文章主要来谈谈Spring MVC的配置文件. 首先来谈谈web.xml: web项目启动时自己主动载入到内存中的信息, ...

  7. 新手必看,史上最全的iOS开发教程集锦,没有之一!

    最近大火的iPhone XS Max和iPhone XS,不知道有没有同学已经下手了呢?一万三的价位确实让很多人望而却步啊.据说为了赢得中国的用户,专门出了双卡双待的,可想而知中国市场这块“肥肉”人人 ...

  8. swift 雨燕 新手教程

    Apple Swift编程语言新手教程 chox 2014-06-03 文件夹 简单介绍 入门 简单值 控制流 函数与闭包 对象与类 枚举与结构 1   简单介绍 今天凌晨Apple刚刚公布了Swif ...

  9. apple Swift语言新手教程

    Apple Swift编程语言新手教程 文件夹 1   简单介绍 2   Swift入门 3   简单值 4   控制流 5   函数与闭包 6   对象与类 7   枚举与结构 1   ...

随机推荐

  1. 探索WebKit核心(一)------ 新秀开始

    为什么WebKit 现在,研究人员WebKit越来越多的人,我不能逃脱,其中还增加.WebKit也多亏了流行的浏览器和WebOS乱斗.随着Palm WebOS, Chrome OS, Firefox ...

  2. Oracle FGA审计记录的清理步骤

    注意:本文为原创文章,转载请注明出处: http://blog.csdn.net/msdnchina/article/details/38435999 一.确认有哪些fga审计策略, 从select ...

  3. C本学习笔记scanf

    一个.scanf功能介绍             这也是在stdio.h中声明的一个函数.因此使用前必须增加#include<stdio.h>. 调用scanf函数时,须要传入变量的地址作 ...

  4. [Unity3D]Unity3D游戏开发《反对》说到游戏(上)——目标跟踪

    朋友,大家好.我是秦培,欢迎关注我的博客.我的博客地址blog.csdn.net/qinyuanpei. 首先博主要自我反省,过了这么久才来更新博客,这段时间主要是在忙着写期末的作业,所以博主基本上没 ...

  5. CodeCounter代码统计

    今天一天写的,困死了 开发环境:VS2012 + WIN8-x64, MFC CSDN下载链接:http://download.csdn.net/detail/npu_wy/7405577 百度云下载 ...

  6. 数据库管理——安全管理——识别SQLServer中空密码或者弱密码的登录名

    原文:数据库管理--安全管理--识别SQLServer中空密码或者弱密码的登录名 原文译自: http://www.mssqltips.com/sqlservertip/2775/identify-b ...

  7. hdoj1010Starship Troopers (树dp,依赖背包)

    称号:hdoj1010Starship Troopers 题意:有一个军队n个人要占据m个城市,每一个城市有cap的驻扎兵力和val的珠宝,并且这m个城市的占率先后具有依赖关系,军队的每一个人能够打败 ...

  8. table在 点击线条颜色

    效果图: <html> <head> <meta http-equiv="Content-Type" content="text/html; ...

  9. Ignite China微软技术

    首届Ignite China微软技术大会见闻   10.26-10.28,有幸参加微软在中国北京举办的首届Ignite China技术大会.世界那么大,技术那么多,我想去看看. 为期三天的技术大会在小 ...

  10. AndroidSlidingUpPanel 使用控制和简单的分析方法

    滑 - 向上的时间可以飞起来控件的显示区域.分类似至play music有效. 该控件在主界面中有一个例如以下图红色箭头所指的底部触发区域: 该区域点击的时候被隐藏在下方的内容将网上漂移到顶部,直到被 ...