注册 登录
编程论坛 C语言论坛

c语言 循环

aiia_lyheim 发布于 2019-10-22 12:55, 1204 次点击
求大佬指导
要求输出两个对称菱形
第一行A
第二行3个B
以此类推 一共10行
2 回复
#2
自学的数学2019-10-22 14:48
不知这样行不行:
程序代码:
#include <stdio.h>
int main()
{
    int n=5;
    int i,j,k;
    char ch;
    for(i=0;i<n;i++){
        for(j=0;j<n-i-1;j++){
            printf(" ");
        }
        ch = 'A' + i;
        for(k=1;k<=2*i+1;k++){
            printf("%c",ch);
        }
        printf("\n");
    }
   
    for(i=0;i<n-1;i++){
        for(j=0;j<=i;j++){
            printf(" ");
        }
        ch = ch - 1;
        for(k=1;k<=2*(n-i)-3;k++){
            printf("%c",ch);
        }
        printf("\n");
    }
    return 0;
}
#3
纯蓝之刃2019-10-22 17:54
程序代码:
#include <stdio.h>
#include <string.h>

int main()
{
    int n=5;
    int i,j;
    char ch='A';
    char a[n*2][n*2-1];
    memset(a,' ',sizeof(a));        //初始化数组
    for(i=0;i<n;i++)                //给数组赋值
    {
        for(j=n;j>=n-i;j--)
        {
            a[i][j-1]=ch;
            a[i][n*2-j-1]=ch;
            a[n*2-1-i][j-1]=ch;
            a[n*2-1-i][n*2-j-1]=ch;
        }
        ch++;
    }

    for(i=0;i<n*2;i++)              //打印数组
    {
        for(j=0;j<n*2-1;j++)
        {
            printf("%c",a[i][j]);
        }
        printf("\n");
    }

    return 0;
}


[此贴子已经被作者于2019-10-22 17:56编辑过]

1