if语句的使用

上完选择结构if语句后,给学生布置了一个简单的编程题,题目如下图:
这里写图片描述

用if语句完成。
就这道题来讲,可以有好几种做法,下面我给大家写几个例子,初学者慢慢领悟。
方法一:
只用if语句完成,代码如下:

#include <stdio.h>                  // 头文件

void main()
{
    int x, y;                       // 变量声明
    printf("请输入x值:");           // 提示
    scanf("%d",&x);                 // 输入x的值

    if(x*x-10 > 0)                  // if的使用
    {
        y = x*x;
    }
    if(x*x-10 <= 0)
    {
        y = -x*x;
    }

    printf("x=%d\ny=%d\n",x,y);     // 输出x和y的值
}

结果为:
这里写图片描述
可以发现只用if语句就可以完成该道题的编程。

方法二:
用if-else实现该题,代码如下:

#include <stdio.h>                  // 头文件

void main()
{
    int x, y;                       // 变量声明
    printf("请输入x值:");           // 提示
    scanf("%d",&x);                 // 输入x的值

    if(x*x-10 > 0)                  // if的使用
    {
        y = x*x;
    }
    else if(x*x-10 <= 0)
    {
        y = -x*x;
    }

    printf("x=%d\ny=%d\n",x,y);     // 输出x和y的值
}

结果为:
这里写图片描述
这样也能可以完成该题的编程。

方法三:
用if-else语句完成,代码如下:

#include <stdio.h>                  // 头文件

void main()
{
    int x, y;                       // 变量声明
    printf("请输入x值:");           // 提示
    scanf("%d",&x);                 // 输入x的值

    if(x*x-10 > 0)                  // if的使用
    {
        y = x*x;
    }
    else
    {
        y = -x*x;
    }

    printf("x=%d\ny=%d\n",x,y);     // 输出x和y的值
}

可以发现,else后面没有if语句,那是因为在上面的if语句中判断了x2-10>0的情况,然后剩下的都是x2-10<=0的情况了,因此只需要加上else就可以了。

方法四:
我们可以使用标准库函数来实现这样的一个题目,代码如下:

#include <stdio.h>                  // 头文件
#include <math.h>                   // 头文件

void main()
{
    int x, y;                       // 变量声明
    printf("请输入x值:");           // 提示
    scanf("%d",&x);                 // 输入x的值

    if(pow(x,2)-10 > 0)                 // if的使用
    {
        y = (int)pow(x,2);
    }
    else
    {
        y = -(int)pow(x,2);
    }

    printf("x=%d\ny=%d\n",x,y);     // 输出x和y的值
}

结果是一样的,大家可以试一下。
要注意一下,pow(x,y)是标准库中的函数,它包含在头文件math.h中,因此在使用该函数的时候需要加上头文件,不然会出错,大家可以尝试一下不加头文件的结果是什么。
下面简单讲一下pow(x,y),它就相当于x的y次幂。

这样就把这道题以四种形式进行完成,当然方法不唯一。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小材大用

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

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

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

打赏作者

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

抵扣说明:

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

余额充值