C语言分支与循环(1)

本文介绍了C语言中的选择语句,包括if...else型和switch型,强调了条件判断在编程中的重要性。同时,文章还提及了default子句在switch语句中的作用。此外,文章还简要讨论了函数的概念,展示了如何通过自定义函数来增强代码的可读性和逻辑性。
摘要由CSDN通过智能技术生成

我们在初步了解了C语言后,现在对它进行深入学习。在我们的日常生活中,时不时会做出选择,而在C语言中也会经常作出选择判断,这也是我们这里所讲的选择语句

一、分支(选择语句)

1、选择

如果你好好学习,校招时拿一个好offer,走上人生巅峰。
如果你不学习,毕业等于失业,回家种地。
这就是选择!
在这里插入图片描述

#include <stdio.h>
int main()
{
int coding = 0;
printf("你会去敲代码吗?(选择1 or 0):>");
scanf("%d", &coding);
if(coding == 1)
{
prinf("坚持,你会有好offer\n");
}
else
{
printf("放弃,回家种地\n");
}
return 0;
}

了解了选择,那么在C语言中选择有哪些类型呢?让我们继续往下看

2、if;if… else型

(1)if型
#include <stdio.h> 
int main()
{
    int a = 0;//定义一个数
    scanf("%d",&a);//给这个数输入一个值
    //判断
    if(a<=60)//如果a<=60,执行if语句,跳过else语句,如果不满足条件则跳过if
    {
    printf("不及格.\n");
    }
    return 0;
}
 

这里看到的其实就是一个if型选择语句,如果a<=60的话就会进去执行if里面的内容,否则就直接跳过if语句。

(2)if…else…型
#include <stdio.h>
int main()
{
    int a = 0;//定义一个数
    scanf("%d",&a);//给这个数输入一个值
    //判断
    if(a<=60)//如果a<=60,执行if语句,跳过else语句,如果不满足条件则跳过if
    {
    printf("不及格.\n");
    }
    else//如果if不成立则执行该语句
    printf("及格.\n");
    return 0;
}

这里是一个if…else…(如果…否则…)型的选择语句,这里看翻译的字面意思大家应该就清楚了,以上面代码为例,如果a<=60那么去执行if里面的语句,切记执行完if语句时会跳过else里面的语句;但是如果a<=60不符合条件也就是a>60,这时候我们跳过if语句去执行else(否则)语句里面的内容。

(3)注意点

接下来我说几个选择语句可能会出错的问题:

1.在if和if…else…判断的()后面不需要加分号(;),否则代码可以运行,但是会出现错误,也可能是数据丢失。

2.在if,else类型的选择函数中,else if判断可以多个,但是if和else的判断语句只能有一个。

3.在判断语句中建议在输出语句外加上{},将多个语句构成单一语句,不然程序会直接报错。

3、switch型

上面我们讲了一个选择函数,那么接下来我将为大家介绍另一个选择函数———switch。

switch相对于if,if…else…型,它在一定程度中比if,else型更加简便,但是与之相对的,switch函数也有属于自己的弊端。那么接下来我将详细的讲解switch函数。

#include <stdio.h>
int main()
{
    int a = 0;
    scanf("%d", &a);
    switch (a)
    {
    case 1://判断
        printf("合格\n"); break;
    case 2:
            printf("不合格\n"); break;
        default:
            printf("重新考试\n");
    }
    return 0;
}

上图就是我们的switch选择函数了,可以看出来,如果对比if类型的选择语句,switch看起来更加的简单明了。

switch后的括号里的a,便是我们输入的a,在这个函数中,a可以输入1,2,3。然后我们就可以到case后面对应的数字处找到我们要打印和输出的语句。类似switch(1)的时候,这个时候我们就去下面寻找case 1:的该处的printf并将它打印。
default则是如果我的a不是1也不是2,那么执行default里面的语句

同时,我们在这里看到了一个新的词语———break。break的作用是用于跳出switch语句,在执行printf后,break跳出switch,最后return 0打印出结果。

不加break的话则会出现以下结果继续往后打印。

在这里插入图片描述

4、default子句

如果表达的值与所有的case标签的值都不匹配怎么办?

其实也没什么,结构就是所有的语句都被跳过而已。

程序并不会终止,也不会报错,因为这种情况在C中并不认为是个错误。

但是,如果你并不想忽略不匹配所有标签的表达式的值时该怎么办呢?

你可以在语句列表中增加一条default子句,把下面的标签

default:
写在任何一个 case 标签可以出现的位置。当 switch 表达式的值并不匹配所有 case 标签的值时,这个 default 子

句后面的语句就会执行。所以,每个switch语句中只能出现一条default子句。但是它可以出现在语句列表的任何位

置,而且语句流会像执行一个case标签一样执行default子句

二、函数的初步接触

这里我们要提到一下函数

如果现在给你一个题目让你计算a+b的值并输出。最简单的便是直接计算,类似:

#include <stdio.h>
{
    int a = 0;
    int b = 0;
    int c = 0;
    scanf("%d%d",&a,&b);//输入a,b的值
    c = a + b;//计算a+b的值
    printf("%d\n",c);
}

而现在我们将使用另外的一种方法,应用一个函数进行计算


#include <stdio.h>
int Add(int x, int y)//第一个int表示返回值为整形,第二和第三个int表示输入的值为整形
{
	return x + y;
}
int main()
{
	int a = 0;
	int b = 0;
	int c = 0;
	scanf("%d%d", &a, &b);
	c = Add(a, b);
	printf("%d", c);
	return 0;
}

这里的Add就是一个我们自定义的一个函数,用来计算和。然后我们又能发现,这样子写又是非常的条理。

所以一定要:在这里插入图片描述

之后呢我们会深入学习函数的,然后这里的选择语句就到这里了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

love you,

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值