您的位置:首页 > 编程语言 > C语言/C++

黑马训练营--IOS学习---C语言基础学习3

2014-10-17 00:28 176 查看
if条件语句

在书写条件是最好将常量放在前面变量放在后面,以免出现类似情况

if(a=0) 则相当于if(0) 无法起到判断的作用 且编译时不会报错

if(0=a) 由于常量不能进行赋值因此编译时系统会报错

同样如果在程序中的赋值语句中不小心将

a=1 写成 a==1 此时系统不会报错,但此时无法完成对变量a的赋值操作

作用域不明确错误需注意

例如

if(10>6) if(10>6)

int a=5; 错误 { int a = 5; } 正确

此种情况下 变量a的作用域不明确

C语言检查作用域是通过{ }来进行的,如果要在if后面的语句中定义新的变量必须用大括号

因此:if语句中最好使用大括号标明作用域

switch 只适用于等于具体的值 if 适用于符合某个范围的所有值

if 与switch之间的关系

1、if语句能完成的功能,switch并不一定能完成

2、switch能完成的功能,if一定能完成

3、有些情况下,if与switch 完全等同

while循环语句中一定要注意 判断条件(其中的变量)每次每次都应改变,否则就成了无线循环

continue:跳出本次循环进入下一次循环

break:跳出循环体 不再进行循环操作

while和do while 的区别

1、很多情况下,while和do while 可以互换

2、while特点:如果一开始的条件不成立,永远不会执行循环体

do while特点“不管一开始条件是否成立,都会执行一次循环体

for语句:

for(语句1;条件;语句2)

{

循环体

}

语句1:初始化语句(最好携程 int i=0 定义局部变量节省内存空间)

语句2:增量语句(执行完循环体后在执行的语句)

1、for一开始就会执行一次语句一(整个for循环只会执行一次)

2、判断条件是否成立

如果条件成立,就会执行一次循环体,

然后执行语句2,再次判断条件是否成立

for(int i=0;i<5;i++)

{

int i=10;

printf("%d",i);

}

结果i=10 共输出5次

无错误 两个 i的作用域不同

for(int i=0;i<5;a++)

{

int a=10;

}

错误,a的作用域仅为大括号内(i作用域为for语句+大括号内)

输出语句中,要输出的变量的值 若在程序中多次定义,则根据就近原则

最简单的for循环

for(;;);

最简单的while循环

while(1)

注意:

在需要用户键盘输入的情况下,一定要添加判断语句,判断用户输入的数据是否合法

break:

1、适用场合

①switch语句:退出整个switch语句

②循环结构:退出整个循环语句

*while

*do while

*for

2、注意点:

只对最近的循环结构有效(多重嵌套的情况下)

continue

1、适用场合

循环结构:结束当前这次循环体,进入下一次循环体

*while

*do while

*for

2、注意:

只对最近的循环结构有效(多重嵌套的情况下)

问题二、

注意 if 与 switch语句中出现的作用域不明确的问题

解决方法,添加大括号if{}else{} switch{case{} case{}}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: