C++学习第四周第7次—while循环

C++学习第四周第7次

while循环例题练习

例题1:

输入一个大于3的正整数,判断它是不是素数(素数是只能被1或自己整除的数,如13,只能被1,13整除,所以它是素数;

9,能被139整除,所以它不是素数。

int n, i = 2;
	cin >> n;
	while (i <=sqrt(n) ){
		if (n%i == 0) {
		 break;
		}
		i++;
	};
	if (i>sqrt(n)) cout << endl << "是素数";
	else  cout << endl << "不是素数";

例题2:

循环中途的强制提前结束循环。

常用于我们事先不知道循环究竟要做多少次,理论上让它开始死循环(无没有结束),但在循环中途,我们想办法让循环停止下一-----break;

可见:结束循环有两种可能,一是循环变量不再满足循环的条件,二是循环中途提前结束循环

 例:求s=1+2+3+…….n,加到哪一个数n时,总和首次超过1000

 i=1,s=0;
   while(1){
	   s=s+i;
	   if(s>1000) break; //当条件满足时,退出循环,后面的i++没有被执行
	   i++;	   
   }
   cout<<endl<<s<<"  "<<i;  //不能是i-1

例题3:

多重循环(循环嵌套)

引例:模仿两位数一个电度表走动过程

int b10 = 0, b1 ;
	while (b10 <= 9)
	{
		b1 = 0;
		while (b1 <= 9)
		{  cout <<setw(5)<<b10 * 10 + b1 << "  ";//setw设置间隔宽度
			b1++;
			if (b1 == 10)cout << endl;
		};
		b10++;
	};

例题4:

输入一个多位的整数且个位不为0,反向输出它。如输入 1234,输出4321

int n,m, n2=0;
	cin >> n;
	while (n > 0)
	{   m = n % 10;
		n2 = n2 * 10 + m;
		n = n / 10;
	}
	cout << endl << n2;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值