C语言期末集训2(大一,超基础,小猫猫大课堂的配套练习)—

[一元二次方程](https://bbs.csdn.net/topics/618545628)的两个根可以通过[因式分解法](https://bbs.csdn.net/topics/618545628)和十字相乘法解出。
1、因式分解法:又分“提公因式法”;而“[公式法](https://bbs.csdn.net/topics/618545628)”(又分“平方差公式”和“完全平方公式”两种),另外还有“十字相乘法”,因式分解法是通过将方程左边因式分解所得,因式分解的内容在八年级上学期学完。
用因式分解法解一元二次方程的步骤:
(1)将方程右边化为0;
(2)将方程左边分解为两个一次式的积;
(3)令这两个一次式分别为0,得到两个一元一次方程;
(4)解这两个一元一次方程,它们的解就是原方程的解。
举例如:解方程:x²+2x+1=0
解:利用完全平方公式因式解得:(x+1)²=0
解得:x=-1
2、十字相乘法:x的平方+(p+q)x+pq=(x+p)(x+q)
例:ab+b²+a-b- 2
=ab+a+b²-b-2
=a(b+1)+(b-2)(b+1)
=(b+1)(a+b-2)
[求根公式](https://bbs.csdn.net/topics/618545628):首先要通过Δ=b²-4ac的根的判别式来判断一元二次方程有几个根:
(1)当Δ=b²-4ac<0时 x无实数根(初中)。
(2)当Δ=b²-4ac=0时 x有两个相同的实数根 即x1=x2。
(3)当Δ=b²-4ac>0时 x有两个不相同的实数根。
当判断完成后,若方程有根可根属于2、3两种情况方程有根则可根据公式:x={-b±√(b²-4ac)}/2a来求得方程的根。
扩展资料:
一元二次方程根的判别式。
1、一元二次方程ax²+bx+c=0(a≠0)的根的判别式定理:
在一元二次方程ax²+bx+c=0(a≠0)中,Δ=b²­4ac
若△>0则方程有两个不相等的实数根。
若△=0则方程有两个相等的实数根。
若△<0则方程没有实数根。
2、这个定理的逆命题也成立,即有如下的逆定理:
在一元二次方程ax²+bx+c=0(a≠0)中,Δ=b²­4ac。
若方程有两个不相等的实数根,则△>0。
若方程有两个相等的实数根,则△=0。
若方程没有实数根,则△<0。
3、如果二次项系数中含有字母,要考虑二次项系数不为零这个限制条件。

#include<stdio.h>
#include<math.h> 
int main()
{
	double a,b,c,disc,x1,x2,realpart,imagpart;//realpart是实部,imagpart是虚部
	scanf("%lf,%lf,%lf",&a,&b,&c);
	printf("The equation");//翻译:方程式 
//先判断是不是二次方程,说一个不可能的数与a的绝对值比较,判断a的存在,决定是否是二项式
	if(fabs(a)<=1e-6) //fabs()是一个求绝对值的函数     1e-6表示1乘以10的负6次方 
	  printf("is not a quadratic\n");//quadratic代表二次项 
	else
	{
//有相同的根
		disc=b*b-4*a*c;//disc是判别式,也就是小三角形。
		if(fabs(disc)<=1e-6)///fabs(disc)<一个很小的数(1e-6),如果小于此数,就认为disc等于0.
		    printf("has two equal roots:%8.4f\n",-b/(2*a));//has two equal roots意思是有两个相等的根
		else
//不同的根
		    if(disc>1e-6)
		    {
		    	x1=(-b+sqrt(disc))/(2*a);
		    	x2=(-b-sqrt(disc))/(2*a);
				printf("has distinct real roots:%8.4fand%8.4f\n",x1,x2);//has distinct real roots意思是相异根,不等根 
			}
			else
			{
//共轭复根
				realpart=-b/(2*a);
				imagpart=sqrt(-disc)/(2*a);
				printf("has complex roots:\n");//has complex roots意思是复数解
				printf("%8.4f+%8.4fi\n",realpart,imagpart);
				printf("%8.4f-%8.4fi\n",realpart,imagpart);
			}
	}
	return 0;
 } //小朋友,有些复杂,仔细看,多做几遍,做到自己可以写出来。最好不要简写,比如realpart省略成r,不利于你后期自己复习 

有三个整数a,b,c,由键盘输入,输出其中最大的数(轻松一下)

#include<stdio.h>
int main()
{
	int a,b,c;
	scanf("%d,%d,%d",&a,&b,&c);
	if(a>b)
	{
		if(a>c)
		{
			printf("最大数为%d",a);
		}
		else
		{
			printf("最大数为%d",c);
		}
	 }
	 else if(b>c)
	 	printf("最大数为%d",b);
	 	else
	 	printf("最大数为%d",c);
	return 0;
 } 

#include<stdio.h>
int main()
{
	int x,y;
	scanf("%d",&x);
	if(x<1) 
	{
		y=x;
	}
	else  if(x>=1)
	         if(x>10)
	         y=3*x-10;
	         else
	         y=2*x-1;
	printf("%d",y); 
	return 0;
 } 

同类配套练习!!!哦耶耶!


总结:

今天是选择语句的题,相对难一点,小喵需要在做几遍,才能把这个完全吃透!写得很详细,有什么不足,麻烦私信Q一下小喵。非常感谢!!!伙伴们,晚安。

更新不易,麻烦多多点赞,欢迎你的提问,感谢你的转发,

最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!!

喵喵喵,你对我真的很重要。

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

很难做到真正的技术提升。**

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值