第5章 循环结构程序设计

第5章 循环结构程序设计

  • 例5.7 用公式π/4≈1-1/3+1/5-1/7+.....求π得近似值,直到发现某一项的绝对值小于10^-6为止(该项不累加)。
    • 例5.8 求Fibonacci数列的前40个数。这个数列有如下特点:第1,2两个数为1,1。从第三个数开始,该数是其前面两个数之和。即该数列为1,1,2,3,5,8,13........
      • 例5.9 输入一个大于3的整数n,判定它是否为素数。
        • 例5.10求100~200的全部素数。

例5.7 用公式π/4≈1-1/3+1/5-1/7+…求π得近似值,直到发现某一项的绝对值小于10^-6为止(该项不累加)。

#include
#include
int main()
{
	int sign=1;
	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;
	}
	pi=pi*4;
	printf("pi=%10.8f\n",pi);
	return 0;
}

运行结果如下:
第5章 循环结构程序设计_第1张图片

例5.8 求Fibonacci数列的前40个数。这个数列有如下特点:第1,2两个数为1,1。从第三个数开始,该数是其前面两个数之和。即该数列为1,1,2,3,5,8,13…

#include
int main()
{
	int f1=1,f2=2,f3;
	int i;
	printf("%12d\n%12d\n",f1,f2);
	for(i=1;i<=38;i++)
	{
		f3=f1+f2;
		printf("%12d\n",f3);
		f1=f2;
		f2=f3;
	}
	return 0;
}

运行结果如下:
第5章 循环结构程序设计_第2张图片

例5.9 输入一个大于3的整数n,判定它是否为素数。

#include
int main()
{
	int n,i;
	printf("please enter a integer number,n=?");
	scanf("%d",&n);
	for(i=2;i<n;i++)
	if(n%i==0)break;
	if(i<n)
	printf("%d is not a prime number.\n",n);
	else
	printf("%d is a prime number.\n",n);
	return 0;
 } 

运行结果如下:
第5章 循环结构程序设计_第3张图片

例5.10求100~200的全部素数。

#include
#include
int main()
{
	int n,k,i,m=0;
	for(n=101;n<=200;n=n+2)
	{
		k=sqrt(n);
		for(i=2;i<=k;i++)
		if(n%i==0)break;
		if(i>=k+1)
		{
			printf("%5d",n);
			m=m+1;
		 } 
		 if(m%10==0)
		 printf("\n");
	}
		
		 printf("\n");
		 return 0;	
}

运行结果如下:

第5章 循环结构程序设计_第4张图片

你可能感兴趣的:(第5章 循环结构程序设计)