| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1237 人关注过本帖
标题:关于方程的两个根!
只看楼主 加入收藏
xiaotan
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-5-5
收藏
 问题点数:0 回复次数:11 
关于方程的两个根!

求方程axx+bx+c=0的根
#include<stdio.h>
#include<math.h>
main()
{
int a,b,c,k,r;
float x1,x2;
printf("\nplease input three bits:\n");
scanf("%d %d %d",&a,&b,&c);
printf("\nthe fangcheng is : %dxx+%dx+%d=0\n",a,b,c);
k=b*b-4*a*c;
if(k>0)
{r=sqr(k);
x1=((-b)+r)/(2*a);
x2=((-b)-r)/(2*a);
printf("\nthe result are: %f %f\n",x1,x2);}
else
printf("\nit is not content for fangcheng\n");

}
int sqr(int y)//求开方的函数;
{ int s;
s=pow(y, 0.5);//调用库函数;
return s;
}
这个程序有点错误,运行不起来!各位高手帮我看一下好吗?

搜索更多相关主题的帖子: 方程 printf fangcheng 
2006-05-13 19:07
lj_860603
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:714
专家分:0
注 册:2006-1-25
收藏
得分:0 
以下是引用xiaotan在2006-5-13 19:07:00的发言:

求方程axx+bx+c=0的根
#include<stdio.h>
#include<math.h>
main()
{
int a,b,c,k,r;
float x1,x2;
printf("\nplease input three bits:\n");
scanf("%d %d %d",&a,&b,&c);
printf("\nthe fangcheng is : %dxx+%dx+%d=0\n",a,b,c);
k=b*b-4*a*c;
if(k>0)
{r=sqr(k); //sqrt(k);
x1=((-b)+r)/(2*a);
x2=((-b)-r)/(2*a);
printf("\nthe result are: %f %f\n",x1,x2);}
else
printf("\nit is not content for fangcheng\n");

}
int sqr(int y)//求开方的函数;
{ int s;
s=pow(y, 0.5);//调用库函数;
return s;
}
这个程序有点错误,运行不起来!各位高手帮我看一下好吗?


我的原则很简单:不做不喜欢的事!
2006-05-13 21:09
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
收藏
得分:0 
楼上的朋友运行了没?
还是不能得到正确的结果啊!
我想是因为:
int sqr(int y)//求开方的函数;
{ int s;
s=pow(y, 0.5);//调用库函数;
return s;
}
楼主把这个函数给定义成了整型的事吧!
我也不太清楚!好像在以前的帖子上看到过类似的问题!

2006-05-14 01:31
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
收藏
得分:0 
哦!还有就是他那个sqr本来就是一个自定义的函数!

2006-05-14 01:41
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
收藏
得分:0 
#include<stdio.h>
#include<math.h>
main( )
{
double sqr(int y);
int a,b,c,k;
float x1,x2,r;
printf("\nplease input three bits:\n");
scanf("%d %d %d",&a,&b,&c);
printf("\nthe fangcheng is : %dxx+%dx+%d=0\n",a,b,c);
k=b*b-4*a*c;
if(k>0)
{
r=sqr(k);
x1=((-b)+r)/(2*a);
x2=((-b)-r)/(2*a);
printf("\nthe result are: %f %f\n",x1,x2);
}
else
printf("\nit is not content for fangcheng\n");
getch( );
}
double sqr(int y)
{
double s;
s=pow(y, 0.5);
return(s);
}

2006-05-14 02:40
空中鱼
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2006-5-14
收藏
得分:0 
这个函数太不健全了,没考虑的问题太多了。
应该改为这样就好多了。

#include<math.h>
main()
{
int a,b,c,k;float r;
float x1,x2;
printf("\nplease input three bits:\n");
scanf("%d %d %d",&a,&b,&c);
if(a==0) printf("这不是二元方程请重新输入" );

else
{printf("\nthe fangcheng is : %dxx+%dx+%d=0\n",a,b,c);
k=b*b-4*a*c;
if(k>=0)
{r=sqrt(k);
x1=((-b)+r)/(2*a);
x2=((-b)-r)/(2*a);
printf("\nthe result are: %f %f\n",x1,x2);}
else
printf("\nit is not content for fangcheng\n");
}
}

2006-05-14 13:07
soft_wind
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:1430
专家分:0
注 册:2006-4-5
收藏
得分:0 
以下是引用空中鱼在2006-5-14 13:07:00的发言:
这个函数太不健全了,没考虑的问题太多了。
应该改为这样就好多了。

#include<math.h>
main()
{
int a,b,c,k;float r;
float x1,x2;
printf("\nplease input three bits:\n");
do{
scanf("%d %d %d",&a,&b,&c);
if(a==0) printf("这不是二元方程请重新输入" );
}while(a==0);

else
{printf("\nthe fangcheng is : %dxx+%dx+%d=0\n",a,b,c);
k=b*b-4*a*c;
if(k>=0)
{r=sqrt(k);
x1=((-b)+r)/(2*a);
x2=((-b)-r)/(2*a);
printf("\nthe result are: %f %f\n",x1,x2);}
else
printf("\nit is not content for fangcheng\n");
}
}


对不礼貌的女生收钱......
2006-05-14 15:26
xiaotan
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-5-5
收藏
得分:0 
呵呵!太感谢大家的热心帮助了!我回去运行一下!我想问题应该可以解决的,有时候很奇怪的,有些问题自己一个人就是解决不了,幸好有大家的帮助,我回好好努力的,每天都在编程!呵呵!谢谢了!
2006-05-14 16:51
soft_wind
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:1430
专家分:0
注 册:2006-4-5
收藏
得分:0 

边看书,边练习.
我觉得这样进步最快。
楼主您还需要多看书的……


对不礼貌的女生收钱......
2006-05-14 16:53
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
收藏
得分:0 
不过我觉得我的那个程序最符合楼主的意思了!
因为我是作了最少的改动!

2006-05-14 16:57
快速回复:关于方程的两个根!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050812 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved