C Prinmer Plus笔记第7章

C Prinmer Plus笔记第7章 C控制语句:分支和跳转

7.1if语句

if(expression)
statement

7.2if else语句

if( expression )
statement1
else
statement2

7.2.1getchar()和putchar()

只处理字符
getchar()函数不带任何参数,它从输入队列中返回下一个字符
例如: ch=getchar();等价于scanf("%c",&ch);
purtchar(ch);等价于printf("%c",ch);

7.2.2 ctype.h系列的字符函数(处理字符的函数)

												表7.1 ctype.h头文件中的字符测试函数 
函数名 如果是下列参数时,返回值为真
isalnum() 字母数字(字母或数字)
isalpha() 字母
isblank() 标准的空白字符(空格、水平制表符或换行符)或任何其他本地化指定为空白的字符
iscntrl() 控制字符,如Ctrl+B
isdigit() 数字
isgraph() 除空格之外的任意可打印字符
islower() 小写字母
isprint() 可打印字符
ispunct() 标点符号(除空格或字母数字字符以外的任何可打印字符)
isspace() 空白字符(空格、换行符、换页符、回车符、垂直制表符、水平制表符或其他本地化定义的字符)
isupper() 大写字母
isxdigit() 十六进制数字符
													表7.2ctype.h头文件中的字符映射函数
函数名 行为
tolower() 如果参数是大写字符,该函数返回小写字符;否则,返回原始参数
toupper() 如果参数是小写字符,该函数返回大写字符;否则,返回原始参数

7.2.3 多重选择 else if

7.2.4else与if配对

else与离它最近的if匹配,除非最近的if被花括号括起来

7.2.5多层嵌套的if语句

形式1:
if(expression)
statement
形式2:
if(expression)
statement1
else
statement2
形式3:
if(expression1)
statement1
else if(expression2)
statement2
else
statement3

7.3 逻辑运算符

										表7.3 3种逻辑运算符
逻辑运算符 含义
&&
||
!

7.3.1备选拼写:iso646.h头文件

如果在头文件包含这个头文件,便可以用and代替&&、or代替||、not代替!

7.3.2 优先级

!运算符的优先级很高,只比圆括号的优先级低。&&运算符的优先级比||运算符高,但是两者的优先级都比运算符低,比赋值运算符高。

7.3.3 求值顺序

逻辑表达式的求值顺序是从左往右。一旦发现有使整个表达式为假的因素,立即停止求值

7.3.4 范围

if(range>=90&&range<=100)
printf(“Good show!\n”);
千万不要模仿数学上的写法:
if(90<=range<=100) //千万不要这样写!
printf(“Good show!\n”);

7.4 一个统计单词的程序

7.5条件运算符:?

expression1 ? expression2 : expression3
如果expression1为真,那么整个条件表达式的值与expression2的值相同;如果expression1为假,那么整个条件表达式的值与expression3的值相同;(真前假后)

7.6 循环辅助:continue和break

7.6.1 continue语句

3种循环都可以使用continue语句。
执行到该语句时,会跳过本次迭代的剩余部分,并开始下一轮迭代。
如果continue语句在嵌套循环内,则只会影响包含该语句的内层循环。

7.6.2 break语句

终止包含它的循环,并继续执行下一阶段。
如果break语句位于嵌套循环内,它只会影响包含它的当前循环。

7.7 多重选择:switch和break

7.7.1 switch语句

switch(整形表达式)
{
case 常量1:
语句
case 常量2:
语句
default:
语句
}
break语句可用于循环和switch语句中,但是continue只能用于循环中。
C语言的case一般都指定一个值,不能使用一个范围。

7.7.2 只读每行的首字符

7.7.3 多重标签

形式:
switch(expression)
{
case labe11:statement1//使用break跳出switch
case labe12:statement2
default :statement3
}
可以有多个标签语句,default语句可选。

7.8 goto语句

7.8.1 避免使用goto

别用就对了

7.9关键概念

猜你喜欢

转载自blog.csdn.net/weixin_42964413/article/details/105747810