C语言 怎么在屏幕上同时输出如下两个平行四边形的图案

******** ********
******** ********
******** ********
******** ********
******** ********

#include <stdio.h>
#define ALPHA '*'
int main() {
    int i,n,k,l;
    scanf("%d",&n);
    if(n<1) return 0;
    for(i=0; i<n; i++) {
        for(k=0; k<i; k++) { printf("%c",' ');}
        for(l=0; l<n; l++) {printf("%c",ALPHA);}
        for(k=0; k<n-i; k++) {printf("%c",' ');}
//第二次将刚才的3个for反过来输出.
        for(k=0; k<n-i; k++) { printf("%c",' ');}
        for(l=0; l<n; l++) {printf("%c",ALPHA);}
        for(k=0; k<i; k++) {printf("%c",' ');}
        printf("\n");
    }
    return 0;
}

追问

这个要输入5,有编译出来就直接是那个图形的吗?

追答#include <stdio.h>
#define ALPHA '*'
int main() {
    int i,n,k,l,m;//将下面5行删除直接换成n=5,m=8;
    printf("平行四边形高多少?");//1
    scanf("%d",&n);//2
     printf("宽多少?");//3
     scanf("%d",&m);//4
    if(n<1 || m<1) return 0;//5
    for(i=0; i<n; i++) {
        for(k=0; k<i; k++) { printf("%c",' ');}
        for(l=0; l<m; l++) {printf("%c",ALPHA);}
        for(k=0; k<n-i; k++) {printf("%c",' ');}
//第二次将刚才的3个for反过来输出.
        for(k=0; k<n-i; k++) { printf("%c",' ');}
        for(l=0; l<m; l++) {printf("%c",ALPHA);}
        for(k=0; k<i; k++) {printf("%c",' ');}
        printf("\n");
    }
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-13
两个平行四边形必须同时打印了。

没一行都打印两个图形的一条,需要计算好两个图形的坐标。
第2个回答  2013-05-13
我简单地给你提一个思路,吧有半部分的程序写给你,你计算一下你的那个列数,然后想一下应该就可以把完整程序搞出来了。

#include<stdio.h>
main()
{
int m,i,j;
printf("请输入一个不大于9的数字:");
scanf("%d",&m);
for(i=1;i<=m;i++)
{
for(j=1;j<=m-i;j++)
printf(" ");
for(j=1;j<=2*m-1;j++)
printf("*");

printf("\n");
}
}本回答被网友采纳