一个关于嵌套while虚幻的小题目~
这是我做的一个关于循环的题目#include <stdio.h>
void main()
{
int nstars=1,stars;
while(nstars<=10)
{
stars=1;
while(stars<=nstars)
{
printf("*");
stars++;
}
printf("\n");
nstars++;
}
}
其结果是
*
**
***
****
*****
******
*******
********
*********
**********
***********
可是我如果想打印出
*
**
***
****
*****
******
*******
********
*********
**********
或者是等边3角型的话 应该怎么打印呢~
我做的时候老是没思路~啊~求助一下~ 我应该怎么做呢~~
----------------解决方案--------------------------------------------------------
两重循环
一个输出“ ”循环
一个输出“*”循环
----------------解决方案--------------------------------------------------------
输出 空格 被 呵呵~~~~~
----------------解决方案--------------------------------------------------------
脑子转不过弯来呀~ ~看不明白 。。。怎么输出才能空出相应的空格呢
----------------解决方案--------------------------------------------------------
#include <stdio.h>
void main()
{
int nstars=1,stars;
while(nstars<=10)
{
int stars=1;
while(stars<=10-nstars)
{
printf("*");
stars++;
}
printf("\n");
nstars++;
}
}
这样输出的和*
**
***
****
*****
******
*******
********
*********
**********
正好相反 ~~好郁闷啊
----------------解决方案--------------------------------------------------------
是等边三角形了,不过格式上再加空格,把顶点打到底边的中间就可以了。再加一个循环吧。
----------------解决方案--------------------------------------------------------
这个用for的比较好做, 用while的~~~~~~~伤脑筋
----------------解决方案--------------------------------------------------------
#include<stdio.h>
main()
{
int nstars,stars;
for (nstars=1;nstars<=10;nstars++)
{
for (stars=1;stars<=11-nstars;stars++)
printf(" ");
for (stars=1;stars<=nstars;stars++)
printf("*");
printf("\n");
}
}
用for做的, 本人比较笨, 用while的还是留给别的高手去想吧
----------------解决方案--------------------------------------------------------
任何for循环都可以变成用while,任何用while的都可以变成for
by 雨中飞燕 QQ:78803110 QQ讨论群:5305909
[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url]
C/C++算法习题(OnlineJudge):[url]http://yzfy.org/[/url]
----------------解决方案--------------------------------------------------------