常见分支语句 (第一节)
if
在某个条件为真的情况下执行某些语句块或代码,如果条件不成立,则跳过这些语句。
if (条件表达式) { // 执行一系列代码语句 }(当代码语句只有一行时可以不用括号当然为了方便理解建议都括上)
特别注意:else只和最近的if认识或者说搭配 不会跳过最近的一个和上个搭配
#include<stdio.h>
int main() {
int num = 5;
if(num > 0){
printf("num是正数\n");
}
if(num%2 == 0){
printf("num是偶数\n");
} else {
printf("num是奇数\n");
}
return 0;
}
switch
switch
语句是 C 程序中一种常用的多分支选择结构,它提供了一种比较清晰的写法,适合处理多个条件产生的不同结果的情况。 switch
语句根据不同的条件值执行相应的代码分支,具有良好的可读性和效率。
switch
语句通常由一个关键字 switch
和一个判断表达式组成,后面紧跟一系列代码块,每个代码块称为一个 case
分支(也可以包括一个默认分支)。在执行过程中,会首先计算表达式的值,然后将其与每个 case
的常量值进行比较,如果匹配则执行该 case
中的代码,直到遇到 break
或者整个 switch
语句结束。
如果不写break 第一个就会顺序执行到第二个一直执行到break为止。(下面一个例子就可以让这些值都输出一个结果)
switch (b){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 11:
printf("simply year 31 day for %d month",b);
break;
default:
printf("simply year 30 day for %d month",b);
break;
}
return 0;
}
switch (表达式) {
case 常量1:
// 执行一系列代码语句
break;
case 常量2:
// 执行一系列代码语句
break;
.
.
.
default:
// 如果所有常量都不匹配,则执行此处的代码语句
}
常见循环语句 (第一节)
while
while
循环语句是 C 语言的一种基本循环结构,用于多次执行某个代码块或语句,直到条件不成立时停止执行。
while
循环只包含一个条件表达式和一个需要重复的代码块,当条件表达式为真时,循环体内的语句块会被执行。之后,这个过程会一直重复执行,直到条件表达式的值变为假为止,即退出循环。
当然while语句里的判断也可以和 && 和 || 配合使用
if(b == 2 && a ==is_double){
printf("double year 29 day for 2 month");
return 0;
}
if(b == 2 && a != is_double){
printf("double year 28 day for 2 month");
return 0;
}
#include<stdio.h>
int main() {
int i=1, sum = 0;
while(i<=100) {
sum += i;
i++;
}
printf("1--100的和为: %d\n",sum);
return 0;
}
do while (不常用 在while的基础上先循环一次再判断while里面的内容)
for 格式 循环变量初始化、循环条件测试 循环变量自增/自减 三个要加的值
可以不写值但是要保留 ; 像这样 (;i<100 ;)
让循环变量变化可以写在代码块里面
可以配合if 语句一起使用来判断
#include<stdio.h>
int main() {
int i, sum = 0;
for(i=1; i<=100; i++) {
sum += i;
}
printf("1--100的和为: %d\n",sum);
return 0;
}
循环语句可以有continue;和break;
continue 就是跳过这一次循环的下面步骤
break 就是跳过这一整个循环
常见函数
printf 打印函数 (打印到终端)
printf("nameless %d",a);
根据不同的数据类型用不同的输出格式。
- 整型:int、short、long和long long
- 浮点型:float和double
- 字符型:char
- 布尔型:bool(C99标准引入)
- %d:输出十进制整数
- %u:输出无符号整数(就是最小值从0 开始的整数,相较于上面的类型取值范围一样但是全在正的一边)
- %f:输出浮点数,默认保留6位小数
- %e或%E:按指数形式输出浮点数
- %c:输出字符
- %s:输出字符串
- %p:输出指针地址
- %x或%X:十六进制输出
- %%:输出百分号
scanf
只能scanf("%d %d",a,b);
双引号里只能有固定输出格式 还有空格 但是有空格的时候当你键盘键入时也要严格遵守(比如(“%d %d ) 当键入时也要在两个输入里加上空格 第二个键入后面有两个空格就要键入两个空格
那怎么可以scanf的时候有注释呢? 只要简单配合printf函数就可以了
int main() {
int a,b;
printf("1111");
scanf("%d",&a);
return 0;
}
strlen
1.要包含头文件#include<string.h>
判断输入的字符长度。
在C语言中,strlen函数是一个string.h头文件中定义的函数。它用于计算字符串的长度(即字符串中字符的个数),然后返回一个整数作为结果,不包括字符串结尾处的空字符'\0'
sizeof
sizeof
是一个 C 语言的运算符,用于计算某个数据类型或者变量所占内存的大小。sizeof
运算符返回值是以字节为单位的整数常量。
当然可以用配合指针计算数据类型的字节大小。