|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include<stdio.h>
- #include<Windows.h>
- void get_space(int n)
- {
- int i ;
- for(i = 0; i < n; i++)
- printf(" ");
- }
- void get(int n,int mid)
- {
- int i;
- get_space(mid);
- for(i = 0; i < n;i++)
- {
- printf("%c",'*');
- get_space(1);
- }
- putchar('\n');
- }
- void up_and_down(int n,int i,int mid,int t)
- {
- get(i,mid -1);
- if(i < n)
- up_and_down(n - 1,i + 1,mid - 1,t);
- if(i != t)
- get(i,mid - 1);
- }
- int main(void)
- {
- int i , layer, mid;
- printf("请输入菱形层数:(奇数)");
- scanf("%d",&layer);
- mid = layer /2 + 1;
- up_and_down(layer,1,mid,mid);
- system("pause");
- return 0;
- }
复制代码
利用递归画出菱形,不过总感觉不太完美。 |
|