c语言编译器求五个数中间数,帮我看看我错在哪里。谢谢。

c语言求组合数。哪里错了? 求大师请教 谢谢_百度知道
c语言求组合数。哪里错了? 求大师请教 谢谢
#include&stdio.h&double fact(int n);int main (void){ int m, double
result1,result2,result3, scanf(&%d&,&m); scanf(&%d&,&n); result1=fact(n); result2=fact(m); result3=fact(n-m); result=result1/result2/result3 ; printf(&%d&,result);return 0;}double fact(int n){
product=1; for(i=1;i&=n;i++){ product=product*i; } }
我有更好的答案
按默认排序
#include&stdio.h&double fact(int n);int main (void){ int m, double
result1,result2,result3, scanf(&%d&,&m); scanf(&%d&,&n); result1=fact(n); result2=fact(m); result3=fact(n-m); result=result1/result2/result3 ; printf(&%f&,result);return 0;}double fact(int n){
product=1; for(i=1;i&=n;i++){ product=product*i; } }
b*=b;//错,有两处,都要改成 b*=x; 还有,double类型数判断等于0是不对的,应该是绝对值小于一个很小的数。 ,lAvyyZ
貌似没有容错吧,你写的函数运行结果应该是求阶乘吧?你输入的M,N然后调用fact(n-m)如果n&m不就出错了吗
无论输入什么数
我不知道为什么
你可以试一下吗?
你把M,N的类型也改为double应该就好了,虽然C语言默认把int 转换成double但是这样写的时候却不会正确输出,你可以试一下。或者把result那些声明成int型
其他类似问题
c语言的相关知识
等待您来回答
您可能关注的推广回答者:
下载知道APP
随时随地咨询
出门在外也不愁C语言函数初体验,程序在编译的时候出现了2个错误,我不懂哪儿错了,请帮忙看看,谢谢_百度知道
C语言函数初体验,程序在编译的时候出现了2个错误,我不懂哪儿错了,请帮忙看看,谢谢
#include&stdio.h&void main(){ int max(int x,int y);
//函数的声明 int a,b,c; scanf(&%d,%d&,&a,&b); c=max(a,b);
//函数的调用 printf(&Max is %d\n&,c);int max(int x,int y)
//函数的定义{
return(x&y?x:y);}
提问者采纳
printf(&Max is %d\n&,c); //掉了个花括号。
提问者评价
我晕,谢谢谢谢
其他类似问题
c语言函数的相关知识
按默认排序
其他1条回答
main()函数后面加括号}
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁怎样用c语言写求五个数的最大公约数谢谢大家帮我一下_百度知道
怎样用c语言写求五个数的最大公约数谢谢大家帮我一下
#include&stdio.h&#define N 100void main(){
int f(int ,int ); int a[N],i=0,b,x1,x2,j;
printf(&请输入要处理的数据:&);
while(d!='\n')
scanf(&%d%c&,&a[++i],&d);
for(j=2;j&=i;j++) {
b=f(x1,x2);
x1=b; } printf(&%d\n&,b);}int f(int m,int n){
int t,p; if(m&n) { t=n; n=m;
n=t; } p=m*n; while(m!=0) { t=n%m;
其他类似问题
最大公约数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁问题补充&&
代码并没有对mid[2]进行处理,只需将两个for中的判断都带上‘=’。for(i=0;i&=2;i++)for(m=4;m&=2;m--)
IMPCKING &10-31 22:44
你的逻辑是有问题的,中位数并不是你这么定义的,你的局部满足判断不代表全局满足。
haiyangfenghuo &10-31 22:53
for(i = 1; i & 5; i++){
for(j = 0; j & 5; j++){
if(mid[ j ] & mid[ j+ 1 ]){
int temp = mid[j];
mid[j] = mid[j + 1];
mid[ j + 1 ] =
}} return mid[ 2 ];
热心网友&10-31 22:57
你的程序逻辑性有点乱,第一个if语句把前三个数的较小数变为下标为二的数,第二个又把后三个数的较大数放到二,这样并不能保证【2】就是中间数。建议用冒泡排序从小到大,然后直接输出mid[2]
MYSTERY807&10-31 22:43
信息来源于互联网,不保证内容的可靠性、真实性及准确性,仅供参考,版权归原作者所有!Copyright &
Powered byC语言用函数让三个数字倒序排列,可是总是正序的,不知道哪儿出错了,请帮我改正一下,谢谢_百度知道
C语言用函数让三个数字倒序排列,可是总是正序的,不知道哪儿出错了,请帮我改正一下,谢谢
#include&stdio.h&float max(float x,float y,float z){
}main(){ float a,b,c; scanf(&%f%f%f&,&a,&b,&c);
max(a,b,c);
printf(&daoxu:%f%f%f\n&,a,b,c); printf(&max=%f&,a);}
提问者采纳
max(a,b,c);float max(float x,float y,float z)这里 a-&x , b-&y, c-&z 只是简单的值传递,在max函数中改变的只是x,y,z的值,不会向上传递给a,b,c的。建议:1. a,b,c定义成全局变量,
2. 或是用指针(推荐)
3. 在max函数中输出
我不是太懂,函数这块学的不好,我以为就是先定义一个函数float max(float x,float y,float z),然后下边引用这个函数max(a,b,c);就能直接用,你说的在max函数里只改变了xyz的值是什么意思?还有就是abc定义成全局变量要怎么改?最好能说的更细一点儿,谢谢了。
变量是有作用域的
a 就是全局变量,从程序开始到程序结束都可以引用 */ int
fun1( int b ){
/* b 和 c 是局部变量,只能在函数体内引用(当然是先定义后引用) */
/*这里可以引用a */
fun1函数的返回值,也就是函数的结果 */}
/* b c 到这后就不能引用了,b和c区别就是b的值可以从函数外传递得来 */main(){
/* main函数也是函数 */
/*d,e 局部变量,和b c一样 */
e=fun1(d);
/* d值传递给 fun1中的 b,只能d传给b, b不能给d */
/* e 就是 fun1函数最后return() 括号中的值 */
a=e*2 ; /* 这里也可以引用 a */
.....}/*
fun1() 中不能引用 d,e ,main()中不能引用 b,c *//* a可以在main()和fun1() 中都可以引用
提问者评价
其他类似问题
按默认排序
其他2条回答
你是要比较大小逆序排列?还是不比较直接按输入那样的逆序排列
我说错了,不是逆序,而是按从大到小排列,我现在的是怎么输入就怎么输出,一点都没有变。。
肯定的,排序不能按你那样,你那个函数只能返回一个值#include &stdio.h&void abc(double integer[]);void main(){
double integer[20];
printf(&please type three numbers :\n&);
for(i = 0;i & 3;i++)
printf(&第%d个:&,i+1);
scanf(&%lf&,&integer[i]);
abc(integer); printf(&\n The sorted numbers:\n&);
for(i = 0;i & 3;i++)
printf(&%5.0f&,integer[i]);}void abc(double integer[]){ int i, j,
for(i = 0;i & 2;i++)
for(j = i + 1;j & 3;j++)
if(integer[j] & integer[c])
if (c !=i)
tn = integer[i];
integer[i] = integer[c];
integer[c] =
}}这个可以,希望对你有帮助
我是练习要用函数做,而且想知道我的要怎么改才是对的,现在是在学习阶段,并不是只想要一个能运行的答案!要是只是想运行的话我做的出来!
我改成函数了!最好用数组,数组可以多个返回值
肯定会出错哈,定义的变量跟调用的函数中使用变量的名称都不一样,一个是用的ABC,一个使用的XYZ,改过来吧。采纳为最佳答案哈
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 c语言入门 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信