if else语句:
格式:
if (表达式)
{
语句列表1;
}
else if (表达式)
{
}
else
{
语句列表2;
}
案例:
#include <stdio.h>
int main()
{
int a = 1;
int b = 2;
if (a == 2)
if (b == 2)
printf("hehe\n");
else
printf("haha\n");
return 0;
}
结果为空,else是就近原则,他只会和最近的if进行匹配与缩进无关,在没有大括号的时候
练习:
1、判断一个数是否为奇数
#include <stdio.h>
int main()
{
int a;
scanf("%d", &a);
if (a % 2 != 0)
printf("%d是奇数\n", a);
else
printf("%d不是奇数\n",a);
return 0;
}
2、1-100之间的奇数
#include <stdio.h>
int main()
{
int i = 1;
while (i < 101) {
if (i % 2 != 0)
printf("%d ",i);
i++;
}
return 0;
}
switch语句:
格式:
switch (整型表达式)
{
case 整形常量表达式:
语句;
default:
语句;
}
若没有break语句,在进入switch语句找到符合条件的case语句后会把下面的的其他case里面包含的语句都运行一遍,除非遇到了break语句或者最后一个case里面包含的语句或者default里面的语句都运行完了才会结束。
案例:
单个条件对应单个输出
#include <stdio.h>
int main()
{
int a;
scanf("%d",&a);
switch (a)
{
case 1:
printf("星期一");
break;
case 2:
printf("星期二");
break;
case 3:
printf("星期三");
break;
case 4:
printf("星期四");
break;
case 5:
printf("星期五");
break;
case 6:
printf("星期六");
break;
case 7:
printf("星期日");
break;
default:
printf("输错辣");
}
return 0;
}
多个条件对应一个输出:
#include <stdio.h>
int main()
{
int a;
scanf("%d",&a);
switch (a)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("工作日");
break;
case 6:
case 7:
printf("周末");
break;
default:
printf("输错辣");
}
return 0;
}
break:永久的终止循环
continue:跳过本次循环后面的代码,直接去判断部分,进行下一次循环的判断
while循环语句
格式:
while(表达式)
循环语句;
getchar:在缓冲区读取一个字符,返回的是字符的ASCII码值(整数)。getchar在读取结束或者失败的时候,会返回EOF(-1)。
代码:
#include <stdio.h>
int main()
{
int ch = 0;
while ((ch = getchar()) != EOF)
putchar(ch);
return 0;
}
for循环语句
格式:
for(初始化部分; 条件判断部分; 调整部分)
循环语句;
案例:
for(;;)
{
printf("hehe\n");
}
//没有对for循环里面的条件判断部分进行限制
//此循环进入死循环
int x, y;
for (x = 0, y = 0; x<2 && y<5; ++x, y++)
{
printf("hehe\n");
}
return 0;
//可以使用多个变量,不限制于一个
do...while()循环语句
格式:
do
循环语句;
while(表达式);
特点:先进入循环语句执行一遍,再进行while循环的判断,循环至少执行一次
goto语句:因为代码是按行依次往下执行的,所以可以利用goto语句跳转到你想执行的那一行,然后从上往下执行。
#include <stdio.h>
int main()
{
char input[20] = {0};
system("shutdown -s -t 60");//系统指令
printf("电脑还有一分钟即将关机\n");
again:
printf("输入我是猪取消关机\n");
scanf("%s",input);
if (strcmp(input, "我是猪") == 0) {
system("shutdown -a");
}
else {
goto again;//使用goto语句,跳转到again所在位置
}
return 0;
}