int product; // 未初始化
for (int i = 1; i <= n; i++) {
product *= i;
}
int product = 1;
for (int i = n; i >= 1; i--) { // 错误的循环条件
product *= i;
}
unsigned long long product = 1;
for (int i = 1; i <= n; i++) {
if (product > ULLONG_MAX / i) {
printf("Overflow detected!\n");
break;
}
product *= i;
}
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:C语言累乘的调试方法有哪些