C语言for循环打印各种字符三角形+菱形的方法

1.编写一个程序,在用户输入某个大写字母后,产生一个金字塔图案,例如输入字母E:

A ABA ABCBA ABCDCBA ABCDEDCBA

C语言代码实现:
#include /* 1***A 2**ABA 3*ABCBA 4ABCDCBA */ int main() { char tem; int num,i,j; printf("输入一个大写字母\n"); scanf("%c",&tem); while(tem>90 || tem<65) { scanf("%c",&tem); printf("你输入的不是大写字母,请重新输入!!!!\n"); } num = tem-(90-26); //三角形输出 for(i=1; i<=num; i++) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序字母 printf("%c",64+j); for(j=j-2; j>=1; j--)//打印降序字母 printf("%c",64+j); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } //下面是菱形输出=上正三角+下倒三角****************************************** //上部分,正三角形输出 for(i=1; i<=num; i++) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序字母 printf("%c",64+j); for(j=j-2; j>=1; j--)//打印降序字母 printf("%c",64+j); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } //下部分,倒三角形输出(比上正三角形少一行) for(i=num-1; i>=1; i--) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序字母 printf("%c",64+j); for(j=j-2; j>=1; j--)//打印降序字母 printf("%c",64+j); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } return 0; }

运行结果:
C语言for循环打印各种字符三角形+菱形的方法
文章图片

2.编写一个程序,在用户输入一个正整数,产生一个金字塔图案,例如输入4:
1 121 12321 1234321

C语言代码实现:
#include /* ****1 ***121 **12321 *1234321 */ int main() { int tem; int num,i,j; printf("输入一个2-9之间的正整数\n"); scanf("%d",&tem); num = (int)tem; //如果输入浮点型也要变成int型 //三角形输出 for(i=1; i<=num; i++) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序数字 printf("%d",j); for(j=j-2; j>=1; j--)//打印降序数字 printf("%d",j); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } //下面是菱形输出=上正三角+下倒三角****************************************** //上部分,正三角形输出 for(i=1; i<=num; i++) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序数字 printf("%d",j); for(j=j-2; j>=1; j--)//打印降序数字 printf("%d",j); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } //下部分,倒三角形输出(比上正三角形少一行) for(i=num-1; i>=1; i--) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序数字 printf("%d",j); for(j=j-2; j>=1; j--)//打印降序数字 printf("%d",j); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } return 0; }

运行结果:
C语言for循环打印各种字符三角形+菱形的方法
文章图片

3.编写一个程序,在用户输入一个正整数,产生一个星星金字塔图案,例如输入5:
* *** ***** ******* *********

C语言代码实现:
#include int main() { int tem; int num,i,j; printf("输入一个正整数\n"); scanf("%d",&tem); num = (int)tem; //如果输入浮点型也要变成int型 //三角形输出 for(i=1; i<=num; i++) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序 printf("*"); for(j=j-2; j>=1; j--)//打印降序 printf("*"); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } //下面是菱形输出=上正三角+下倒三角****************************************** //上部分,正三角形输出 for(i=1; i<=num; i++) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序 printf("*"); for(j=j-2; j>=1; j--)//打印降序 printf("*"); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } //下部分,倒三角形输出(比上正三角形少一行) for(i=num-1; i>=1; i--) { for(j=1; j<=num-i; j++)//打印空格 printf(" "); for(j=1; j<=i; j++)//打印升序 printf("*"); for(j=j-2; j>=1; j--)//打印降序 printf("*"); for(j=1; j<=num-i; j++)//打印空格 printf(" "); printf("\n"); //换行 } return 0; }

运行结果:
【C语言for循环打印各种字符三角形+菱形的方法】C语言for循环打印各种字符三角形+菱形的方法
文章图片

    推荐阅读