求pi的循环次数
#include <stdio.h>#include <math.h>
int main()
{
int sign = 1,count = 0;
double pi = 0.0,n = 1.0,term = 1.0;
while(fabs(term)>=1e-6);
{
pi = pi+term;
n = n+2;
sign = -sign;
term = sign/n;
count++;
}
pi = pi*4;
printf("pi = 10.8f%d\n",pi);
printf("count = %d\n",count);
return 0;
}
编译无问题,可以运行,但是编译半天也不见输入东西。求解怎么回事啊。用的visual C++6.0 本帖最后由 baige 于 2020-8-28 23:01 编辑
while()后面的分号去掉。printf("pi = 10.8f%d\n",pi);这个也有错
#include <stdio.h>
#include <math.h>
int main()
{
int sign = 1,count = 0;
double pi = 0.0,n = 1.0,term = 1.0;
while(fabs(term)>=1e-6)
{
pi = pi+term;
n = n+2;
sign = -sign;
term = sign/n;
count++;
}
pi = pi*4;
printf("pi = %10.8f\n",pi);
printf("count = %d\n",count);
return 0;
}
#include <stdio.h>
int main()
{
double eps = 1e-6;
double PI = 1.0, temp = 1;
int count = 0;
for(int i = 1; temp > eps; i++)
{
temp = temp*i/(i*2+1);
PI += temp;
++count;
}
printf("PI = %10.8f\n",PI*2);
printf("count = %d\n",count);
return 0;
}
#include <stdio.h>
int main()
{
char c;
int letters = 0,space = 0,digit = 0,other = 0;
printf("请输入一串字符:\n");
while((c=getchar())!='\n')
{
if(c>='a' && c<='z'||c>='A' && c<='Z')
letters++;
else if(c==' ');
space++;
else if(c>='0' &&c<='9');
digit++;
else
other++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n",letters,space,digit,other);
return 0;
}
这个编译中间两个else if出问题 不知道怎么调整 本帖最后由 baige 于 2020-8-28 23:11 编辑
百年孤独i 发表于 2020-8-28 23:07
#include
int main()
{
两个else if后面的分号去掉
#include <stdio.h>
int main()
{
char c;
int letters = 0,space = 0,digit = 0,other = 0;
printf("请输入一串字符:\n");
while((c=getchar())!='\n')
{
if(c>='a' && c<='z'||c>='A' && c<='Z')
letters++;
else if(c==' ')
space++;
else if(c>='0' &&c<='9')
digit++;
else
other++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n",letters,space,digit,
other);
return 0;
}
问题解决的话给个最佳,谢谢 {:10_277:} baige 发表于 2020-8-28 23:08
两个else if后面的分号去掉
#include <stdio.h>
int main()
{
char c;
int letters = 0,space = 0,digit = 0,other = 0;
printf("please input a string of characters:\n");
while((c=getchar())!='\n');
{
if(c>='a'&&c<='z'||c>='A'&&c<='Z');
letters++;
else if(c==' ')
space++;
else if(c>='0'&&c<='9')
digit++;
else
other++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符:%d\n",letters,space,digit,other);
return 0;
}
老哥我和你打的一样啊 但是为啥我一编译就出问题啊。
--------------------Configuration: 063 - Win32 Debug--------------------
Compiling...
063.c
E:\c++\Microsoft Visual Studio\MyProjects\063\063.c(11) : error C2181: illegal else without matching if
执行 cl.exe 时出错.
063.obj - 1 error(s), 0 warning(s) 本帖最后由 baige 于 2020-8-28 23:32 编辑
百年孤独i 发表于 2020-8-28 23:28
#include
int main()
{
if后面的分号去掉,while后面的分号也去掉,if/else if/else/while/for等后面都不要加分号 baige 发表于 2020-8-28 23:29
if后面的分号去掉,while后面的分号也去掉,if/else if/else/while/for等后面都不要加分号
编译完 运行 输入字符为啥有问题啊please input a string of characters:
I am a student
字母数:0
空格数:0
数字数:0
其他字符:1
Press any key to continue
百年孤独i 发表于 2020-8-28 23:37
编译完 运行 输入字符为啥有问题啊please input a string of characters:
I am a student
字母数:0
while后面的分号去掉,我刚才发现while后面有分号补在上面让你删除了 baige 发表于 2020-8-28 23:38
while后面的分号去掉,我刚才发现while后面有分号补在上面让你删除了
okk
!
页:
[1]