黑马程序员-----C语言学习之循环结构

来源:互联网 发布:硕士论文数据库 编辑:程序博客网 时间:2024/05/17 03:34

循环结构的概念:

                                    当条件满足的时候,程序会重复的执行某一个代码段,这就是循环结构;


构成循环结构要素:1>循环控制条件
                                    2>循环体
                                    3>能够让循环结束的语句(递增、递减、真、假)

while循环的格式当型循环指的是先判断条件 在执行循环体;

例题 计算1+2+3+3.....+n的和;
利用while来计算用户输入的字符个数

随机产生m-n之间的随机数
用arc4random_uniform(n-m+1)+m  例如要产生10到50中间的随机数就是(50-10+1)+10 就会产生了;因为括号里是41就会产生0到40的数然后分别加上10就是10到50了

 疯狂猜字游戏的程序实现:

do while循环语句:直到型循环指先执行循环体,然后判断条件直到条件为假;

do while 和while的区别 
do while不管条件真还是假 至少它会执行一次;

while 如果条件为假 则不会执行;


for循环:格式是 for(表达式1;表达式2;表达式3){};
比如:  
for (int i = 0;i<3;i++){printf("%d",i)} 
这里 i<3是循环控制条件 printf("%d",i)是循环体  i++是让循环体结束的语句;


这里 还有其他几种表达方式也是一样的:


 



for的嵌套:我们一般这么理解 里层的for控制列数  外层的for控制层数;


利用for循环的嵌套打印出五行无列的星




  如果想让第一行写1第二行写2第三行写3    
                                           
   1
   2 2
   3 3 3
   4 4 4 4
   5 5 5 5 5 打印这个图形只需要将j 和 i的初始值改为1 然后在里层的for循环内将原来打印的星改为printf("%d",i)。
 
 如果想打印一个倒三角的星:只需要将里层循环的i<5改为 i<5-i就可以了
* * * * *
* * * * 
* * *
* *
*

如果要打印一个正三角形 第一行是一个星 第二行三个 第三行五个 一次下去有六行;该怎么实现 ;
 

面试题经常考之九九乘法表的打印方法
思路:两层for循环 外层for循环控制行 里层for循环控制列数;因为是正三角 所以里面的j<=i 行数等于列数就可以了 
      而看每一列可以知道 第一列可以知道是j的值 第二列是i的值;第三列是i和j的乘积;因此打印的时候像下面那么写;

break的用法


用在for循环中 它的作用是结束当前循环或者叫跳出当前循环;

因为在for循环里面使用了break 所以在控制台会显示0 1 2 3 4 后面的数都不会输出和显示;因为break结束了当前的循环,它之后的语句也不会执行了;
但是 如果再break结束的当前循环外面还有一个for循环 他不会影响到因为它只结束当前的循环;    

continue的用法:它的作用是加速循环

在上述例子中 如果把上面的break换成continue 那么它的结果是会显示 1 2 3 4 6 7 8 9 10 它只是5没有了 它的作用是结束当前的这次循环 继续下次循环

用法如下


求1到100中所有7的倍数的个数


0 0
原创粉丝点击