编写函数
diamond
打印一个菱形。如果调用
diamond(3, '*')
则打印:
* * * * *
如果调用diamond(5, '+')
则打印:
+ + + + + + + + + + + + +
如果用偶数做参数则打印错误提示。
转载请注明源地址:http://blog.csdn.net/whorus1/article/list/2,谢谢!
1 #include<stdio.h>
2 /*打印菱形*/
3
4
5 /*根据输入的参数打印相应的菱形*/
6 void diamond ( int n,char c )
7 {
8 int i,j;
9 for (j=1;j<=n/2+1;j++) //打印上半部分
10 {
11 for(i=1;i<=n/2+1-j;i++)
12 printf(" "); //空格(第j行前半部分有n/2+1-j个空格,符号后面的空格不管)
13 for(i=1;i<=2*j-1;i++)
14 printf("%c ",c); //符号(第j行有2*j-1个)
15 printf("\n");
16 }
17 for (j=n/2;j>=1;j--) //下半部分
18 {
19 for(i=1;i<=n/2+1-j;i++)
20 printf(" ");
21 for(i=1;i<=2*j-1;i++)
22 printf("%c ",c);
23 printf("\n");
24 }
25 }
26
27
28 int main()
29 {
30 int n;
31 char c;
32
33 /*输入参数,如果n为偶数则报错*/
34 printf("请输入参数:");
35 scanf("%d %c",&n,&c);
36 if (n%2==0)
37 printf("ERROR!!!\n");
38 else
39 {
40 printf("(%d,'%c')\n",n,c);
41 diamond(n,c);
42 }
43 return 0;
44 }