C语言练习:多种方法实现分段函数求值

 本文通过一个分段函数讲解 多分支if语句 与 多个 if 语句 的区别

 相关文章:C语言:if、if...else、if...else if ...else、if...if...if 语句的区别

 题目

  方法一:使用多个if对x的范围进行判断

#include<stdio.h>
#include<math.h>
int main ()
{
	double x,y;       //使用多个if对x的范围进行判断 
	scanf("%lf",&x);	
	if(x<-3)
	  y=x+1;		
	if(x>=-3 && x<5)
	  y=x*x+1;		
	if(x>=5 && x<10)
	  y=fabs(x-6);		
	if(x>=10)
   	  y=1/(x+1);		
	printf("%.2lf",y);
	return 0;
	 
}

方法二:使用多分支if语句

#include<stdio.h>
#include<math.h>
int main ()
{
	double x,y;
	scanf("%lf",&x);
	if(x<-3)      //判断的入口,若满足条件,满足以下任一条件便结束判断 
    	y=x+1;
	else if (x<5)  //程序能够执行到这一句,自然已经满足x >= -3
	    y=x*x+1;
	else if(x<10)  //程序能够执行到这一句,自然已经满足x >= -5
	    y=fabs(x-6);
	else           程序能够执行到这一句,说明x不满足之前的条件 
	    y=1/(x+1);   
    printf("%.2lf",y);
	return 0;	    
}
 

总结

通过以上两种方法可以看出,方法二使用的多分支if语句更加简洁,,而方法一的程序存在对x的范围重复判断的问题。

多分支if语句的上下语句的衔接关系更强。正确的使用if语句可以做到化繁为简,同时也能锻炼我们的逻辑能力。

相关文章:C语言:if、if...else、if...else if ...else、if...if...if 语句的区别

如有不足,欢迎指正。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值