上完选择结构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次幂。
这样就把这道题以四种形式进行完成,当然方法不唯一。