#include<stdio.h>
void main()
{
int a,c;
int abc();
scanf("%d",&a);
printf("%d",abc(a));
}
int abc (int n)
{
if(n<=0) return 1;
else return (n*abc(n-1));
}
提示错误,function does not take 1 parameters怎么修改?
函数的调用少了参数,和函数定义的模型不一样。而且我觉得你最好把函数定义放main前面,或者在main前面写个函数声明。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2014-02-10
#include<stdio.h>
int abc (int );
void main()
{
int a,c;
int abc();
scanf("%d",&a);
printf("%d",abc(a));
}
int abc (int n)
{
if(n<=0) return 1;
else return (n*abc(n-1));
}追问
int abc (int );
void main()
{
int a,c;
int abc();
scanf("%d",&a);
printf("%d",abc(a));
}
int abc (int n)
{
if(n<=0) return 1;
else return (n*abc(n-1));
}追问
你写错了。。丢了个字母
追答丢了什么字母? 难道跑不起来?
第2个回答 2014-02-10
将 求阶乘的函数放到main 函数上边,,,,或者在main函数中加一句 "int abc (int n);" 进行函数声明,,函数使用和变量是一样的,,都需要先声明在使用追问
恩,错误是没有了,我就是想放在main后面试试。我改成int abc (int n)后,还有一个警告,你觉得警告在哪?
本回答被提问者采纳