C语言学习(三)_21-10-28

循环

 一  while循环

1  求log2 of x

#include<stdio.h>

int main()
{
	int x;
	int ret=1;
	
	scanf("%d",&x);
	int t=x;
	while(x>2)
	{
		x/=2;
		ret++;
	}
	
	printf("log2 of %d is %d",t,ret);
	
	
	return 0;
	
}

2  逆序2.0 

#include<stdio.h>

int main()
{
	int x;
	int digit=0;
	int ret=0;
	
	printf("请输入一个想要进行逆序的正整数:");
	scanf("%d",&x);
	
	while(x>0){
		digit=x%10;
		x/=10;
		ret=ret*10+digit;
		printf("x=%d digit=%d ret=%d\n",x,digit,ret);
	} 
	
	printf("你输入的数逆序后是%d.\n",ret);
	
	return 0;
 } 

 二  do while循环

#include<stdio.h>

int main()
{
	int x;
	int n=0;
	
	scanf("%d",&x);
	
	do{
		n++;
		x/=10;
	}while(x>0);
	
	printf("%d\n",n);
	
	return 0;
}

三  for循环

1  解释

2  阶乘 

#include<stdio.h>

int main()
{
	int n;
	scanf("%d",&n);
	int fact=1;
	
	int i=1;
	for(i=1;i<=n;i++){
		fact*=i;
	}
	
	printf("%d!=%d\n",n,fact);
	return 0;
}

​

** 求和时,记录结果的变量初始化为0;求积时,记录结果的变量初始化为1.

3  判断素数

#include<stdio.h>

int main()
{
	int x;
	scanf("%d",&x);
	
	int i;
	int isPrime =1;
	for(i=2;i<x;i++){
		if(x%i==0){
		isPrime =0;
		break;	
		}
	}
	if(isPrime == 1){
		printf("%d是素数\n",x);
	}else{
		printf("%d不是素数\n",x);
	}
	
	return 0;
}

四  区别及补充

1   区别

2  补充

 **break只能对它在的那层循环做

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值