Sony笔试题
完成下列打印图案的程序:
*
*.*.
*..*..*..
*...*...*...*...
*....*....*....*....*....
*.....*.....*.....*.....*.....*.....
*......*......*......*......*......*......*......
*.......*.......*.......*.......*.......*.......*.......*.......
#include <stdio.h>
#define N 8
int main()
{
int i;
int j;
int k;
---------------------------------------------------------
| |
| |
| |
---------------------------------------------------------
return 0;
}
解题思路:
首先,通过最外层循环i=[0,N-1]输出从上到下的N个’*’。
#define N 8
for(int i=0;i<N;i++)
{
putchar('*');
cout<<endl;
}
输出结果:
再次,通过i的里层嵌套,打印出三角星。
#define N 8
for(int i=0;i<N;i++)
{
for(int j=0;j<=i;j++ )
{
putchar('*');
}
cout<<endl;
}
结果:
最后,通过k第三层循环打印’.’
for(int i=0;i<N;i++)
{
for(int j=0;j<=i;j++ )
{
putchar('*');
for(int k=0;k<i;k++)
{
putchar('.');
}
}
cout<<endl;
}
结果: