基本if语句

目录

  1. 做判断:if语句
  2. 判断的条件
  3. 找零计算器
  4. 如果条件不成立

  • 做判断

根据比较的结果,决定做、还是不做某些动作,就要用到if语句。

一个基本的if语句由一个关键字if开头,跟上在括号里的一个表示条件的逻辑表达式,然后是一对大括号“{}”之间的若干条件句。如果表示条件的逻辑表达式的结果为true,那么就执行后面跟着的这对大括号中的语句,否则就跳过这些语句不执行,而继续下面的其他语句。

#include <stdio.h>

int main()
{
    int hour1, minute1;
    int hour2, minute2;

    scanf("%d %d", &hour1, &minute1);
    scanf("%d %d", &hour2, &minute2);

    int ih = hour2 - hour1;
    int im = minute2 - minute1;
    if ( im <0 ) {
         im = 60 + im;
         ih --;
}
    printf("时间差是%d小时%d分。\n", ih, im);

    return 0;
}

if语句也可以有另外一种形式,这种形式就是我们可以没有后面的那对大括号,当我们没有后面那个对括号的时候,那么紧跟在if后面的那句话就会作为条件成立时要执行的那句话。所以在if语句的原括号后面要么有大括号要么就跟着一句的话,不能在原括号后面跟上;。

if ( total > amount )

        total += amount+ 10;

if语句这一行结束的时候并没有表示语句结束的“;”,而后面的赋值语句写在if的下一行,并且缩进了,在这一行结束的时候有一个表明语句结束的“;”。这表明这条赋值语句是if语句的一部分,if语句拥有和控制这条赋值语句,决定他是否要被执行。

注:不带大括号,只执行后面最近的一条语句;

       带大括号的话,则执行括号里的语句块。

  • 判断的条件

计算机的智能是建立在规则的基础上的,在遇到情况的时候,根据事先制定的规则做出判断,是计算机最基本的能力。

能做判断的基础,是能对数据作比较,比较就是关于两个数据是否相等、谁大谁小的结论,这需要用到关系的计算。

C语言提供了六个关系运算符:

== 相等

!= 不相等

> 大于

>= 大于或等于

< 小于

<= 小于或等于

注意其中有两个字符的运算符:==、>=和<=的两个字符必须紧紧连在一起,中间不能插入空格。

关系运算的结果是一个逻辑值,逻辑值只有两种可能的值:true(真,表示成立)或false(假,表示不成立)。当两个值的关系符合关系运算符的预期时,关系运算的结果为ture,否则为false。

#include <stdio.h>

int main()
{
    printf("%d\n", 5==3);
    printf("%d\n", 5>3);
    printf("%d\n", 5<=#);

    return 0;
}

当两个值的关系符合关系运算符的预期时,关系运算的结果为整数1,否则为整数0。

所有的关系运算符的优先级比算术运算的低,但是比赋值运算的高。

7 >= 3 + 4

意思就是3和4会先加起来然后再去与7进行比较

判断是否相等的==和!=的优先级比其他的低,而连续的关系运算是从左到右进行的

  • 找零计算器

找零计算器需要用户做两个操作:输入购买的金额,输入支付的票面,而找零计算器则根据用户的输入做出相应的动作:计算并打印找零,或告知用户余额不足以购买。

从计算机的程序角度看,这就是意味着程序需要读用户的两个输入,然后进行一些计算和判断,最后输出结果。

# include <stdio.h>

int main()

{   //  初始化
    int price = 0;
    int bill = 0;
    //  读入金额和票面
    printf("请输入金额: ");
    scanf("%d", &price);
    printf("请输入票面: ");
    scanf("%d", &bill);
    //  计算找零
    printf("应该找您: %d\n", bill - price);

    return 0;
}
  • 如果条件不成立
  • #include <stdio.h>
    
    int main()
    
    {   //  初始化
        int price = 0;
        int bill = 0;
        //  读入金额和票面
        printf("请输入金额: ");
        scanf("%d", &price);
        printf("请输入票面: ");
        scanf("%d", &bill);
        //  计算找零
        if ( bill >= price ) {
                printf("应该找您 : %d\n", bill - price);
    } else {
                printf("您的钱不够\n");
    }
       return 0;
    }
    
        

    如果条件不成立我们可以在if后面的大括号后面加上else,意为否则的话:。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值