c语言题目,求解一元二次方程,错在哪里?

作者&投稿:梅贵 (若有异议请与网页底部的电邮联系)
如图,C语言题目,我编写的这个求解一元二次方程根的程序错在哪儿~

disc=b*b-4ac=25-16*16<0了,所以执行紧挨着的下面的if语句。。。

return写错,%7.2没加f。修改:
#include #include int main(){ double a, b, c, disc, x1, x2, p, q; scanf_s("%lf%lf%lf", &a, &b, &c); disc = b*b - 4 * a*c; if (disc<0) printf("This equation hasn't real roots
"); else { p = -b / (2.0*a); q = sqrt(disc) / (2.0*a); x1 = p + q; x2 = p - q; printf("real roots:
x1=%7.2f
x2=%7.2f
", x1, x2); } return 0;}

输入有错误,输入的时候不要用逗号分隔,
应该是用空格分隔,因为前面格式字符串是%f%f%f。

见下scanf的介绍:
1. 函数的第一个参数是格式字符串,它指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。每一个指针要求非空,并且与字符串中的格式符一一顺次对应。

2.如果scanf中%d是连着写的如“%d%d%d”,在输入数据时,数据之间不可以用逗号分隔,只能用空白字符(空格或tab键或者回车键)分隔——“2 (空格)3(tab) 4” 或 “2(tab)3(回车)4”等。若是“%d,%d,%d”,则在输入数据时需要加“,”,如“2,3,4”。

scanf("%f%f%f", &a, &b, &c);
输入时1 5 6
中间空格隔开,不要用什么逗号,输入后回车即可,这个回车是白送的,不需要你自己付费。scanf的格式串里不要塞些printf才用到的东西,那会自寻烦恼


c语言题目,求解一元二次方程,错在哪里?
见下scanf的介绍:1. 函数的第一个参数是格式字符串,它指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。每一个指针要求非空,并且与字符串中的格式符一一顺次对应。2.如果scanf中%d是连着写的如“%d%d%d”,在输入数据时,数据之间不可以用逗号分...

