c语言 为什么程序编译没有错 无法运行呢

2025-02-28 03:28:54
推荐回答(3个)
回答1:

scanf("%d,%d",&m,&n) 这句,输入两个数时中间也得用逗号隔开,你可以改成scanf("%d%d",&m,&n) ,这样输入两个数时用空格隔开就行

#include 

long int jf(int n)
{int i;
long int t=1;
for (i=1;i<=n;i++)
t*=i;
return (t);
}

long int cmn(int m,int n)
{return (jf(m)/(jf(n)*jf(m-n)));}

int main ()
{int m,n;
 printf("please enter m and n:");
 scanf("%d%d",&m,&n);
 printf("%d\n",cmn(m,n));
 return 0;
}

如有不懂,欢迎追问!

回答2:

scanf("%d,%d",&m,&n) 这句,输入两个数时中间也得用逗号隔开,你可以改成scanf("%d%d",&m,&n) ,这样输入两个数时用空格隔开就行
1234567891011121314151617181920#include long int jf(int n){int i;long int t=1;for (i=1;i<=n;i++)t*=i;return (t);} long int cmn(int m,int n){return (jf(m)/(jf(n)*jf(m-n)));} int main (){int m,n; printf("please enter m and n:"); scanf("%d%d",&m,&n); printf("%d\n",cmn(m,n)); return 0;}
如有不懂,欢迎追问!

回答3:

可以运行啊