许下小小心愿,奔赴我的星辰大海。博客之旅从今日开始!
C语言结构:1.顺序结构;2.选择结构;3.循环结构
1.顺序结构
基本结构,不作赘述。
2.分支结构
2.1 if语句
一般形式: if(语句1(判断条件——输出真假,0为假,非0为真)) 语句2;
else if(语句3(判断)) 语句4;
else 语句5;
Tip:写代码要养成良好习惯,减少语法错误的出现,即养成良好的代码书写风格
注意点1
这是不良好的代码输入风格
#include <stdio.h>
int main()
{
int a = 0;
int b = 2;
if(a == 1)
if(b == 2)
printf("good night\n");
else
printf("good evening\n");
return 0;
}
上述代码无输出结果,需要注意到的是else会与距离最近的未匹配的if相匹配,而与缩进形式无关
进行格式修改后得到相同效果的代码
#include <stdio.h>
int main()
{
int a = 0;
int b = 2;
if(a == 1)
if(b == 2)
printf("good night\n");
else
printf("good evening\n");
return 0;
}
注意点2
尽量不省略if else等关键字,并且养成使用“{}”的习惯,使得代码更加清晰
if(condition){
return x;
}
return y;
if(condition)
{
return x;
}
else
{
return y;
}
二者的输出无区别,但是明显感觉第二种更加清晰
注意点3
一个很低级的错误,即=与==的混淆
if(num = 5)
{
printf("beautiful\n");
}
if(num == 5)
{
printf("beautiful\n");
}
if(5 == num)
{
printf("beautiful\n");
}
可以看出第一种是错误的写法,=是赋值的意思,==是判断的意思,而为了避免这种错误出现,可以写作5 == num的形式,这样如果写成5 = num,则会因为常量不可以赋值而报错
2.2 switch语句
一般形式: switch(整形表达式)
{
case 整型常量:
执行语句;
break;
default
执行语句;
break;
}
在switch语句中case作为入口,而break作为出口,见不到break便会一直顺序执行。default作为另一关键字,个人理解与if语句中的else作用相似,即无case与之对应即执行default的代码块。
int main()
{
int a;
scanf("%d",&a);
switch(a)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("工作日\n");
break;
case 6:
printf("休息日\n");
break;
case 7:
printf("休息日\n");
break;
default:
printf("输入错误\n");
break;
}
return 0;
}
对于该代码,当输入为1||2||3||4||5时输出为工作日,当输入为6||7时输出为休息日,当输入其他时输出“输入错误”字样。
本文为学习C语言心得与笔记记录,部分举例来源于B站C语言教学up主鹏哥