c/c++语言开发共享C语言—-循环结构2(基础篇六)

好久么有写博客,近期项目基本完成,日常的学习也需要提上日程,尽管未来么有希望,但还是低着脑袋往前走吧…..不啰嗦进入主题。 死循环 ※软死机:CPU占用100%,双核占50%,机器明显变慢。出现软死机其实就是死循环。如while(1);就是个死循环语句,请不要用在歪门邪道处。 ※硬死机:鼠标、键 …

好久么有写博客,近期项目基本完成,日常的学习也需要提上日程,尽管未来么有希望,但还是低着脑袋往前走吧…..不啰嗦进入主题。

  死循环

  ※软死机:cpu占用100%,双核占50%,机器明显变慢。出现软死机其实就是死循环。如while(1);就是个死循环语句,请不要用在歪门邪道处。

  ※硬死机:鼠标、键盘、显示器无响应。

  ※大部分的死循环是忘记改变循环变量的值造成的。

   进化

   程序1

    使用for语句 将1 到 10 输入到屏幕上。

//for 循环语句,输出在屏幕上 1 - 10 #include <stdio.h> main() {     int i;     for (i = 1;i<=10;i++)     {         printf("%dt",i);              }     printf("n"); }

 

  for语句

  格式:

    for(循环变量赋初值;条件表达式;循环变量增值)

    {

      若干语句

      …

    }

  for循环执行流程

    for(①n=0; ②⑤n<100; ④⑦n++)      //循环的运行步骤是按照上流程里面的数字依次进行的

    {  

      ③⑥循环体

    }

    相当于

    n=0;

    while(n<100)

    {  

      循环体

      n++;

    }

  continuebreak语句

    continue可结束本次循环,但不跳出循环,break语句可直接跳出本层循环。

    程序2 

      用continue1100的偶数之和

// 6_2_用 ccontinue 编写 1 - 100 的偶数之和 #include <stdio.h>  main() {     int i, n = 0;     for(i = 0;i<=100;i++)     {         if (i%2 != 0)  //除不尽2就是奇数         {             continue; //直接跳出本次循环,进行下次循环          }         else         {             n = n + i;         }     }     printf("%d", n);     printf("n"); }

 

  break语句

//break  语句 #include <stdio.h>  main() {     int i;     for (i = 1;i <= 10; i++)     {         printf("%dn", i); //  1 2 3 4 5   结束         if (i == 5) break;  // 如果i = 5, for循环全部结束     }  }

  简单的标记法程序 

//6_2 标记法程序 #include <stdio.h>  main() {     int n, t;     scanf_s("%d", &n);     if (n % 2 == 0)     {         t = 0;     }     else     {         t = 1;     }     if (t = 0)     {         printf("偶数n");     }     else     {         printf("奇数n");     } }

 

  判断一个数是否为素数;

    假设这个数是n,要判断n是否素数,必须用n除以2n-1,有任意一个除断即不是素数,全部除不断就是素数。

    2n-1可以用一个for循环解决,在for循环中如果n除以任意一个数除断,就要立刻跳出循环。

    在循环中要使用一个变量作为标志,如果是用break跳出循环的,就将这个标志置0,如果是自然退出循环的,标志就置1。当循环结束后,查看标志为0就输出“不是素数”,为1就输出“是

      素数”。

    简单的思路:

      定义i,n,j三个变量

      输入n

      j1(默认是素数)

      循环i=2n-1

        如果n÷i可以除断

        把标志位j0

        跳出循环

      判断j的值

        如果是0就输出“不是素数”

        如果是1就输出“是素数”。

   代码如下:

//6_3_判断一个数是否为素数 #include <stdio.h> main() {     int i, n, j = 1;     printf("请输入一个数:");     scanf_s("%d", &n);     for (i = 2; i < n ; i++)     {         if(n%i == 0)         {             j = 0;             break;         }     }      if (j == 0)printf("此数不是素数n");     else printf("此数是素数n"); }

  规律:

    一般循环中的breakcontinue语句都使用if语句判断后执行。

  for循环的变化

    for语句中两个分号之间可以没有表达式,比如:

    for(;i<100;i++){…}     是一种常用写法。

      如果写成for(;;);   就成了死循环。

    这表示,for循环中的所有表达式,它可以根据实际需要进行增减,有些人就喜欢放在循环体中判断循环条件,再用break来跳出循环。

 

  作业

    1、求

       C语言----循环结构2(基础篇六)

    代码:

    

///6_4:求西格马k,k=1到100 加上 西格马k平方,k=1到50 加上 西格马k分之一,k=1到10 #include <stdio.h>  main() {     float n = 0; //累加的值     int k;    //计数器     for (k = 1;k<=100;k++)     {         n = k + n;     }      for (k = 1; k <= 50; k++)     {         n = n + k *k;     }     for (k = 1; k <= 50; k++)     {         n = n + 1.0 / k;     }     printf("%fn", n); }

   五一将至,近期不断的更新自己的博客!若有疑问可在评论区留言。

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/599733.html

(0)
上一篇 2021年5月9日
下一篇 2021年5月9日

精彩推荐