Question1:
#include <stdio.h>
#include <math.h>
int main()
{
double x,y;
scanf("%lf",&x);
if(x<0)
{
y=(pow(x+1,2)+2*x)+1/x; //不用再重新定义 double pow(); 因为已经调用了库函数math。h 直接使用它即可
}
else
{
y=sqrt(x);
}
printf("%.2f",y);
return 0;
}
Question 2:

#include <stdio.h>
int main()
{
printf("* * * *\n");
printf(" * * *\n");
printf(" * *\n");
printf(" *\n");
return 0;
}
Question3:

#include <stdio.h>
int main()
{
int n,i;
double sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum+=1.0/i;
}
printf("%.2f",sum);
return 0;
}
Question4:

#include <stdio.h>
int main()
{
int n,i,denominator;
int flag=1;
double sum=0.0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
denominator=
sum+=flag*(1.0/(3*i-2));
flag=-flag;
}
printf("%.2f",sum);
return 0;
}
Question5:

#include <stdio.h>
#include <math.h>
int main()
{
double s=(1.0/2)*10*pow(3,2);
printf("%.2f",s);
return 0;
}
Question6:

#include <stdio.h>
double fact(int n);
int main()
{
int m,n;
double number; //使用 double 来计算组合数和阶乘可能会导致精度问题。组合数是整数,建议使用 long long 类型来存储结果。
scanf("%d %d",&m,&n);
if(0<m&&m<=n)
{
number=fact(n)/(fact(m)*fact(n-m)); //这里的自动类型转换不会转换成int类型 则须将number设置为double型变量而取.0f
}
printf("%.0f",number);
return 0;
}
double fact(int n)
{
int i;
int result=1;
for(i=2;i<=n;i++)
{
result*=i;
}
return result;
}