Online Compiler C

#include <stdio.h> int main() { int N,i; scanf("%d",&N); i=1; while(i<=N){ printf("%d %d %d\n",i,i*i,i*i*i); i++; } return 0; }
这段代码的功能是:读取一个整数N,然后输出从1到N每个数的平方和立方,每行显示一个数及其平方和立方。

代码逻辑是正确的,但有一个潜在问题需要注意:

- 变量`i`被声明为`int`类型,当N较大时,`i*i*i`可能会超出`int`的表示范围,导致溢出。例如,如果N接近1000,立方值会超过21亿,超出32位int的极限。