c语言输出空格问题

问下怎么能使输出的空格越来越多或越来越少 书上有个输出菱形星型图案的题 在网上搜了没看懂 就是不明白那个空格的地方 请高手详细解答
......写个简单点的例子呗

教你编写这类程序的方法:
首先我们考虑用循环的方法来做,比如用i做循环变量
举例图形如下,先分析一下:
行号(i),星号个数,前导空格个数,
******* 0 7 0
***** 1 5 1
*** 2 3 2
* 3 1 3
归纳一下:
-如何产生行号
for ( i=0;i<4;i++ )
{
// 这样在循环体中每次循环的i值就是我们要的行号
// 这个行号我们可以拿来用、参与计算
printf("\n"); // 记住打印完后,每行要换行
}
-如何通过行号计算出前导空格个数
与行号同数字,再用一个循环打印空格,程序变成:
for ( i=0;i<4;i++ )
{
for ( j=0;j<i;j++ ) printf(" ");
printf("\n");
}
-如何通过行号计算出星号个数
星号个数=(3-i)*2+1,再通过一个循环打印星号,程序变成:
for ( i=0;i<4;i++ )
{
for ( j=0;j<i;j++ ) printf(" ");
for ( j=0;j<(3-i)*2+1;j++ ) printf("*");
printf("\n");
}
加个程序头尾,你就完成了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-23
就是通过输出不同的空格来控制每一行输出的“*”号的位置,书上的例子好好分析分析!
第2个回答  2013-04-23
for(int i = 0;i<9;i++)
for(int j = 9-i;j<9;j++)

{
printf(" ");

}
第3个回答  2013-04-23
行跟空格关系 还要 对称
第4个回答  2013-04-23
楼上几个也有说,用行数来控制空格的输出,注意for循环的条件,多看看书吧。前后都看看。
相似回答