日记

今天在程序竞赛上的打印漏斗,
总结:发现数学规律,更容易做题;
ceil函数头文件为<math.h>,并且只能对double类型进行向上取整;
ps:floor为向下取整;

#include<stdio.h>
#include<math.h>
void f(double *x){
  for(int i=1;i<=*x/2;i++){
      for(int j=1;j<=i-1;j++){
          printf(" ");
      }
      for(int p=1;p<=*x-2*(i-1);p++){
          printf("*");
      }
      printf("\n");
  }
  for(int i=1;i<=ceil(*x/2);i++){
      for(int j=1;j<=(*x-(2*i-1))/2;j++){
          printf(" ");
      }
      for(int p=1;p<=2*i-1;p++){
          printf("*");
      }
      if(i!=(*x+1)/2){
      printf("\n");
      }
  }
}
int main()
{
  double x;
  scanf("%lf",&x);
  f(&x);
  return 0;
}
posted @ 2024-04-01 21:30  pengfu_xin  阅读(3)  评论(0编辑  收藏  举报