求解一元积分题目
根据题意有: f ''(3)=0 (拐点)f '(0) =2 ; f '(3)=-2; f(0)=0, f(3)=2.原积分 = ∫ (x^2 +x)f '''(x)dx (x从0积到3)= ∫ (x^2 +x) df ''(x) (x从0积到3)=(x^2+x)f ''(x) -∫ f ''(x)d(x^2+x) (x从0积...

C语言——两个一元多项式P(x)和Q(x)相加的问题
第一类书上有就不写了;第二类:数据结构 int data;int index;linklist next;void f_p_add(linklist &a,linklist b){\/\/把b中的元素一个一个的插入到a中 linklist p=a->next,t;b=b->next;while(b){ while(b->index!=p->index)\/\/寻找指数与b->data相同的结点 { if(!p->next)\/...

C语言编程题,如下图,有谁知道?
题目没有问题

在线求解 c语言编程题目
int a[20];int b[20];int i,j,t;int k=0;for(i=0;i<20;i++)scanf("%d",&a[i]);for(i=0;i<20;i++)\/\/判断素数 { for(j=2;j<a[i];j++){ if(a[i]%j==0)break;} if(j<a[i])continue;else { b[k]=a[i];k++;} } for(i=0;i<k-2;i++)\/\/冒泡排序 ...

我初1初2没好好读书后悔了初3想提高成绩可都听不进啊。我现在分数加起来...
初中数学中,题目、已知和结论用常数给出的较多,一般地,答案是常数和定量。学生在分析问题时,大多是按定量来分析问题,这样的思维和问题的解决过程,只能片面地、局限地解决问题,在高中数学学习中我们将会大量地、广泛地应用代数的可变性去探索问题的普遍性和特殊性。如:求解一元二次方程时我们采用对方程ax2+bx+c=0...

求解C语言算法题
这是个数学分析问题,根x01=[-b+-(b^2-4ac)^0.5]\/2a 只有根式不是算术运算,利用泰勒展开将根式化成算求运算,泰勒误差项引起的总误差为题目中的容差,从而得到该求多少项展开。全部都化成算术运算后,全部先加最后减,即可避免接近float相减。

初中数学说课稿
从中提高他们的概括能力和语言能力,并养成动手、动脑、动口的良好的学习习惯。 初中数学说课稿3 一、说教材作用: 本节内容从以前所学过的分式方程的概念出发,介绍分式方程的求解方法。跟这部分内容有关联的是后面列方程解应用题,学好这一节课,将为下节课的学习打下基础。 二、说教学目标 1、让学生理解分式...

中学数学解题方法
函数思想,是指用函数的概念和性质去分析问题、转化问题和解决问题;方程思想,是从问题的数量关系入手,运用数学语言将问题中的条件转化为数学模型,然后通过解方程(组)来使问题获解函数与方程有密切的关系。如一元一次函数,就可以看作关于x、y的二元方程;二元方程可以看成v是x的一次函数可以说,函数...

高分求编程题程序(C语言)
5.这个无聊到极点,要不要把全国各种方言的说法也都给你算上?讲清楚了再提问,否则10000分也没人给你做。这是第四题的,虽说答案没问题,一旦输入太大就会很慢。include <stdio.h> include <stdlib.h> include <ctype.h> struct digit{ char d;struct digit *previous;struct digit *next;};t...

朝天区19571917181: 求教C语言求一元二次方程解的编程哪里错了 -
怀钢欣美: #include#include float o(float a,float b,float d); float p(float a,float b); float q(float a,float b); float a,b,c,d,m,n; int main() {printf("Please input a,b,c\n"); scanf("%f%f%f",&a,&b,&c); d=b*b-4.0*a*c; if(d>0){ o(a,b,d); } else if(d==0) { p(a,b); } else{q(a,...

朝天区19571917181: 请教高手,用C语言求一元二次方程的解错在哪里?
怀钢欣美: #include "stdio.h" #include "math.h" /*求一元二次方程ax*x+bx+c=0的解*/ main() { float a,b,c,x1,x2,d; printf("请输入a:"); scanf("%f",&amp;a); printf("请输入b:"); scanf("%f",&amp;b); printf("请输入c:"); scanf("%f",&amp;...

朝天区19571917181: 用c语言解一元二次方程,求大神看看错在哪,怎么改 -
怀钢欣美: 第一,如果VS版本较高,则要关闭C4996警告,否则报错;第二,尽量不要用float,double才是默认类型,否则误差较大;第三,if else if结构中最后一个else不要加上条件;第四,这样计算二次方程的根误差很大,不宜直接用求根公式;

朝天区19571917181: 这个C语言程序(求一元二次方程的根)哪个地方出错了? -
怀钢欣美: 修改如下://---------------------------------------------------------------------------#include "stdio.h"#include "math.h" main() { double a,b,c,x1,x2,dlta; scanf("%f %f %f",&a,&b,&c); dlta=b*b-4*a*c; if((dlta)>=0) { /*注意这里*/ x1=(-b+sqrt(dlta))/(2*a); x2=(-b-sqrt(...

朝天区19571917181: C语言 求解一元二次方程 不知道我的程序哪里错了 假设b*b - 4*a*c>0 -
怀钢欣美: //2*a;少了括号 改为: p=(-b)/(2*a)p=(-b)/

朝天区19571917181: 想知道哪错了 C语言,运用调用函数求一元二次方程解 -
怀钢欣美: #include float x(float a, float b, float c); float y(float a, float b, float c); float disc; int main() { float a, b, c; scanf("%f%f%f", &a, &b, &c); disc = b*b - 4 * a*c; if (disc >= 0) x(a, b, c); else y(a, b, c); return 0; } float x(float a, float b, float c) { float p, q, s, t; p = ...

朝天区19571917181: 帮忙检查一下c语言的程序错在哪里,题目是求解一元二次方程.a*x*x+b*x+c=0 -
怀钢欣美: 1、从函数前要加void 2、getch()函数要包含在头文件中 别的没什么错误. 以下是我自己的程序,由于我写的内容多,所以包含了过多的头文件,你这个问题可以很好的解决. #include "stdio.h" #include "string.h" #include#include#...

朝天区19571917181: C语言解一元二次方程改错 -
怀钢欣美: #include#include void main() { float a,b,c,delta,x1,x2; printf("请输入a,b,c\n"); scanf("%f,%f,%f",&a,&b,&c); if(a=0) //1 printf("\nx=%.2f",-c/b); else //2 delta=b*b-4*a*c; if(delta>0) //5 x1=(-b+sqrt(delta))/(2*a);x2=(-b-sqrt(delta))/(2*a); printf("\...

朝天区19571917181: 一元二次方程 c语言 求解 代码哪里错了 结果都是 - 0.000000 -
怀钢欣美: #include<stdio.h> #include<math.h> void main() { double a,b,c,p; printf("ax^2+bx+c=0"); printf("请输入 a b c: "); scanf("%lf%lf%lf",&a,&b,&c); /* 空格输入,原来需要用逗号 */ p=b*b-4*a*c; if(a==0) printf("方程有一根x=%lf",-c/b); ...

朝天区19571917181: C语言求解一元二次方程 大家看看那里错了
怀钢欣美: 有如下需要修改和调整的地方:我TM服了问问了...这都不让审核通过. 运行结果如下有如下需要修改和调整的地方: 1)26行,应该是 x1 = (-b + sqrt(delta)) / (2*a); 2)28行,应该是 printf("该方程有两个解,x1 = %lf, x2 = %lf\n", x1, x2); ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网