大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入知识整理复习模式。若有错误,请多多指教。
还是接着上一期的内容讲,若没有看上期的小伙伴可以去上期看看。满满的干货呦
C语言期末复习版(基础知识梳理总结)一
目录
大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入知识整理复习模式。若有错误,请多多指教。
概述:
1.写本篇博客的目的是给新学c的友友们整理一下c语言的基本知识点。在期末考试之前能有一份参考文章。从而发现自己那部分不足,再另加训练。祝大家期末取个好成绩。
2、本篇博客在网上查找了很多内容,同时也参考一些书籍,以及老师的PPT,还有一些文章。若有侵权,请与我联系。
3、创作不易,如果你觉得同学〖森〗写的内容对你有帮助的话就点赞收藏关注支持一下小主吧!期待与你的下一次相遇。
思维导图

六、选择语句
思维导图

(一)定义:
根据条件是否满足而决定执行不同的操作,这种程序结构称为选择结构。
例如:

由于x的取值不同,所以y对应的表达式也不同。
(二)if语句

1、基本形式
if(表达式)
语句; //语句为一句时。
if (表达式)
{
复合语句A; //语句为多句时。
}
//例如
if(x>0)
y=x*x+1; //注意若if控制的语句不是一句应该加上大括号。
若表达式为真(非零),就执行if下的语句。
2、【例题】

先自己思考喔。
#include<stdio.h>
int main()
{
float x = 0, y = 0;
scanf("%f", &x);
if (x > 0)
y = x * x + 1;
if (0 == x) //注意不要打成一个等号。一个等号是赋值,两个等号才是判断。
y = 0;
if (x < 0)
y = x * x - 1;
printf("y=%.2f\n", y);
return 0;
}
(三)、if else

1、基本形式
if(条件表达式)
{
复合语句A; //语句为多句时,单句可省略大括号。
}
else
{
复合语句B; //语句为多句时,单句可省略大括号。
}2、【例题】
判断两个整数大小,并打印出较大的整数。
//判断两个整数大小,并打印出较大的整数。
#include<stdio.h>
int main()
{
int a = 0, b = 0;
scanf("%d %d",&a,&b);
if (a > b)
printf("%d", a);
else
printf("%d", b);
return 0;
}(四)if 语句嵌套
1、基本形式
在 if 语句中又包含一个或多个 if 语句称为 if语句的嵌套。
if(表达式1)
{
if(表达式2)
{
复合语句1;//if体
}
else
{
复合语句2;//else体
}
}
else
{
if(表达式3)
{
复合语句3;
}
}注:
1)在嵌套结构中会有多个“if”与多个“else”关键词,但每一个“else”都有一个与之对应的“if”郎君。else与前面最近的未配对的if向匹配。(近水楼前先得月吗,至于未配对也很容易理解。你找另一半也不是找单身的吗)
2)if-else,if都可看做一个语句。
2、【例题】

#include<stdio.h>
int main()
{
int x, y;
scanf("%d", &x);
if (x <= 0)
if (x < 0)
y = -1;
else
y = 0;
else
y = 1;
printf("x=%d,y=%d\n", x, y);
return 0;
}
本题是if体里嵌套if-else,先讨论x<=0,在if体内再讨论x<0 和 x=0两种情况。
注意:
1)适当的使用{}可以使代码的逻辑更加清楚。
2)代码风格很重要。
(五)else if多分支语句
1、基本形式
if(表达式1)
{
复合语句a;
}
else if (表达式2)
{
复合语句b;
}
else
{
复合语句c;
}2、【例题】

#include<stdio.h>
int main()
{
int x, y;
scanf("%d", &x);
if (x < 0)
y = -1;
else if (0==x)
y = 0;
else
y = 1;
printf("x=%d,y=%d\n", x, y);
return 0;
}
本题是把x<0,x=0,x>0;分三种情况讨论。
(六)条件运算符
1、一般形式
表达式1 ? 表达式2 : 表达式3
2、执行过程
如果表达式1为真,则条件表达式取表达式2的值,否则取表达式3的值。
3、【例题】
if (a>b) max=a;
else max=b;
max=(a>b)?a:b;这两个代码都是求最大值的,效果一样。
学习完了赶紧去练习吧!