C语言编程题代码咋写

题目描述求方程 的根,用三个函数分别求当b^2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值。 输入a b c输出x1=? x2=?样例输入4 1 1样例输出x1=-0.125+0.484i x2=-0.125-0.484i

#include <stdio.h>
#include <math.h>
int main()
{
float a,b,c,delta,x1,x2,x1b,x2b;
scanf("%f%f%f",&a,&b,&c);
delta=b*b-4*a*c;
if (delta==0) //一个实数根
{
x1=-b/(2*a);
printf("x=%.3f",x1);
}
else if (delta>0) //两个实数根
{
x1=(-b+sqrt(delta))/(2*a);
x2=(-b-sqrt(delta))/(2*a);
printf("x1=%.3f,x2=%.3f",x1,x2);
}
else if (delta<0) //两个虚数根
{
x1=-b/(2*a);
x1b=sqrt(-delta)/(2*a);
if (x1==0) printf("x1=%.3fi,x2=-%.3fi",x1b,x1b); //防止实部出现0的特殊输出情况
else
{
printf("x1=%.3f+%.3fi,",x1,x1b);
printf("x2=%.3f-%.3fi",x1,x1b);
}
}
printf("\n");
return 0;
}
温馨提示:内容为网友见解,仅供参考
无其他回答

急!急!简单c语言编程题,求编写代码
\/\/第一题#include<stdio.h>void fun(int n){ int i,j,k,t;for(k=0;k<n;k++)\/\/控制总行数{ for(i=0;i<n-k-1;i++)\/\/控制输出空格,因为空格不好看见,就用*代替 printf("%c",'*'); for(j=0;j<2*k+1;j++)\/\/控制输出字母 { printf("%c",65+j)...

帮忙写个C语言编程题。将用户输入的任意字符串中的数字字符全部删除...
把用户输入的字符串从左至右逐字符向同一个数组中拷贝,遇到数字字符时接收计数变量不增量,就会被下一个字符覆盖这个数字字符,直到把'\\0'也拷贝进来。代码如下:include?"stdio.h"int?main(int?argc,char?*argv[]){ char?s[300];int?i,j;printf("Please?enter?a?string...\\n");fgets(s,...

C语言编程题 求代码
int main(){ int sum,i;for(sum=0,i=10;i<31;++i)sum+=i;printf("%d\\n",sum);return 0;} include <stdio.h> int main(){ int pdt,i;for(pdt=1,i=1;i<11;++i)pdt*=i;printf("%d\\n",pdt);return 0;} include <stdio.h> int main(){ int y;scanf("%d",&y);puts...

C语言程序题目:由键盘输入三个数a,b,c,按从小到大的顺序输出这三个数...
intmain(){ inta,b,c,t;printf(请输入三个数:);scanf(%d%d%d,a,b,c);if(ab){ t=a;a=b;b=t;} if(ac){ t=a;a=c;c=t;} if(bc){ t=b;b=c;c=t;} printf(从小到大的顺序是:%d%d%d\\n,a,b,c);return0;} \/iknow-pic.cdn.bcebos.com\/3c6d55fbb2fb4316d355249d2e...

C语言编程:如下要求的题目咋写代码?
代码文本:include "stdio.h"int max(int a[],int n,int *p){ for(n--,*p=0;n>=0;n--)if(a[*p]=0;n--)if(a[*p]>a[n])p=n;return a[*p];} int main(int argc,char *argv[]){ int a[20]={13,19,12,9,10,3,7,18,1,11,20,8,2,14,15,16,4,5,6,17},ma...

c语言输入题目的代码?
include<stdio.h> int main(){ int a,b,c,max;printf("请输入三个数:\\n");scanf("%d%d%d",&a,&b,&c);if(a>b)max=a;if(c>max)max = c;printf("三个数中最大的数为:%d",max);return 0;}

C语言编程题 求代码
void output(float a[][10], int b, int c){ for (int i = 0; i < b; i++){ for (int j = 0; j < c; j++)printf("%4.2f ",a[i][j]);cout << endl;} } float findmin(float a[][10], int b, int c){ float min = 100;int p, q;for (int i = 0; ...

c语言这个题怎么写代码?
程序:直接x初值取n,那么B的结果肯定小于A,之后只要循环x每次增加,知道结果不小于A。按题目说法,这个x肯定不是精确值。(输出的x只要整数)。你可以通过降低常量AX的值,来调整运算精度!我下面的代码,备注“\/\/--可删除”的都是调试打印,让你看到运行过程的,你可以删掉。由于第一天是基值,所以...

c语言编程题
include<stdio.h>#include<string.h>#define N 200int del(char *str, int k, int m){ int i,l; char t; if(str==NULL) return 0; l=strlen(str); if(k<1||k>l||m<1) return 0; if(k+m>l) { str[k-1]='\\0'; return 1; } for(...

C语言编程题,从键盘输入任意3个数,按从小到大的顺序输出
代码1.\/\/ 输入3个数,要求按从小到大顺序输出 #include <stdio.h> int main() { int a,b,c,t; printf("请输入三个数:"); scanf("%d%d%d",&a,&b,&c); if(a > b) { t = a; a = b; b = t; } if(a > c) { t = a;...

相似回答