C语言(5)

分支和循环都是流程控制语句,它们都可以让程序里的语句不再从上到下顺序执行

goto语句也是流程控制语句
它可以把任何语句指定成下一条语句
尽量不要使用这条语句

循环里包含其他循环的结构叫做多重循环
多重循环可以用来在程序里得道多组相关数字
外部循环变量变化慢,内部循环变量变化快

while关键字也可以用来编写循环
for关键字编写的循环和while关键字编写的循环完全可以相互替代
不容易用for关键字编写的循环就可以用while关键字编写
while关键字编写
while循环格式如下
while(逻辑表达式){
反复执行的语句
}
这个格式表示反复执行大括号里面的语句直到逻辑表达式结果为假
如果while循环的逻辑表达式永远为真就成为了死循环
while循环里也可以执行逻辑表达式的计算和大括号里面的语句
while循环开始时先计算逻辑表达式的结果
如果第一次计算逻辑表达式的结果就是假的
则循环立刻结束,这个时候大括号里的语句没有机会执行
do…while关键字也可以用来编写循环
do…while循环格式如下
do{
反复执行语句
}while(逻辑表达式);
do…while循环小括号后面必须用分号结束
do…while循环也是交替执行逻辑表达式的计算和大括号里面的语句
do…while循环首先执行大括号里面的语句
do…while循环可以保证至少把大括号里面的语句执行一次

用户可以在键盘上输入的数字首先进入输入缓冲区,scanf标准函数从输入缓冲区里获得数字并记录到存储区里
先进入输入缓冲区的数据必须首先被处理
如果用户输入的某些数据程序无法处理,程序就得不到用户以后输入的程序

一下两条语句可以把输入缓冲区里第一个‘\n’字符和它前面的内容都删除(相当于删除用户某一次输入的所有内容)
scanf(“%*[^\n]”);
scanf("%*c");

printf标准函数把要显示的内容放在输出缓冲区里,计算机在合适的时候把输出缓冲区里的内容显示在屏幕上
在以下四种情况下计算机把输出缓冲区里的内容显示在屏幕上
1.如果输出缓冲区里包含‘\n’字符就把它前面的内容显示在屏幕上
2.程序结束后计算机会把程序放在输出缓冲区里的内容显示在屏幕上
3.当输出缓冲区被充满的时候他里面的内容会显示在屏幕上
4.可以室友fflush(stdout)语句强制把输出缓冲区里的内容显示在屏幕上

数组用来代表内存里一组连续的同类型存储区
这些存储区叫做数组的元素
声明数组时除了提供类型名称,数组名称之外还需要提供一个整数用来表示数组里的存储区个数
数组里存储区个数不能改变(声明的时候包含多少个存储区就只能永远包含这么多个存储区)
数组通常不会作为整数使用,一般一次只使用其中的某个存储区
数组里每个存储区都有一个编号,这个编号叫做数组的下标
有效下标的范围从0开始到存储区个数
减一为止(超过范围的下标不可以使用)
数组名称加下标可以表示数组里的存储区
可以编写for循环依次处理数组里的所有存储区
循环变量代表数组的所有有效下标

数组应该进行初始化
初始化数组的时候需要把初始化数据写在一对大括号的中间,相邻数字之间用逗号分开
如果初始化数据个数比存储区个数多就省略后面的初始化数据
如果初始化数据个数比存储区个数少就把后面的存储区内容初始化为0
如果初始化数据个数和存储区个数一样就可以省略数组声明里的存储区个数

数组名称不能代表存储区,所以不能被赋值
数组名称可以代表里第一个存储区的地址

假设有如下数组
int arr[5];
0 1 2 3 4 下标
arr **** **** **** **** ****
^
*
*
arr

可以对数组名称进行sizeof计算,计算结果
是数组里所有存储区的总大小

谢谢

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值