作业帮 > 综合 > 作业

C语言编程,字母组成的菱形图案

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/12 17:26:57
C语言编程,字母组成的菱形图案
输入值n
根据输入的n(约定n>1)在屏幕上显示对应的图案.
若输入n=2
输出
a
b b
a
若输入n=5
输出
a
b b
c c
d d
e e
d d
c c
b b
a
#include<stdio.h>
void prt_star( int i ,int m )
{
\x09int j ;
\x09for(j=0;j<m-i-1;j++)
\x09\x09printf(" ");
\x09if(i>0)
\x09{
\x09\x09printf("%c", 'a'+i);
\x09\x09for(j=0;j<2*i-1;j++)
\x09\x09\x09printf(" ");
\x09}
\x09printf("%c\n",'a'+i);
}
int main()
{
    int i,m=5;
    for(i=0;i<=m-1;i++) //half of up
\x09\x09prt_star(i,m);
\x09for(i=m-2;i>=0;i--) //half of down
\x09\x09prt_star(i,m);
\x09return 0;
}
再问: 好像不符合题意啊,输出的图形要取决于输入的N的值
再答: #include<stdio.h>
void prt_star( int i ,int m )
{
    int j ;
    for(j=0;j<m-i-1;j++)
        printf(" ");
    if(i>0)
    {
        printf("%c", 'a'+i);
        for(j=0;j<2*i-1;j++)
            printf(" ");
    }
    printf("%c\n",'a'+i);
}
int main()
{
    int i,m=0;
    printf("input m: ");
    scanf("%d", &m );
    for(i=0;i<=m-1;i++) //half of up
        prt_star(i,m);
    for(i=m-2;i>=0;i--) //half of down
        prt_star(i,m);
    return 0;
}