输入正整数N(1≤N≤50),输出数字1组成的上三角阵列(N行N列)
N为6时打印的图案
111111
11111
1111
111
11
1
#include<stdio.h>
int main()
{
int i,j;
int num;
scanf("%d",&num);
for(i=0;i<num;i++)
{
for(j=0;j<i;j++)//打印空格
{
printf(" ");
}
for(j=i;j<num;j++)//打印图案
{
printf("1");
}
printf("\n");//打印换行
}
return 0;
}
这种类型题目可将图案模块化,这道题假设n=5;第一部分是打印‘1’(按5,4,3,2,1的次数打印),第二部分打印空格(按0,1,2,3,4的次数打印)。
输入正整数N(1≤N≤26),输出大写字母组成的等腰三角形(N行)
N为6时输出的图案
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA
ABCDEFEDCBA
#include<stdio.h>
int main()
{
int i,j;
int num;
scanf("%d",&num);
for(i=0;i<num;i++)
{
for(j=i;j<num-1;j++)//打印空格
{
printf(" ");
}
for(j=0;j<=i;j++)//打印正三角序列
{
printf("%c",j+65);
}
for(j=i;j>0;j--)//打印反三角序列
{
printf("%c",j+64);
}
printf("\n");
}
return 0;
}
输入正整数N(1≤N≤50),输出星号组成的菱形图案(中轴线长度为2N-1)
N为3时打印的图案
*
***
*****
***
*
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int i, j;
int num;
scanf("%d", &num);
for (i = 0; i < num; i++)
{
for (j = num - 1; j > i; j--)//打印正三角空格
{
printf(" ");
}
for (j = 0; j <= i; j++)//打印正三角图案
{
printf("*");
}
for (j = 0; j < i; j++)//打印反三角图案
{
printf("*");
}
printf("\n");
}
//打印倒三角图案
for (i = 0; i < num - 1; i++)
{
for (j = 0; j <= i; j++)//打印倒三角空格
{
printf(" ");
}
for (j = num - 1; j > i; j--)//打印正的倒三角
{
printf("*");
}
for (j = num - 1 - 1; j > i; j--)//打印反的倒三角
{
printf("*");
}
printf("\n");
}
return 0;
}