600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 【C语言练习——打印空心正方形及其变形】

【C语言练习——打印空心正方形及其变形】

时间:2019-02-01 00:25:43

相关推荐

【C语言练习——打印空心正方形及其变形】

活动地址:毕业季·进击的技术er

夏日炎炎,热浪中我们迎来毕业季,这是告别,也是迈向新起点的开始。这是一个毕业的月份,每年看到很多毕业生都离校上班,在校生准备考试和暑假实习,都非常感慨,不管怎样,作为在校生,玩好的同时,还是要能够扎实的学习,打好坚实基础,从初学C语言开始,为后续的实习找工作做准备。

文章目录

前言1、打印空心正方形1.1 图形1——无空格版1.2 图形2——有空格版1.3 图形3——旋转45度,没有空格版1.4 图形4——旋转45度,有空格版 总结

前言

前面已经在【C语言练习——打印正方形及其变形】、【C语言练习——打印空心下三角及其变形】、【C语言练习——打印空心上三角及其变形】 练过打印空心上三角及其变形、打印空心三角形及其变形、打印正方形及其变形。

本文在此基础上,练习打印空心正方形及其变形

1、打印空心正方形

1.1 图形1——无空格版

//打印空心正方形 无空格int main(){int n = 0;while (scanf("%d", &n) != EOF){for (int i = 0; i < n; i++)//行数{for (int j = 0; j < n; j++)//列数{//满足条件输出 * ,即在边界上就是 *if (i == 0 || j == 0 || i == n - 1 || j == n - 1)printf("*");elseprintf(" ");//不在边界上的点都是空格}printf("\n");}}return 0;}

结果见下图:

1.2 图形2——有空格版

//打印空心正方形 空格版int main(){int n = 0;while (scanf("%d", &n) != EOF){for (int i = 0; i < n; i++)//行数{for (int j = 0; j < n; j++)//列数{//满足条件输出 * ,即在边界上就是 *if (i == 0 || j == 0 || i == n - 1 || j == n - 1)printf("* ");elseprintf(" ");//不在边界上的点都是空格}printf("\n");}}return 0;}

结果见下图:

1.3 图形3——旋转45度,没有空格版

//打印正方形,旋转45度,没有空格版int main(){int n = 0;while (scanf("%d", &n) != EOF){//打印上半部分 nfor (int i = 0; i < n; i++){//打印一行//打印空格int j = 0;for (j = 0; j < n - 1 - i; j++){printf(" ");}//打印*for (j = 0; j < 2 * i + 1; j++){//满足条件输出 * ,即在边界上就是 *if (j == 0 || j == 2 * i )printf("*");elseprintf(" ");//不在边界上的点都是空格}printf("\n");}//打印下半部分 n-1for (int i = 0; i < n - 1; i++){//打印一行//打印空格int j = 0;for (j = 0; j <= i; j++){printf(" ");}//打印*for (j = 0; j < (n - 1 - i) * 2 - 1; j++){//满足条件输出 * ,即在边界上就是 *if (j == 0 || j == (n - 1 - i) * 2 - 2)printf("*");elseprintf(" ");//不在边界上的点都是空格}printf("\n");}}return 0;}

结果见下图:

1.4 图形4——旋转45度,有空格版

//打印正方形,旋转45度,有空格版int main(){int n = 0;while (scanf("%d", &n) != EOF){//打印上半部分 nfor (int i = 0; i < n; i++){//打印一行//打印空格int j = 0;for (j = 0; j < n - 1 - i; j++){printf(" ");}//打印*for (j = 0; j <= i; j++){//满足条件输出 * ,即在边界上就是 *if (j == 0 || i == j)printf("* ");elseprintf(" ");//不在边界上的点都是空格}printf("\n");}//打印下半部分 n-1for (int i = 0; i < n - 1; i++){//打印一行//打印空格int j = 0;for (j = 0; j <= i; j++){printf(" ");}//打印*for (j = 0; j < (n - 1 - i); j++){//满足条件输出 * ,即在边界上就是 *if (j == 0 || j == n - i - 2)printf("* ");elseprintf(" ");//不在边界上的点都是空格}printf("\n");}}return 0;}}

结果见下图:

总结

本文练习打印空心正方形及其变形,主要练习了:

外循环、内循环的应用注意行数、空格数、符号*数之间的数学表达式

活动地址:毕业季·进击的技术er

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。