c++信息学奥赛语法基础课 (c语言循环结构例题与解析)

在for循环中,我们需要三个部分,其中很重要的就是循环变量,那如果我们不需要使用循环变量的时候能不能简化循环呢?

while循环

语法:

while(判断条件)

{

语句1:

语句2:

......

语句n;

}

c语言循环结构的实验结果与分析,c语言循环结构案例及分析

while循环流程图

例1:
int main() {
	int i = 0;
	while (i < 10)
	{
			cout << "i = " << i << endl;
	}
	return 0;
}
//执行结果为一直输出i=0,因为i<10一直未true,所以循环将会出现死循环
/*
温馨提示:
最简单的死循环写法:
   while(1)
   {

   }
 如果转化为for循环为
  for(;;)
  {

  }
  */
//例2:
//判断给定正整数n是否为质数(素数),若是,输出Yes,否则输出No
//质数(素数):所谓素数是指大于1的自然数中,除了 1 和它本身以外,不能被任何整数整除的数
#include<iostream>
using namespace std;

int main()
{
	int n;
	cin>>n;
	int i=2;
	bool isPrime=true; //表示n是否是质数 
	if(n<=1)
	{
		isPrime=false;
	}	
	while(i<n-1)
	{
		if(n%i==0)  //能够找到一个因数i,则不是质数 
		{
			isPrime=false;
			break;
		}
		i++;
	}
	if(isPrime)
		cout<<"Yes"<<endl;
	else
		cout<<"No"<<endl;
	return 0;
}   

c语言循环结构的实验结果与分析,c语言循环结构案例及分析

do...while循环语句

语法:

do{

语句1:

语句2:

......

语句n;

}

while(条件表达式);

c语言循环结构的实验结果与分析,c语言循环结构案例及分析

do...while

do...while区别于while在于无论条件是否满足,都会执行一次循环语句。

//对比第一段和第二段结果,再理解do...while结构执行过程
#include<iostream>
using namespace std;

//对比程序1与程序2
int main() {
	//do...while循环 
	int i = 10;
	do
	{
		cout << i <<endl;
		i++;
	} while (i < 1);
	
	//while循环 
	int j = 10;
	while (j < 1)
	{
		cout << j <<endl;
		j++;
	} 
	return 0;
}

c语言循环结构的实验结果与分析,c语言循环结构案例及分析

do..while有输出,while无输出

持续更新,后期将出视频讲解,今年CSP-J/S前更新完C++语法和数据结构内容,喜欢的老师孩子们点赞、关注、转发,欢迎在评论区一起沟通学习哦。Fighting!