酷代码 AI
菜单

题目描述 输出一个第 𝑖 列都是由数字 𝑖 组成的 𝑛 ∗ 𝑛 正方形.  输入 读入整数 𝑛 [ 1 , 9 ] 表示正方形的边长 输出 具体如样例 样例输入 复制 3 样例输出 复制 123 123 123 用C

```c #include <stdio.h> int main() { int n; // 读取输入的正方形边长n scanf("%d", &n); // 外层循环控制行数 for (int i = 0; i < n; i++) { // 内层循环控制列数 for (int j = 1; j <= n; j++) { // 输出第j列对应的数字 printf("%d", j); } // 每一行输出结束后换行 printf("\n"); } return 0; } ``` 代码解释 1. 输入读取:使用`scanf`函数读取用户输入的整数`n`,代表正方形的边长。 2. 外层循环:`for (int i = 0; i < n; i++)`用于控制正方形的行数,总共循环`n`次,即输出`n`行。 3. 内层循环:`for (int j = 1; j <= n; j++)`用于控制每一行的列数,每次循环输出当前列对应的数字`j`。 4. 换行处理:每一行的数字输出完毕后,使用`printf("\n");`进行换行,以便输出下一行。 复杂度分析 - 时间复杂度:$O(n^2)$,因为有两层嵌套循环,每层循环的次数都是`n`。 - 空间复杂度:$O(1)$,只使用了常数级的额外空间。 [2025-12-07 17:09:34 | AI问答 | 344点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多