目录
选择结构
if判断
基本结构:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int i = 0;
scanf("%d", &i);
if (i >= 18)
{
printf("你已经成年\n");
printf("今年你 %d 岁\n",i);
}
else
{
printf("你还未成年\n");
printf("今年你 %d 岁\n", i);
}
return 0;
}
if else 嵌套
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int i = 0;
scanf("%d", &i);
if (i < 18)
printf("未成年\n");
else
{
if (i == 18)
printf("刚好成年\n");
else
printf("已经成年\n");
}
return 0;
}
else if 结构
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int i = 0;
scanf("%d", &i);
if(i<=18)
printf("未成年\n");
else if(i==18)
printf("刚好成年\n");
else if(i>18)
printf("已经成年\n");
return 0;
}
switch判断
基本结构
switch (expression) {
case value1: statement
case value2: statement
default: statement
}
#include <stdio.h>
int main()
{
int day = 0;
scanf("%d", &day);
switch(day)
{
case 1:
printf("星期⼀\n");
break;
case 2:
printf("星期⼆\n");
break;
case 3:
printf("星期三\n");
break;
case 4:
printf("星期四\n");
break;
case 5:
printf("星期五\n");
break;
case 6:
printf("星期六\n");
break;
case 7:
printf("星期天\n");
break;
}
return 0;
}
#include <stdio.h>
int main()
{
int day = 0;
scanf("%d", &day);
switch(day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("⼯作⽇\n");
break;
case 6:
case 7:
printf("休息⽇\n");
break;
}
return 0;
}
注:case后面必须是整型常量表达式。
break和default
在switch条件语句中,case后面没有break,则会接着往下面依次执行,有可能会多执行其他的case情况,直到遇到break结束。
在switch条件语句中,如果有情况难以用case说明,则使用default统一处理。
操作符
关系操作符
( > < >= <= == != )
关系操作符构成关系表达式——正确等于1,错误等于0.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <time.h>
int main()
{
int a = 5;
printf("%d\n", a == 5);
printf("%d\n", a == 1);
return 0;
}
注:多个关系运算符不宜连⽤!!!
( 5 < 6 < 7 )//错误,将多个关系操作符连用
( 5<6 && 6<7 )//正确
条件操作符
表达式1 ? 表达式2 : 表达式3
真 算 不算
假 不算 算
逻辑操作符
! 取补集
&& 取交集
|| 取并级
注:可能出现短路情况。如果前一步已经能够判断真假,就不进行后面的步骤 。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int i = 0 , j = 5 , k = 8;
int a = i++ && j-- && k++;
printf("%d", j);
return 0;
}
操作符综合范例
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
//闰年:能被4整除,但不能被100整除;
// 能被400整除。
{
int i;
scanf("%d", &i);
if (i % 4 == 0 && i % 100 != 0)
{
printf("是闰年");
}
else if (i % 400 == 0)
{
printf("是闰年");
}
else
printf("是平年");
return 0;
}
循环结构
while循环
#include <stdio.h>
int main()
{
int n = 0;
scanf("%d", &n);
while(n)
{
printf("%d ", n%10);
n /= 10;
}
return 0;
}
for循环
for(表达式1; 表达式2; 表达式3)
表达式1 ⽤于循环变量的初始化
表达式2 ⽤于循环结束条件的判断
表达式3 ⽤于循环变量的调整
break和continue
for 循环中的 break 也是⽤于终⽌循环的,不管循环还需要循环多少次,只要执⾏到了 break ,循环就彻底终⽌。
for 循环中 continue 的作⽤是跳过本次循环中 continue 后的代码,直接去到循环的调整部分。