c语言分支与循环

(1.)if语句

c语言是一门结构化的程序设计语言,其中支持三种结构,这三种结构就是顺序结构,旋转结构,循环结构。

首先我们要讲的if语句就是一个选择结构,if在英语中的意思是如果,那么我们就可以利用if语句来写一些选择语句。

首先if语句的语法形式是这样的

if(表达式)
语句

表达式为真则语句执行,若为假,则语句不执行,在c语言中0为假而不为0则为真,由此可以写出一个判断奇数与偶数的代码:

#include <stdio.h>
int main()
{
	int a = 0;
	scanf("%d", &a);
	if(a % 2 == 0)
	{
		printf("为偶数");
	}
	else
	{
		printf("为奇数");
	}
}

最后的执行结果如下:

很清楚的看到利用if语句我们实现了奇数与偶数的判断,if是如果,那么else就是除if以外所有的情况。但是要注意单一的if语句只能执行一条语句,若要执行多条语句则要用{}来将语句包括起来

(2.)if的循环嵌套

说完了if语句,那么我们可能会有一点疑问,如果遇到多重判断怎么办,那么这个时候if的循环嵌套便派上了用场,在if else语句中,else可以与另一个if语句连用,构成多重判断。通过一个题目来体现:输入一个整数,判断输入的整数是0或正数或负数

 

#include <stdio.h>
int main()
{
	int a = 0;
	scanf("%d", &a);
	if (a == 0)
	{
		printf("是0");
	}
	else if (a > 0)
	{
		printf("为正数");
	}
	else
	{
		printf("为负数");
	}
	return 0;
}

在上述程序中我便用到了if的循环嵌套,在a的判断中利用if与else if来进行多重判断。

(3.)switch语句

除了if语句以外,c语言还提供了switch语句来实现分支结构,通俗来讲switch语句更像是一种特殊的if else 结构,用于判断条件有多种结构的情况。它把多重的else if 改成了更易用、可读性更好的形式,它的结构是:

switch(expression)
{
  case value1: starement
  case value2: starement
  default : statement 
}

expression表示不同的值,但是值得注意的是switch后的expression必须是整型表达式,case之后的值也必须是整形常量表达式。

#include<stdio.h>
int main()
{
	int a = 0;
	scanf("%d", &a);
	a = a % 2;
	switch (a)
	{
	case 1: printf("为奇数");
	case 0: printf("为偶数");
	}
	return 0;
}

这段代码就将奇数与偶数的判断进行了简化,从而节省运行时间并且更加方便的进行编辑。

(4.)while循环

c语言中提供了三种循环语句,while就是其中一种,其实while语句的语法结构和if语句非常相似。

它的结构是如下这样:

while(表达式)
语句;

 接下来我用while循环来打印1~100的数字

#include<stdio.h>
int main()
{
	int i = 0;
	while (i < 100)
	{
		i++;
		printf("%5d", i);
	}
	return 0;
}

 

可以很清晰的看到1~100内的数字被打印了出来,这就是while循环。

(5.)for循环

 for循环是三种循环中使用最多的,for循环的语法形式如下:

for(表达式1;表达式2;表达式3)
语句

表达式1用来循环变量的初始化,表达式2用于循环结束条件的判断,表达式3用于循环变量的调整。这样说可能会有人不懂,那么还是老样子用一个题目来讲解for循环:

#include<stdio.h>
int main()
{
	for (int a = 0; a <= 100; a++)
	{
		printf("%5d", a);
	}
	return 0;
}

这段代码还是在屏幕上打印1~100的值,这段程序甚至较while更加精简,是的,它的变量直接在for之后进行初始化,不需要提前初始化,这就导致程序更加精简与具有可读性,那么我们来看看结果是否是打印1 ~100的数字

结果显而易见。在分析代码的时候不免发现,每一个循环都是一次一次进行的,而不是一次全部进行完全,也就是说,程序运行时先分析a的值,为1小于100则执行打印程序,直到101时没有满足小于等于100的条件则程序运行结束,最后打印出1~100之间的数字。

(6.)do while循环

在循环语句中do while 循环语句使用的最少,它的语法如下:

do
语句;
while(表达式);

还是上面的题目,这次我们用do while循环来执行:

#include<stdio.h>
int main()
{
	int a = 0;
	do
	{
		printf("%5d", a);
		a++;
	} while (a <= 100);
	return 0;
}

 

相比之下,do while循环结构就显得复杂一些,所以在一般情况下do while循环的使用率就不如上述几个循环。
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值