}
2) while(表达式 1)
{ ……
if(表达式 2)continue;
……
}
【例 6.9】
main()
{
char c;
谭浩强 C 语言程序设计 2001 年 5 月 1 日
while(c!=13) /*不是回车符则循环*/
{
c=getch();
if(c==0X1B)
continue; /*若按 Esc 键不输出便进行下次循环*/
printf("%c\n", c);
}
}
6.9 程序举例
π
1
1
1
【例 6.10】用 4
= 1 ? + ? +
3 5 7
...
公式求π。
N-S 流程图:
谭浩强 C 语言程序设计 2001 年 5 月 1 日
#include
main()
{
int s;
float n,t,pi;
t=1,pi=0;n=1.0;s=1;
while(fabs(t)>1e-6)
{pi=pi+t;
n=n+2;
s=-s;
t=s/n;
}
pi=pi*4;
printf("pi=%10.6f\n",pi);
}
【例 6.11】判断 m 是否素数。
N-S 流程图:
#include
main()
{
int m,i,k;
scanf(“%d”,&m);
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)break;
if(i>=k+1)
printf(“%d is a prcom number\n”,m);
else
printf(“%d is not a prcom number\n”,m);
}
【例 6.12】求 100 至 200 间的全部素数。
#include
main()
{
int m,i,k,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)break;
if(i>=k+1)
{printf(“%d”,m);
n=n+1;}
if(n%n==0)printf(“\n”);
}
printf(“\n”);
}
谭浩