网站设计规划高中信息技术,nginx网站建设,昆明网站建设 技术支持,漯河网站关键词优化题目1#xff1a; 思路#xff1a; 如果我们要打印一个实心正方形#xff0c;其实就是一个二维数组#xff0c;i控制行#xff0c;j控制列#xff0c;行列不需要控制#xff0c;arr[i][j]直接打印星号即可。 对于空心正方形#xff0c;我们只需要控制行和列的条件 思路 如果我们要打印一个实心正方形其实就是一个二维数组i控制行j控制列行列不需要控制arr[i][j]直接打印星号即可。 对于空心正方形我们只需要控制行和列的条件当i 0或in-1j0或jn-1条件成立时我们才打印星号其他地方打印空格即可。 代码实现如下
#include stdio.hint main()
{int arr[20][20] { 0 };int n 0;while (scanf(%d, n) ! EOF){for (int i 0; i n; i){for (int j 0; j n; j){//1.打印星号if ((i 0) || (i n - 1) || (j 0) || (j n - 1)){printf(* );}//2.打印空格else{printf( );}}printf(\n);}}return 0;
}题目2 思路 通过观察我们发现当i j时打印主对角线的星号当i j n-1时打印次对角线的星号其他地方打印空格即可。 代码实现如下
#include stdio.hint main()
{int arr[20][20] { 0 };int n 0;while (scanf(%d, n) ! EOF){for (int i 0; i n; i){for (int j 0; j n; j){//1.打印星号if ((i j) || (i j) n-1){printf(*);}//2.打印空格else{printf( );}}printf(\n);}}return 0;
}题目3 思路我们分为上半部分和下半部分的打印 #include stdio.hint main()
{int line 0;scanf(%d, line);//打印上半部分for (int i 0; i line; i){//1.打印空格for (int j 0; j line - 1 - i; j){printf( );}//2.打印星号for (int j 0; j 2 * i 1; j){printf(*);}printf(\n);}//打印下半部分for (int i 0; i line - 1; i){//1.打印空格for (int j 0; j i 1; j){printf( );}//2.打印星号for (int j 0; j (line - 1 - i) * 2 - 1; j){printf(*);}printf(\n);}return 0;
}