自己用VC6.0写了一段程序
#include<math.h>
void main(void)
{
unsigned long int a=1;
unsigned char b,c=1;
for(b=0;b<100;b++)
{
a=a*c;
c++;
}
printf("a=%ld\n",a);
}
结果a=0;说明100!用unsigned long int根本无法储存,百度一下,找到100!=93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000;谁能用单片机算出来呢?
|