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

就是那*号的菱形图案阿。请介绍那些空格怎么输!谢谢... 就是那*号的菱形图案阿。请介绍那些空格怎么输!谢谢 展开
 我来答
匿名用户
2013-08-18
展开全部
/*用如下语句输出比较好理解,主要是循环结构的嵌套语句发挥作用,注意空格和星号的递增关系*/并且你需要多少行,就能输出多少行。精炼!#include "stdio.h"
void main()
{
int i,j,k,n;
printf("**************\n请输入想要的数\n**************");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("\n");
for(j=0;j<=n-i;j++)
printf(" ");
for(k=0;k<=2*i;k++)
printf("*");
}
printf(" ");
for(i=0;i<=n;i++)
{
printf("\n");
for(j=0;j<=i;j++)
printf(" ");
for(k=0;k<=2*(n-i);k++)
printf("*");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
4747哦
2019-06-06 · TA获得超过675个赞
知道小有建树答主
回答量:365
采纳率:73%
帮助的人:70.5万
展开全部
#include<stdio.h>
main()
{
int i,j,k;
int m;
printf("input 奇数m=");
scanf("%d",&m);
for(i=0;i<(m+1)/2;i++) //中间行数(m+1)/2
{
for(j=1;j<(m+1)/2-i;j++)//第i行输出空格的循环次数 (m+1)/2-i-1
printf(" "); //输出空格
for(k=0;k<(2*i+1);k++) //第i行输出*的循环次数2*i+1
{
printf("*");
}
printf("\n"); //输出第i行的*以后,换行执行i+1行的循环
}
//以下程序执行倒星三角形
for(i=0;i<(m-1)/2;i++) //剩下行数m-(m+1)/2=(m-1)/2
{
for(j=0;j<=i;j++)
printf(" ");
for(k=0;k<(m-2)-2*i;k++) //中间行(m+1)/2 的*个数为m个,下一行个数m-2
{
printf("*");
}
printf("\n");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2018-02-21
知道答主
回答量:6
采纳率:0%
帮助的人:5106
展开全部
谭浩强第四版课后题答案
#include<stdio.h>
int main()
{
int n=4;
int i,a,b;
//前4行.上半部分
for(i=1;i<=n;i++)//控制前六行行数
{
printf("\t");
for(a=n-1;a>=i;a--)//控制每行空格的个数
{
printf(" ");//输出空格
}
for(b=1;b<=2*i-1;b++)//控制每行*的个数
{
printf("*");//输出*
}
printf("\n");
}
//后3行,下半部分
for(i=n-1;i>=1;i--)//控制前四行行数
{
printf("\t");
for(a=i;a<=n-1;a++)//控制每行空格的个数
{
printf(" ");//输出空格
}
for(b=1;b<=2*i-1;b++)//控制每行*的个数
{
printf("*");//输出*
}
printf("\n");
}
printf("\n");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沧海雄风2009
2018-02-22 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8525
采纳率:79%
帮助的人:2732万
展开全部
#include <stdio.h>  
  
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");  
    }   
    return 0;  
}  
5
    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *
请按任意键继续. . .
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
芒果味的青瓜
2020-01-23
知道答主
回答量:8
采纳率:0%
帮助的人:4769
展开全部
/*-------------------------------------------
拓展:打印菱形(方法一)
--------------------------------------------*/

#include<stdio.h>
main()
{
int row,col;
for(row=1;row<=5;row++)
{
for(col=1;col<=20-row;col++) printf(" "); //输出每行要求的空格数
for(col=1;col<=2*row-1;col++) printf("*"); //输出每行的"*“数
printf("\n");
}
for(row=6;row<10;row++)
{
for(col=1;col<16+(row-5);col++) printf(" ");
for(col=1;col<2*(10-row);col++) printf("*");
printf("\n");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式