目录

  • 1 第一章 C语言简介
    • 1.1 C语言前世今生
    • 1.2 主流开发环境介绍
    • 1.3 第一个小程序解析
    • 1.4 常见编译错误
    • 1.5 章节知识点小结
  • 2 算法基础
    • 2.1 算法-程序的灵魂
    • 2.2 算法的描述-流程图
  • 3 数据类型与运算符
    • 3.1 数据描述
    • 3.2 运算符和表达式1
    • 3.3 运算符和表达式2
    • 3.4 章节知识点小结
  • 4 顺序结构程序设计
    • 4.1 输入和输出
    • 4.2 顺序结构程序设计
    • 4.3 章节知识点小结
  • 5 选择结构程序设计
    • 5.1 关系运算符和关系表达式
    • 5.2 逻辑运算符和逻辑表达式
    • 5.3 if语句
    • 5.4 条件运算符
    • 5.5 switch语句
    • 5.6 章节知识点小结
  • 6 循环结构程序设计
    • 6.1 while循环结构
    • 6.2 do_while循环结构
    • 6.3 for循环结构
    • 6.4 循环的嵌套
    • 6.5 break语句和continue语句
    • 6.6 章节知识点小结
  • 7 数组
    • 7.1 一维数组
    • 7.2 二维数组
    • 7.3 字符数组
    • 7.4 章节知识点小结
  • 8 函数
    • 8.1 子程序设计
    • 8.2 函数定义
    • 8.3 函数的调用
    • 8.4 局部变量和全局变量
    • 8.5 参数传递
    • 8.6 函数递归调用
    • 8.7 章节知识点小结
  • 9 指针
    • 9.1 指针的基本概念
    • 9.2 指针变量的定义及引用
    • 9.3 通过指针引用数组元素
    • 9.4 指向多维数组的指针和指针变量
    • 9.5 用指向数组的指针作函数参数
    • 9.6 指针与字符串
    • 9.7 函数指针和指针函数
    • 9.8 章节知识点小结
  • 10 用户自己建立数据类型
    • 10.1 定义和使用结构体变量
    • 10.2 使用结构体数组
    • 10.3 结构体指针
    • 10.4 章节知识点小结
  • 11 编译预处理
    • 11.1 宏定义预处理
    • 11.2 文件包含预处理
    • 11.3 条件编译预处理
    • 11.4 章节知识点小结
  • 12 文件
    • 12.1 文件的基本知识
    • 12.2 文件的基本操作
    • 12.3 章节知识点小结
break语句和continue语句

  


break语句:从循环体内跳出,即提前结束循环,接着执行循环下面的语句。

 

代码:

   float pi=3.14159;

    for(r=1;r<=10;r++)

    { area=pi*r*r;

      if (area>100) break;

      printf(″r=%f,area=%f\n″,r,area);

     }

当area>100时,执行break语句,提前结束循环。

例题1:输入一个大于3的整数n,判定它是否素数。 


解题思路:

让n被i整除(i的值从2变到n-1)

如果n能被2~(n-1)之中任何一个整数整除,则表示n肯定不是素数,不必再继续被后面的整数除,因此,可以提前结束循环

注意:此时i的值必然小于n

 

#include <stdio.h>

int  main()

 { int n,i;

    printf(“n=?");  scanf("%d",&n);

    for (i=2;i<=n-1;i++)

        if(n%i==0) break;

    if(i<=n-1) printf("%d is not\n",n);

    else printf("%d is\n",n);

return 0;

}

改进算法:

 

#include <stdio.h>

#include <math.h>

int main()

 { int n,i,k;

    printf(“n=?");  scanf("%d",&n);

    k=sqrt(n);

    for (i=2; i<=k; i++)

        if(n%i==0) break;

    if(i<=n-1) printf("%d is not\n",n);

    else printf("%d is\n",n);

}

例题2:求100~200间的全部素数。 

解题思路:

使用上例的算法判断某个数是否是素数

在上例程序中只要增加一个外循环,先后对100~200间的全部整数一一进行判定即可

 

……

for(n=101;n<=200;n=n+2)

{ k=sqrt(n);

   for (i=2;i<=k;i++)                         

       if (n%i==0) break;         

   if (i>k)

{  printf("%d ",n);           

    m=m+1;                   

    if(m%10==0) printf(“\n”); }

}

……

 

continue语句: 用来结束本次循环,即跳过循环体中下面尚未执行的语句,判定是否执行下一次循环。

例题3: 将1~100之间能被5整除的数输出。

 

编程思路:

对1到100之间的每一个整数进行检查

如果能被5整除,输出,否则不输出

无论是否输出此数,都要接着检查下一个数

 

for(n=1;n<=100;n++)

     {  if (n%5!=0)

             continue;

        else printf("%d  ",n);

      }

  

break语句和continue语句的区别: 

continue语句只结束本次循环,而不是终止整个循环的执行。

break语句结束整个循环过程,不再判断执行循环的条件是否成立。