case 4:
printf("请输入待计算阶乘的数(缓冲有限,最好不要超过7位数):");
scanf("%s", a);
if (strlen(a) <= 7) {
if (a[0] < 0x30 || a[0] > 0x39) {
printf("请输入自然数\n");
} else {
big_fac(a, c);
printf("%s! = %s\n", a, c);
}
} else {
printf("数据太大,无法计算\n");
}
break;
}
}
int main(int argc, char *argv[])
{
char choice[100];
while (1) {
show_choice();
scanf("%s", choice);
if (choice[0] >= '1' && choice[0] <= '4' && choice[1] == '\0') {
choice[0] -= 0x30;
show_input(choice);
} else if (choice[0] == '5' && choice[1] == '\0') {
printf("谢谢使用!\n");
break;
} else {
printf("无效的输入(请看大屏幕)\n");
}
}
return 0;
}
下边是程序运行截图。

