while-----案例

36 阅读1分钟

案例1 : s=1-1/2+1/3-1/4+1/5-1/6...+1/19

#include <stdio.h>
int main(){
	double s = 0;
	int i = 1;
	while(i <= 19){
		printf("%d \n",i);
		if(i%2 == 0){
			s -= 1.0/i;
		}else{
			s += 1.0/i;
		}
		
		i++;
	}
	printf("s=%f",s);
	return 0;
}

结果如下:

image.png

案例2: 判断是否为素数

#include <stdio.h>
int main(){
	int n;
	printf("请输入一个整数:");
	scanf("%d",&n);
	int m = sqrt(n); //平方根 100→10
	int isPrime = 1; 
	int i = 2;
	while(i<=m){
		if(n%i==0){
			printf("%d能整除\n",i);
			isPrime = 0;
			break;
		}
		i++;
		
	}
	if(isPrime == 1){
		printf("%d是素数",n);
	}else{
		printf("%d不是素数",n);
	}
	return 0;
}

结果如下:

image.png