pta显示运行超时,但在VC6.-上可以运行
这是题目:题目描述
给你一个正整数,你能算出它的阶乘是多少吗?
输入描述:
若干行,每行一个整数n(1<=n<=20)。
输出描述:
按顺序输出每个整数的阶乘,一个结果占一行
这是我写的程序:
#include<stdio.h>
int sh(int i)
{
int j=1,k;
for(k=i;k>=1;k--)
j=j*k;
return j;
}
int main()
{
int a[100],i=1,b;
char ch;
do
{
scanf("%d",&a[i++]);
}while((ch=getchar())!= ' ');
for(b=1;b<i;b++)
{
printf("%d\n",sh(a[b]));
}
}
运行结果及报错内容
结果正常 但pta显示运行超时
我的解答思路和尝试过的方法