1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > c语言打印空心矩形图案的程序 C语言空心菱形 *号打印图形

c语言打印空心矩形图案的程序 C语言空心菱形 *号打印图形

时间:2020-10-22 00:22:25

相关推荐

c语言打印空心矩形图案的程序 C语言空心菱形 *号打印图形

//1.空心菱形

运行结果:

代码实现:

int line = 0, m = 0;

printf("请输入行数:\n");

scanf("%d", &line);

m = (line + 1) / 2;

//上半部分

for(int i =1; i <= m; i++) //控制行数

{

for(int k =0; k < m - i; k++)//控制空格数

{

printf(" ");

}

printf("*");

if(i == 1){

printf("\n");//换行

continue;//结束本次部分循环,继续执行下一层循环继续 i++

}

for(int j =0; j < 2 * i - 3 ; j++)

{

printf(" ");

}

printf("*");

printf("\n");

}

//下半部分

for(int i = m -1; i > 0; i--)//控制行数

{

for(int k =0; k < m-i; k++)//控制每行的空格数

{

printf(" ");

}

printf("*");

if(i == 1){

printf("\n");

continue;//结束本次部分循环,继续执行下一层循环继续 i--

}

for(int j =0; j < 2 * i - 3; j++)

{

printf(" ");

}

printf("*");

printf("\n");

}

//2.打印Z型

运行结果:

代码实现:

int n = 0;

printf("Please enter n:\n");

scanf("%d", &n);

for (int i = 1; i <= n; i++) {

for (int j = 1; j <= n; j++) {

if (j == n - i + 1 || i == 1 || i == n) {

printf("*");

}else

printf(" ");

}

printf("\n");

}

//3.打印X型

运行结果:

代码实现:

分析:此题与上题的区别在于打印'*'号的位置不同,编程时要找出应打印'*'号的位置和两个循环变量i、j以及行数n的关系

int n = 0;

printf("Please Enter n:\n");

scanf("%d", &n);

for(int i = 1;i <= n;i++){/*输出图形的上半部分(含中心行)*/

for(int j = 1;j <= 2 * n - i - 1;j++){

if(j == i){

printf("*");

}else{

printf(" ");

}

}

printf("*\n");

}

for(int i = 1;i < n;i++){/*输出图形的下半部分(不含中心行)*/

for(int j = 1;j <= n + i;j++){

if(j == n - i){

printf("*");

}else

printf(" ");

}

printf("*\n");

}

4.打印空心等腰梯形

运行结果:

代码实现:

int n = 0;

printf("Please Enter n:\n");

scanf("%d", &n);

for(int i = 1;i <= n;i++){

for(int j = 1;j <= 2 * n + i - 3;j++){

if(j == n - i + 1 || (j > n - i + 1 && (i == 1 || i == n))){

printf("*");

}else{

printf(" ");

}

}

printf("*\n");

}

5.打印实心等腰梯形

运行结果:

代码实现:

int n = 0;

printf("Please Enter n:\n");

scanf("%d", &n);

for(int i = 1;i <= n;i++) {

for(int j = 1;j <= n-i;j++) {

printf(" ");

}

for(int j = 1;j <= 2 * i - 1 + (n - 1);j++){

printf("*");

}

printf("\n");

}

6.输出倒三角形

运行结果:

代码实现:

int n = 0;

printf("Please Enter n:\n");

scanf("%d", &n);

for(int i = 1;i <= n;i++)/*重复输出图形的n行*/

{

for(int j = 1;j <= 2 * n - i;j++)/*重复输出图形一行中的每个符*/

{ if(j <= i-1){

printf(" ");/*输出前面的空格*/

}

else

printf("*");/*输出后面的*号*/

}

printf("\n");

}

//7.打印平行四边形

运行结果:

代码实现:

int n = 0;

printf("Please Enter n:\n");

scanf("%d", &n);

for(int i = 1;i <= n;i++) {

for (int j =1; j <= n - i; j++) {

printf(" ");

}

for (int j = 1; j <= n; j++) {

printf("*");

}

printf("\n");

}

//8.输出矩形

运行结果:

代码实现:

int n = 0;

printf("Please Enter n:\n");

scanf("%d", &n);

for(int i = 1;i <= n;i++) {//打印行数

for(int j = 1;j <= n;j++) {//打印列数

printf("*");

}

printf("\n");

}

//9.打印等腰三角形

运行结果:

代码实现

int n = 0;

printf("Please Enter n:\n");

scanf("%d", &n);

for (int i = 1; i <= n; i++)//控制输入的行数

{

for (int k = 1; k <= n - i; k++)//控制空格的输入

{

printf(" ");

}

for (int j = 1; j <= 2 * i - 1; j++)//控制*的输入

{

printf("*");

}

printf("\n");

}

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