永发信息网

出现C2144error C2144: syntax error : missing ')' before type 'int'

答案:1  悬赏:80  手机版
解决时间 2021-03-30 16:38
  • 提问者网友:山高云阔
  • 2021-03-30 08:04
出现C2144error C2144: syntax error : missing ')' before type 'int'
最佳答案
  • 五星知识达人网友:鱼芗
  • 2021-03-30 09:12
#include
void main()
{
float fac(int n);
int n;
float y;
printf("input an integer number:");
scanf("%d",n);
//这里: y=fac(n);
printf("%d!=%10.0f\n",n,y);
}
float fac(int n)
{
float f;
if(n<0)
{
printf("n<0,dataerror!");
}
else
if(n==0||n==1)
f=1;
else
f=fac(n-1)*n;
return(f);
}追问请问 运行的时候出现 给内存不能为“written” 是怎么回事啊 软件的问题 还是程序没分配内存什么的原因啊 谢谢啊 改过之后 可以编译了 但是为什么这么改啊追答出现“内存不能为write”之类的基本都是在程序中非法访问了内存,比如在程序中用了指针,但是你没有给指针赋予有效的地址,或者你的指针变成野指针(就是你的指针所指向的内存空间已经释放)了但是你还在使用那个指针。。。那样你的指针可能莫名的指向别的进程正在使用的地址空间,当然操作系统就不允许了。。。
第二个问题: float fac(int n);这个叫函数的声明,而如果要使用已经定义了的函数就不要再加类型了。。。这个可是C语言的基础语法啊...好好看看C语言的语法吧 @_@!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