C语言初阶——分支和循环语句

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;
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值