主题:静态外部变量问题
这个程序编译连接都没出错但为什么得不到正确的结果呢,代码如下:
#include<stdio.h>
#include<stdlib.h>
int Factorial(int);
static int count;
int main()
{
int number,answer;
printf("请输入数值求阶乘");
scanf("%d\n",&number);
answer=Factorial(answer);
printf("%d!=%d",number,answer);
printf("count=%d\n",count);
system("pause");
return 0;
}
int Factorial(int number)
{
int i;
count=1;
for(i=1;i<=number;i++);
{
count=count*i;
return count;}
}
若输入5后
编译后无法显示得到的阶乘结果
正确的结果是:
请输入数值求阶乘:5;
5!=120
count=120;
#include<stdio.h>
#include<stdlib.h>
int Factorial(int);
static int count;
int main()
{
int number,answer;
printf("请输入数值求阶乘");
scanf("%d\n",&number);
answer=Factorial(answer);
printf("%d!=%d",number,answer);
printf("count=%d\n",count);
system("pause");
return 0;
}
int Factorial(int number)
{
int i;
count=1;
for(i=1;i<=number;i++);
{
count=count*i;
return count;}
}
若输入5后
编译后无法显示得到的阶乘结果
正确的结果是:
请输入数值求阶乘:5;
5!=120
count=120;