概述
第二章 选择结构
if-else结构
if(){}
else
关系运算符及表达式
- 优先级大于算算术
- 双目运算符
- 从左向右
理解
if语句的()内其实是在判定0或1,比如下列语句:
if(a==b)
若a = b,则表达式“a == b”为真,返回值为1,执行if后的内容;反之为假,返回值为0,不执行if后的内容。
常用关系运算符
大于等于:>=
小于等于:<=
小于:<
大于:>
等于:==
常用逻辑运算符
与 &&
或 ||
非 !
短路原则:“&&”两端任意一端值为0,则另一端不被执行;“||”两端任意一端值为1,则另一端不被执行。
运算符优先级总结:
(1)/%
(2)±
(3)<=>!
(4)&&
(5)||
举例:ab+a/b>=1 && a*b<=10 || a=b
例题:比较大小
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a,b;
printf("Please input a and b:%d %d",a,b);
scanf("%d%d",a,b);
if(a>b)
{
printf("The bigger one is:",a);
}
else if(a==b) printf("the same");
else printf("The bigger one is:",b);
}
例题:成绩分层
#include<stdio.h>
#include<stdlib.h>
int main()
{
int score;
char level;
printf("Input your score:");
scanf("%d",&score);
if(score>=90) level = 'A';
if(score>=80 && score<90) level = 'B';//else if(score>=80)
if(score>=70 && score<80) level = 'C';//else if(score>=70)
if(score>=60 && score<70) level = 'D';//else if(score>=60)
if(score<60) level = 'E';//else
printf("Your level is:%c",level);
return 0;
}
对于上述代码,如果输入的成绩不在0-100的范围内
if(score>=0 && score<=100) {}
若比较两个float类型变量是否相等
if(fabs(a-b)<1e-4)
以上代码的意义为:如果((a-b)的绝对值小于10的-4次方)
if中使用表达式的拓展
if(a+b) //a+b=1 执行if结构中语句;a+b=0 不执行
if(a%b) //a%b=1 执行if结构中语句;a%b=0 不执行
if(a) //a=1 执行if结构中语句;a=0 不执行
if 可理解为判断其中的表达式为true(1) OR false(0)
switch结构
#include<stdio.h>
#include<stdlib.h>
int main()
{
int n;
scanf("%d",&n);
switch(n)
{
case 1:
printf("case1n");
break;
case 2;
printf("case2n");
break;
case 3:
printf("case3n");
break;
default:
printf("defautn");
}
}
- 注意:
- 值为整数类型
- case值各不相同
- default可在任意位置
- case中有break
- 不同case中定义的变量不能继承
类型强转
#include<stdio.h>
#include<stdlib>
int main()
{
float a=1.11,b=1.07;
int c=(int)(a-b);
printf("%d",c);
return 0;
}
##第二章完##
整理人:newenergy_freshman
整理时间:2021/5/26
基础部分参考:《C语言程序设计与应用》人民邮电出版社
拓展部分参考:《C Primer Plus》人民邮电出版社
本资料仅可作学习用,禁止用作商业用途,转载请注明出处。
如有错误敬请指正!谢谢!
最后
以上就是彪壮母鸡为你收集整理的C语言学习笔记(三)选择结构第二章 选择结构的全部内容,希望文章能够帮你解决C语言学习笔记(三)选择结构第二章 选择结构所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复