用c语言中的for循环输出菱形

 我来答
轾轾轾
2017-10-14 · TA获得超过903个赞
知道答主
回答量:59
采纳率:0%
帮助的人:11万
展开全部
#include <stdio.h>
int main()
{
int A=3;
scanf("%d",&A);

int i,j,x,a,b,c,d,e,f,g;
for(i=1;i<=A+1;i++)
{
for(x=A;x>=i;x--)
{
printf(" ");
}
for(a=1;a<=i;a++)
{
printf("*");
}
for(b=0;b<=i-2;b++)
{
printf("*");
}
for(c=A;c>=i;c--)
{
printf(" ");
}
printf("\n");
}
for(j=1;j<=A;j++)

for(d=1;d<=j;d++)
{
printf(" ");
}
for(e=A;e>=j;e--)
{
printf("*");
}
for(f=A-1;f>=j;f--)
{
printf("*");
}
for(g=0;g<=j-1;g++)
{
printf(" ");
}
printf("\n");
}
return 0;
}

要打出图片题目中所示菱形,只需run下程序,输入3即可(即input A=3)。代码中的那个A可以理解为菱形的横对角线的*的数量减1后的一半。以上代码适合初学者,因为我也是个初学者,对于C语言高手来说,我这个复杂了,我的思路是四个小三角形拼出一个菱形的。。。你run下看可不可以?然后由于这个答案输出框的条件限制,输出的格式,如空格换行等那些会没显示到
匿名用户
2015-11-03
展开全部
#include <stdio.h>

main(){
printf(" * \n");
printf(" *** \n");
printf(" ***** \n");
printf("*******\n");
printf(" ***** \n");
printf(" *** \n");
printf(" * \n");
}
如果没有要求的话,这是最简单有效的方法,当然这也是最没有意义的哈哈,如果有要求,请追问,帮你写一个!
追问
我已经说用for循环了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiannan1828
推荐于2017-10-15
知道答主
回答量:3
采纳率:0%
帮助的人:3516
展开全部
int i=3,j=-1,k;

while(i<4){
for(k=0;k<i;k++){
printf(" ");
}

for(k=i;k<(7-(2*i)+i);k++){
printf("*");
}

for(k=(7-(2*i)+i);k<7;k++){
printf(" ");
}

if(i==0){
j=1;
}
i = i+j;
}
追问
大神!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雪峰小毛
2015-11-03 · TA获得超过272个赞
知道小有建树答主
回答量:475
采纳率:0%
帮助的人:153万
展开全部
给你个更牛的
更多追问追答
追答
#include
void main()
{
int n,j,i,k;
char ch;
ch='*';

scanf("%d",&n);
for(j=1;jj;k--)
{
printf(" ");
}

for(i=1;i=j;i--)
{

printf(" %c",ch);
}
printf("\n");

}
}
想打边长为多少都行
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hskshy
2018-06-07
知道答主
回答量:1
采纳率:0%
帮助的人:868
展开全部
  • #include <stdio.h>  

  • #include <stdlib.h>  

  • int main()  

  • {  

  • int iLine,iStarNum,iSpaceNum,iSpace,iStar;  

  • for(iLine = 1;iLine < 10;iLine++)  

  • {  

  • if(iLine < 5)  

  • {  

  • iStarNum = iLine * 2 - 1;  

  • iSpaceNum = 5 - iLine;  

  • }  

  • else  

  • {  

  • iStarNum = 9 - (iLine - 5) * 2;  

  • iSpaceNum = iLine - 5;  

  • }  

  • for(iSpace = 0;iSpace < iSpaceNum;iSpace ++)  

  • {  

  • printf(" ");  

  • }  

  • for(iStar = 0;iStar < iStarNum;iStar ++)  

  • {  

  • printf("*");  

  • }          

  • printf("\r\n");  

  • }  

  • system("pause");  

  • return 0;  

  • }  

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式