注册 登录
编程论坛 新人交流区

用for语句编出图形的题目

花剑 发布于 2007-11-08 16:16, 462 次点击
题目:用for的镶嵌,编译出一个用*组成的图形:
*
* * *
* * * * *
* * * * * * *
我编的代码:
main()
{
int i,j;
for(i=1;i<=7;i++)
{
if(i%2!=0)
{
for(j=1;j<=i;j++)
printf("*");
printf("\n");
}
}
}
输出的结果是:
*
***
*****
*******
每个*都没有空出来,请问下,我该怎么改才能让每行的*进行精确的空格呢?
10 回复
#2
nick198411272007-11-08 16:31
我也是新手,我也想知道,怎么没有人帮忙啊
#3
jeason19792007-11-08 17:20
学习下,谢谢
#4
da52264042007-11-08 17:26

比较简单 至少我能看懂

#5
剑气萧馨2007-11-08 18:07
#include<stdio.h>
void main()
{
int i,j,k;
for(i=0;i<=3;i++)
{
for(j=0;j<=2-i;j++)//输出“*”前面的空格;
printf(" ");
for(k=0;k<=2*i;k++)//输出“*”;
printf("*");
printf("\n");
}
}
#6
gbgame2007-11-08 20:18
#include "stdio.h"
main()
{
int i,j;
for(i=1;i<=7;i++)
{
if(i%2!=0)
{
for(j=1;j<=3-i/2;j++)
printf(" ");
for(j=1;j<=i;j++)
printf("*");
printf("\n");
}
}
}
也差不多
#7
hustmumu2007-11-08 20:19
要先把空格输出来
#8
jcddyqq2007-11-08 20:24
回复:(gbgame)#include

排好空格和换行输出就行了吧,

#9
hustmumu2007-11-08 20:31
可以试一下这个



#include<stdio.h>
void main()
{
int i,j;
for(i=1;i<=4;i++)
{
for(j=1;j<5-i;j++)
printf(' ');
for(j=1;j<2*i;j++)
printf('*');
for(j=1;j<5-i;j++)
printf(' ');
printf("\n");
}
}
#10
wangfengLLD2007-11-08 20:57
我再来改改

#include<stdio.h>
void main()
{
int i,j;
for(i=1;i<=4;i++)
{
for(j=1;j<5-i;j++)
printf(' ');
for(j=1;j<2*i;j++)
{
printf('* ');
}
printf("\n");
}
}
#11
study19892007-11-08 21:06
#include<stdio.h>
void main()
{
int i,j;
for(i=1;i<=7;i++)
{
if(i%2!=0)
{
for(j=1;j<=2*(3-i/2);j++)
printf(" ");
for(j=1;j<=i;j++)
printf("*");
printf("\n");
}
}
}

看看这个吧,只是改了一点,不过它能显示'*'之间的空格.
1