
程序找错问题
考卷上的题目,家里复习不知道,望解答,谢谢.本程序从键盘输入一个正整数n,计算n!的值,要求定义和调用fact(n),计算n!(一共三个错,所有变量已经声明且赋值)#in...
考卷上的题目,家里复习不知道,望解答,谢谢.
本程序从键盘输入一个正整数n,计算n!的值,要求定义和调用fact(n),计算n!(一共三个错,所有变量已经声明且赋值)
#include<stdio.h>
void main(void)
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = fact();
printf("%d!=%f\n",n,f);
}
double fact(int m);
{
int i;
double product=0;
for (r=1;i<=m;i++)
product=product*i;
return product;
}
程序有可能打错,所以帮忙尽量找下哈. 展开
本程序从键盘输入一个正整数n,计算n!的值,要求定义和调用fact(n),计算n!(一共三个错,所有变量已经声明且赋值)
#include<stdio.h>
void main(void)
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = fact();
printf("%d!=%f\n",n,f);
}
double fact(int m);
{
int i;
double product=0;
for (r=1;i<=m;i++)
product=product*i;
return product;
}
程序有可能打错,所以帮忙尽量找下哈. 展开
5个回答
展开全部
找错误:
第一处:
f=fact()//->这里需要给他传递一个参数,否则找不到无参函数。
第二处:
double fact(int m);//->函数括号后的"分号"!写函数时后不能带分号。
第三处:
在写分号后就不能打大括号了。这个错误是建立在“第二处”基础之上的。
第一处:
f=fact()//->这里需要给他传递一个参数,否则找不到无参函数。
第二处:
double fact(int m);//->函数括号后的"分号"!写函数时后不能带分号。
第三处:
在写分号后就不能打大括号了。这个错误是建立在“第二处”基础之上的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = fact(n);
printf("%d!=%f\n",n,f);
}
double fact(int m)
{
int i;
double product=1;
for (i=1;i<=m;i++)
product=product*i;
return product;
}
void main()
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = fact(n);
printf("%d!=%f\n",n,f);
}
double fact(int m)
{
int i;
double product=1;
for (i=1;i<=m;i++)
product=product*i;
return product;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main(void)
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = (double)fact(n);//fact()中未传参数,强制int变量转化成double类型
printf("%d!=%f\n",n,f);
getch();
}
double fact(int m)//多一分号
{
int i;
double product=1;
for (i=1;i<=m;i++)//r换成i
product=product*i;
return product;
}
void main(void)
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = (double)fact(n);//fact()中未传参数,强制int变量转化成double类型
printf("%d!=%f\n",n,f);
getch();
}
double fact(int m)//多一分号
{
int i;
double product=1;
for (i=1;i<=m;i++)//r换成i
product=product*i;
return product;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main(void)
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = fact(n);//未添加形参
printf("%d!=%f\n",n,f);
}
double fact(int m)//多一个分号
{
int i;
double product=0;
for (i=1;i<=m;i++)//把i错写成了r
product=product*i;
return product;
}
void main(void)
{
int n;
double f;
double fact(int m);
printf("input n:");
scanf("%d",&n);
f = fact(n);//未添加形参
printf("%d!=%f\n",n,f);
}
double fact(int m)//多一个分号
{
int i;
double product=0;
for (i=1;i<=m;i++)//把i错写成了r
product=product*i;
return product;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
f = fact();//错误,你定义了double fact(int m);需要传一个实参
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询