【C语言】一篇文章学会使用if语句

一、if语句

在C语言中,提供三种形式的if语句。

1.单分支if语句

   if语句形式:

        if (表达式)  语句S

其流程图如下图所示。 

    执行过程:系统首先计算表达式的值,如果表达式结果不为0,则执行语句S;否则跳过语句S,继续执行其后的其他语句。

        说明:

        (1)“if”是C语言的关键字;“表达式”是任意合法的C语言表达式,可以是关系表达式或逻辑表达式,也可以是任意的数值类型(包括整型、实型、字符型等);表达式两侧括号不可以省略。

        (2)语句S可以是一条语句,也可以是任意合法的复合语句,其位置比较灵活,可以直接出现在if同一行的后面,也可以出现在if的下一行。如果语句S只是一条语句,可以直接写,也可以加上{},如果是多条语句一定要用{}把这些语句括起来

 

【例1】计算并输出一个整数的绝对值。

【分析】计算一个整数的绝对值需要判断这个数是否小于0。

#include <stdio.h>
#include <stdlib.h>

int main()
{
     //输入一个整数n
	int n = 0;
	scanf("%d", &n);

	//判断整数n是否小于0,小于0则n变为-n,大于等于0则跳过
	if (n < 0)
		n = n * -1;

    //输出
	printf("%d", n);


	return 0;
}

2.双分支if语句

   if - else 形式:

         if (表达式)  语句S1

         else  语句S2

其流程图如下图所示。

 

      执行过程:系统首先计算表达式的值,如果结果不为0,则执行语句S1;否则,执行语句S2。

选择结构全部执行完成后继续执行其后的其他语句。

例1也可以用双分支结构,程序代码如下:

#include <stdio.h>
#include <stdlib.h>

int main()
{

	int x, y;
	scanf("%d", &x);

	
	if (x < 0)
		y = x * -1;
    else
        y = x;


	printf("%d", y);


	return 0;
}

 

 3.多分支选择语句

        if-else-if 形式:

                if (表达式1)  语句S1

                else if (表达式2)  语句S2

                ... 

                else if (表达式n  语句Sn

                else 语句Sn+1

其流程图如下图所示。

 

        执行过程:if - else-if 结构实际上是由多个if-else 结构组合而成的,系统首先计算表达式1,其值不为0时,执行语句S1;否则计算表达式2,其值不为0时,执行语句S2;......如果if 后的所有表达式都不为真,则执行语句Sn+1,并结束整个分支结构。

4.if语句的嵌套

        if 语句的嵌套是指if 或 else 子句中又包含一个或多个if 语句。其实就是语句S为一个if语句。

形式较多就不一一例举了。

       嵌套选择结构主要用于处理多条件的问题。设计嵌套选择结构时应清晰描述各条件之间的约束关系。在使用时要特别注意以下两点:

(1)if 与 else 的配对关系。内嵌结构中,else 总是与它上面最近的、未配对的 if 配对,组成一对 if-else

(2)如果 if 与 else 的数目不一样,为了避免在 if 与 else 配对时出错,建议使用“{}”来限定内嵌if语句的范围。

        如:

        if (表达式1)

                {if (表达式2)   语句1}

        else  语句2

 

 【例2】编程计算一元二次方程a*x*x + b*x + c = 0的根,其中a,b,c为输入的值,且a不等于0.

注意,实数不能直接与0比较相等与否。

本例中,由于a是输入的原始数据,不存在计算误差,因此a与0比较也可用a==0代替。

但disc是经过计算得出的浮点数,而绝大多数计算机中表示的浮点数都只是它们在数学上表示的数据的近似值,因此disc与0的比较不能用disc==0来代替,必须用fabs(disc) <= EPS.

  • 28
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 内容概要 《计算机试卷1》是一份综合性的计算机基础和应用测试卷,涵盖了计算机硬件、软件、操作系统、网络、多媒体技术等多个领域的知识点。试卷包括单选题和操作应用两大类,单选题部分测试学生对计算机基础知识的掌握,操作应用部分则评估学生对计算机应用软件的实际操作能力。 ### 适用人群 本试卷适用于: - 计算机专业或信息技术相关专业的学生,用于课程学习或考试复习。 - 准备计算机等级考试或职业资格认证的人士,作为实战演练材料。 - 对计算机操作有兴趣的自学者,用于提升个人计算机应用技能。 - 计算机基础教育工作者,作为教学资源或出题参考。 ### 使用场景及目标 1. **学习评估**:作为学校或教育机构对学生计算机基础知识和应用技能的评估工具。 2. **自学测试**:供个人自学者检验自己对计算机知识的掌握程度和操作熟练度。 3. **职业发展**:帮助职场人士通过实际操作练习,提升计算机应用能力,增强工作竞争力。 4. **教学资源**:教师可以用于课堂教学,作为教学内容的补充或学生的课后练习。 5. **竞赛准备**:适合准备计算机相关竞赛的学生,作为强化训练和技能检测的材料。 试卷的目标是通过系统性的题目设计,帮助学生全面复习和巩固计算机基础知识,同时通过实际操作题目,提高学生解决实际问题的能力。通过本试卷的学习与练习,学生将能够更加深入地理解计算机的工作原理,掌握常用软件的使用方法,为未来的学术或职业生涯打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值