#include<stdio.h>
int main()
{
long n;
while (scanf_s("%ld", &n) != -1)
{
double s = 0.0;
int i, a = 1;
for (i = 1; i <= 2 * n - 1; i += 2)
{
if (((i + 1) / 2) % 2 == 1)
s += 1.0 / i;
else
s -= 1.0 / i;
}
printf("%.5f", s);
}
return 0;
}
3 个解决方案
#1
边界条件
输入输出格式
……
输入输出格式
……
#2
printf("%.5
lf", s);
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
#3
#include<stdio.h>
int main()
{
long n;
double s = 0.0;
int i;
while (scanf("%ld", &n) != -1)
{
s = 0.0;
for (i = 1; i <= 2 * n - 1; i += 2)
{
if (((i + 1) / 2) % 2 == 1)
s += 1.0 / i;
else
s -= 1.0 / i;
}
printf("%.5f\n", s); /*加一个回车符*/
}
return 0;
}
是不是缺少一个回车符呢
#1
边界条件
输入输出格式
……
输入输出格式
……
#2
printf("%.5
lf", s);
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
#3
#include<stdio.h>
int main()
{
long n;
double s = 0.0;
int i;
while (scanf("%ld", &n) != -1)
{
s = 0.0;
for (i = 1; i <= 2 * n - 1; i += 2)
{
if (((i + 1) / 2) % 2 == 1)
s += 1.0 / i;
else
s -= 1.0 / i;
}
printf("%.5f\n", s); /*加一个回车符*/
}
return 0;
}
是不是缺少一个回车符呢