#include<stdio.h>
int main(void)
{
int n,i,k;
double sum1,sum2,x;
printf("输入你想求得前n项和:");
scanf("%d",&n);
sum1=0;
sum2=0;
k=-1;
while(
n!=1)(你的上面已经输入过一次了,所以这里不应该用scanf("%d",&n)==1直接用,所以scanf("%d",&n)直接用n就行了,再者你的条件如果是输入n==1在里循环,所以应该条件改为n!=1)
{
for(i=1,x=1.0;i<=n;i++,x++)
{
k=(-1)*k;
sum1+=1.0/x;
sum2+=(k*1.0)/x;
}
printf("(1.0+1.0/2.0+1.0/3.0+1.0/4.0+...)的前%d项和=%lf.\n",n,sum1);
printf("(1.0-1.0/2.0+1.0/3.0-1.0/4.0+...)的前%d项和=%lf.\n",n,sum2);
printf("Enter next value:");
scanf("%d",&n);
}
printf("Done!\n");
return 0;
}