19楼的非常可能溢出
此人已消失
#include <stdio.h>
long temp;
long calculate(long m){ /*计算最后一个非零的数*/
temp=m%10;
if(temp!=0) return temp;
else{
calculate(m/10); /把原来的calculate(temp)改了,这里用temp就成死循环了/
}
}
main(){
long i,j,m;
j=1;m=1;
printf("please input a number:");
scanf("%ld",&i);
for(m=1;m<=i;m++){
j=j*m;
}
printf("\nthe last no zero number is:%d\n",calculate(j));
}