本文摘自PHP中文网,作者coldplay.xixi,侵删。
c语言for循环打印菱形的方法:使用两个for循环,实现条件判断,代码为【int i,j;for(i=0; i<2*n-1; i++){if(i=n-i-1&&j<n+i) {print('*');}else{..}}】。

c语言for循环打印菱形的方法:
方法一(以循环为主打印)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | # include <stdio.h>
void print (int n)
{
int i,j;
for (i=1; i<=n; i++)
{
for (j=1; j<=n-i; j++)
{
printf( " " );
}
for (j=n-i+1; j<n+i; j++)
{
printf( "*" );
}
printf( "\n" );
}
for (i=n-1; i>=1; i--)
{
for (j=1; j<=(n-i); j++)
{
printf( " " );
}
for (j=n-i+1; j<n+i; j++)
{
printf( "*" );
}
printf( "\n" );
}
}
void main()
{
int n;
printf( "---------开始打印符号---------\n" );
printf( "请输入数字:" );
scanf( "%d" ,&n);
print (n);
printf( "---------结束打印符号---------\n" );
}
|
方法二:(两个for,根据条件判断实现)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | # include <stdio.h>
void print (char ch) {
putchar(ch);
}
void printstar(int n)
{
int i,j;
for (i=0; i<2*n-1; i++)
{
for (j=0; j<2*n-1; j++)
{
if (i<n)
{
if (j>=n-i-1&&j<n+i)
{
print ( '*' );
}
else
{
print ( ' ' );
}
}
else
{
if (j>=i-n+1&&j<3*n-i-2)
{
print ( '*' );
}
else
{
print ( ' ' );
}
}
}
print ( '\n' );
}
}
void main()
{
int n;
printf( "---------开始打印符号---------\n" );
printf( "请输入数字:" );
scanf( "%d" ,&n);
printstar(n);
printf( "---------结束打印符号---------\n" );
}
|
说明:(2n-1)―(n-i-1)= n+i
阅读剩余部分
相关阅读 >>
C语言逗号运算符用法是什么?
C语言\n什么意思?
C语言统计字符串中各个字符的个数
C语言中“switch case”语句怎么用?
C语言文件读写函数有哪些?
C语言的基本组成单位是什么
C语言简单数据类型有哪些
C语言指针用法有哪些
C语言数组求和的方法
C语言二进制输出的方法
更多相关阅读请进入《C语言》频道 >>
转载请注明出处:木庄网络博客 » c语言for循环如何打印菱形