用C语言编程输出菱形 图案

就是那*号的菱形图案阿。请介绍那些空格怎么输!谢谢

#include<stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=4;i++) //先打印上边的四行
{
for(j=1;j<=4-i;j++) //控制要打印的空格数量
printf(" ");
for(k=1;k<=2*i-1;k++) //控制要打印的星号数
printf("*");
printf("\n");
}
for(i=1;i<=3;i++)
{
for(j=1;j<=i;j++) //控制要打印的空格数
printf(" ");
for(k=1;k<=7-2*i;k++) //控制要打印的星号数
printf("*");
printf("\n");
}
}

扩展资料:

for循环

for循环结构是c语言中最具有特色的循环语句,使用最为灵活方便,它的一般形式为:

for(表达式1;表达式2;表达式3)循环体语句 。(其中;不能省略)

表达式

表达式1为初值表达式,用于在循环开始前为循环变量赋初值。

表达式2是循环控制逻辑表达式,它控制循环执行的条件,决定循环的次数。

表达式3为循环控制变量修改表达式,它使for循环趋向结束。

循环体语句是在循环控制条件成立的情况下被反复执行的语句。

但是在整个for循环过程中,表达式1只计算一次,表达式2和表达式3则可能计算多次,也可能一次也不计算。循环体可能多次执行,也可能一次都不执行。

先执行表达式2,然后执行循环结构,最后表达式3,一直这样循环下去。

for循环语句是c语言种功能最为强大的语句,甚至在一定程度上可以代替其他的循环语句。

do

do循环结构,do 1 while⑵;的执行顺序是1->2->1...循环,2为循环条件。

while

while循环结构,while(1) 2; 的执行顺序是1->2->1...循环,1为循环条件

以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。

参考资料:C语言-百度百科

温馨提示:内容为网友见解,仅供参考
第1个回答  2021-06-24

1、首先在电脑中打开C语言编辑器,新建一个源文件,如下图所示。

2、然后写入代码,如下图所示,源代码如下:#include<stdio.h>//用C语言循环来画出数字构成的菱形 。

3、继续输入代码,如下图所示,for(i=1;i<=n-1;i++)      //输出下半个三角形 {for(r=1;r<=i;r++){printf(" ");}if(i==n-1)printf("1");else{for(t=1;t<=n-i;t++)。

4、最后点击编译并运行,如下图所示,然后输入n就能看到结果了,菱形图案。

本回答被网友采纳
第2个回答  推荐于2018-02-22

循环输出, 只要确定了空格的个数就可以。

int main()  
{  
    int line = 0;  //上半部分行数  
    int i = 0;   
    int j = 0;  
    int n = 0;  
    scanf("%d", &line);  
    for (i = 0; i < line; i++)  
    {  
        for (n = 0; n < line - 1 - i; n++)  
        {  
            printf(" ");  
        }  
        for (j = 0; j < 2 * i+1; j++)  
        {  
                printf("*");  
        }  
            printf("\n");  
    }  
    for (i = 0; i < line - 1; i++)  
    {  
        for (n = 0; n < i + 1; n++)  
        {  
            printf(" ");  
        }  
        for (j = 0; j < 2 * (line - 1 - i) - 1; j++)  
        {  
            printf("*");  
        }  
        printf("\n");  
    }  
      
    system("pause");  
    return 0;  
}

这个是实心菱形的代码。

本回答被网友采纳
第3个回答  推荐于2017-11-17
提供2个
#include<stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=4;i++) //先打印上边的四行
{
for(j=1;j<=4-i;j++) //控制要打印的空格数量
printf(" ");
for(k=1;k<=2*i-1;k++) //控制要打印的星号数
printf("*");
printf("\n");
}

for(i=1;i<=3;i++)
{
for(j=1;j<=i;j++) //控制要打印的空格数
printf(" ");
for(k=1;k<=7-2*i;k++) //控制要打印的星号数
printf("*");
printf("\n");
}
}

#include<stdio.h>
#include<math.h>

main()
{ int i,j,n,k;
scanf("%d",&n);
n=n+n-1;//不符合要求的话去掉这句
for(i=1;i<=n;i++)
{ for(j=1;j<=abs(n/2-i+1);j++)
printf(" ");
for(k=1;k<=n-2*abs(n/2-i+1);k++)
printf("*");
printf("\n");
}
}本回答被网友采纳
第4个回答  推荐于2018-02-22
#include<stdio.h>
#include<stdlib.h>
int main()
{int n,i,j;
scanf("%d",&n);
for(i=1-n;i<=n-1;i++)
{for(j=0;j<abs(i);j++)
   printf(" ");
 for(j=0;j<2*(n-abs(i))-1;j++)
   printf("*");
 printf("\n");
}
return 0;
}

本回答被网友采纳
相似回答