循环语句是在C语言经常遇到的一种控制语句。在实际应用中的许多问题,都会涉及重复执行一些操作,如级数求和、穷举或迭代求解等。
C语言提供for、while、do-while三种循环语句来实现循环结构。
1.while语句属于当型循环,用于循环次数未知,条件控制的循环。while循环的一般形式为:
while(表达式)
{
循环体语句
}
2.for语句用于实现当型循环控制结构。在循环顶部进行循环条件测试,如果循环条件第一次测试为假,则循环体一次也不执行。for循环的一般形式为:
for(表达式1;表达式2;表达式3)
{
循环体语句
}
3.do-while语句用于实现直到型循环控制结构。在循环底部进行循环条件测试,循环至少执行一次。do-while循环的一般形式为:
do{
循环体语句
}while(表达式);
另外再本章学习中还学习到了“流程的转移控制”学习了三个语句,分别是goto语句;break语句;continue语句。这三种语句中break语句使用的比较多。举一个例子来看一下:
韩信有一队兵,他想知道有多少人,便让士兵排队报数。按从1至5报数,最末一个士兵报的数为1;按从1至6报数,最末一个士兵报的数为5;按从1至7报数,最末一个士兵报的数为4;最后再按从1至11报数,最末一个士兵报的数为10。你知道韩信至少有多少兵吗?
1.使用基本的for循环(穷举法)
#include <stdio.h>
int main()
{
int x;
for (x=1; x < 5000 ;x++)
{
if (x%51 && x%65 && x%74 && x%1110)
{
printf(“x = %d\n”, x); }
}
}
2.使用break语句
int main()
{
int x;
for (x=1; ;x++)
{
if (x%51 && x%65 && x%74 && x%1110)
{
printf(“x = %d\n”, x);
break;
}
}
}
我个人觉得在实际做题练习中,单独用到一个循环语句的时候并不多,大多数都是使用多个循环语句,即循环嵌套语句。所谓的循环嵌套语句通俗意义上讲就是循环里面套循环。
现在来句几个比较简单的嵌套循环的例子:
1.打印九九乘法口诀表
#include
int main()
{
int i = 0;
int j = 0;
for (i = 1; i <= 9; i++)
{
for (j = 1; j <= i; j++)
{
printf("%d*%d=%d “, i, j, i*j);
if (i == j)
printf(”\n");
}
}
return 0;
}
2.输入一个数判断是否为素数。素数是只能被一和自身整除的数。
#include
#include
using namespace std;
int main()
{
int i,j,k;
bool prime;
char c=‘Y’;
while(c==‘Y’)
{
cout<<“请输入一个整数:”;
cin>>i;
k=int(sqrt(i));
prime=true;
for(j=2;j<=k;j++)
{
if(i%j==0)
{
prime=false;
cout<<“不是”<<endl;
break;
}
}
if(prime)
{
cout<<“是”<<endl;
}
cout<<“是否继续判断,输入Y继续,输入其他字符,退出程序:”;
cin>>c;
}
cout<<“退出程序!”<<endl;
return 0;
}
这几个例子就充分体现了循环嵌套的应用。
总结:
我认为循环语句是学习c语言的一个重要基础,因为后面在学习其他复杂的结构时,几乎都会涉及到循环语句。所以以后还要继续加强训练。