今天,小编我来详细的讲解一节C语言的具体运用。我们今天先拿二元一次方程来开刀。大家都知道二元一次方程的解,有三种情况,即无解,有两个相同的解,有两个不同的解。那么在编程前我们先要制定流程图,二元一次方程的系数在这里我们依然使用我们常用的a,b,c,根的判别式,这个我们都知道b^2-4ac(其中‘^’这个是指数的意思),求解公式等。如图
流程图小编做的比较粗糙,嘿嘿,不要介意哦!好了前期准备我们已经完成了,这是我们应该用大脑想一想,这个方程的根是什么类型的,显然肯定不是整数型的,那么我们就要用什么类型的那?其实为了提高精度和避免在编译的时候出现警告,我们通常将所有的变量定义为双精度浮点型,这是一个常用的知识点哦!大家一定要记住哦!之后我们要思考,当程序进行判断时,我们应该用什么函数进行判断那,当然了我们可以使用if语句来进行判断,if语句简单易懂。好了前期的准备,我们都已经ok了,我们可以来进行编写的过程了。
#includestdio.h
#includemath.h
intmain()
{
while(1)
{
doublea,b,c,disc,x1,x2,p,q;
printf(请输入变量前的系数\n);
scanf(%lf%lf%lf,a,b,c);
disc=b*b-4*a*c;
if(disc0)
printf(此方程无实数根\n);
elseif(disc=0)
{
p=-b/(2.0*a);
q=p;
printf(%lf%lf,p,q);
}
else
{
p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
printf(%lf%lf,p,q);
}
}
return0;
}
好了这个程序小编我已经编完了,接下来小编我来为大家一一的解释
#includemath.h这个是调用数学的运算程序,只有调用了这个我们才能计算一些乘除,平方等高级数学运算。while(1)相信这个大家并不陌生,while是循环语句,在C语言中“1”表示继续,“0”表示停止,所以这个“1”就是让程序能持续的运行。举一反三,我们就可以知道了在程序结尾的return0是什么意思了,就是返回“0”值,就是停止此程序。”%lf“大家要记住我们输入双精度浮点型变量的时候,就必须用”%lf“进行格式声明。”4*a*c“C语言乘法不同于我们数学中的乘法可以省略或者是用一个点,C语言乘法必须用”*“一一连接。”(2.0*a)“这个用2.0是应为,我们调用的函数是双精度浮点型的,所以我们必须用一个,浮点型的常数来表示,如果我们使用的是”2“那个这个他就表示为一个双精度浮点型的变量除以了一个整型变量,它会让最后的结果发生改变,如果是变成双精度浮点型,那么还不会出现误差,如果变成整形变量,那么这个结果就会省略小数点后的值。所以,大家在以后的编程中一定要注意这些小的细节哦!如果大家还有疑问,可以在评论区
小编我哦。如果大家想学习其他的语言,那么我建议大家先学习C语言,之后再学习其他的语言会更简单哦!不要放弃,你还站着