第六天 循环 和 数组


C语言的循环语句:
goto  //并不是循环语句 --- 跳转语句 
while
do-while
for 

循环

goto


goto:
   语法:
     goto 标签; //语句标号 

例:

loop为标签  , goto loop 跳传到 loop处   输出  无限循环hello world


     
构成循环的要素:
1.循环体  //反复被执行的代码 
2.结束条件 
3.使循环趋于结束的操作(或语句)
4.循环的初始条件

while 语句

语法:
while (表达式)
{
  语句
}

语义:
  判断 表达式 ,
  真
    执行 语句 
    语句 执行玩之后,继续表达式 判断,
    重复上面的操作,
    直到 表达式为假
  假
    while 结束,程序继续往下

例 

先判断 i 是否小于等于100,真 则执行  num = num + i;假 则结束循环

  for

for(表达式1;表达式2;表达式3)

{

        循环体语句

}

1.求解表达式1

2.判断表达式2

3.真 则执行循环体语句,执行完之后 求解表达式3

4.继续判断表达式

表达式1   //初始条件

表达式2   //循环条件(循环结束条件)

表达式3   //是循环趋于结束的语句

例;

i = 0,判断i<100,真则执行  num = i + num,i++ 后继续判断i<100,进行循环

直到 i<100为假

break 和 continue
 

break 可以用在 switch  while  do...while  for中

作用  跳出本次循环 即 提前结束循环,执行下面的语句

continue; 其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否 执行循环的判定

continue 语句和 break 语句的区别是:continue 语句只结束本次循环,而不是终止整 个循环的执行。而 break 语句则是结束整个循环过程,不再判断执行循环的条件是否成立

数组

数组:
    概念 
    //一组数据 
      一组相同类型的数据的集合 
      一组相同类型的变量的集合 
      数组也是一种数据类型 
应用:
   float h1,h2,h3,...,h30;

应用场景:
    批量的处理多个数据 
    
语法:
    类型说明符 数组名[常量表达式]
      (1)        (2)     (3)
      
说明:
  (1)类型说明符 --- 数据类型 
                  整型 int/short/long/long long 
                  浮点型 float / double /long double 
                  字符型 char
                  
                  作用: 用来说明 该数组中元素的类型                   
  (2)数组名    --- 名字 (标识符)
                   用来代表这个数组 
                   起名字规则 与 之前变量名起名规则一致 
  (3)[常量表达式]
               --- [] //这个就是数组类型 
                   常量表达式  //数组长度 --代表数组中元素的个数
                   注:
                   1. c99标准之后,数组长度 可以是变量 
                      可变长数组         
                      但是,不能初始化 
                   2. 数组长度,可以省略,但是必须要有初始化
                      编译器要根据初始化的值,来推算实际的长度 
                      int len = sizeof(a)/sizeof(int); //计算实际长度                       
                                           
eg:
  int array[10]; //表示此时定义了一个数组 
                 //这个数组中存放的是int型的数据
                 //存放了10个int型的数据 
                 //表示定义了一个可以存放10个int型数据的数组     
                 //理解的角度,相当于一下子定义出10个int型变量 


                 
数组给值:
   1.初始化 
   int a[10] = {}; //{} 初始化器 
   
   //全部初始化 
   int a[10] = {1,2,3,4,5,6,7,8,9,10};
   //部分初始化 ---未初始化的部分会被初始化为0
   int a[10] = {1,2,3,4,5};
   //不初始化   --- 数组中是随机值(垃圾值)
   int a[10]; 
   
   2.赋值 
     循环赋值  
     输入的方式 
   
数组特点:
   连续性 --- 数组空间是一片连续内存空间 
   有序性 --- 数组的元素挨个存放 
   单一性 --- 数组元素类型是同一类型 
   
   

数组元素的引用:
 语法:
   数组名[下标]; //[] 此时表示的是一种运算 --- 数组下标运算 
   
   
   下标含义:
        a[0] //下标表示的是相对于 数组名 偏移了几个元素 
        偏移量  
        a[1]
        a[2]
        ...
        a[9]
   
   数组越界 // int a[5] = {1,2,3,4,5}    a[10]    数组长度为5,不可越界访问a[10]
       
   
   
注意:
 int a[10];
a 所代表的值 数组所占空间的首地址
a 所代表的数据类型 a 代表整个数组类型

a所代表的类型是int[10] ,这就是所谓的 数组类型
int a; //判断标识符所代表的数据类型 ---去掉标识符,剩下就是标识符对应的数据类型 
int a[10];

  • 25
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值