C语言 day02 基础知识学习

一、if嵌套
   格式:
    if(条件1)   {
        if(条件3)   {
              语句4;
        }
        else    {
              语句5;
         }
   }
   else if(条件2)  {
     语句2;
   }
  else  {
      语句3;
    }
   执行:先判断条件1是否满足继续判断条件3,如果条件3也满足则执行语句4后结束,如果条件3不满足则执行语句5结束,如果条件1都不满足则继续判断条件2,如果条件2满足则执行语句2,如果条件2也不满足则执行语句3
    
    练习:判断闰年(day02/01ifInIf.c)

  2.开关语句:switch
   格式:  switch(表达式)
              {
                    case 常量1:表达式1;break;
                    case 常量2:表达式2;break;
                    case 常量3:表达式3;break;
                    case 常量4:表达式4;break;
                        ...
                    default: 表达式5;  break;
              }
     执行: 先计算表达式的值,和case后的常量比较,当常量的值和表达式的值相同时,则执行后面的表达式,如果所有的case都不匹配,则执行defaul后的语句
     注意:case后的常量不可以相同。
              一般情况下 在每个case后都会加上break;
               default不是必须有,可写可不写。但一定是最后一个匹配。
               case常量后是冒号:
               如果在case后需要定义变量,则要加上大括号使用。
      练习: 输入成绩,用switch打印等级(day02/03sorce.c)

  3.goto语句
    作用:跳转到某一个位置,需要提前把位置设置好,遇到goto加标签则直接跳转到标签位置。
    格式: goto 标志;
    案例: DANNY:  //设置标志
               goto DANNY; //跳转到标志
    练习: 使用goto计算1到100的偶数和(day01/05even.c)
     
二、循环语句
   1.while循环语句
    格式:while(条件)
              {
                       循环语句;
              }
    2.流程:首先判断条件是否满足,如果满足执行循环语句,然后继续判断,满足则一直执行,知道条件不满足为止;
    3.练习: 打印1到100的和(day02/06while.c);
    4.练习:输入两个数,用while循环打印出两个数中间的所有整数(包含两个数)()
    5.练习:打印斐波那契数列。
     注意:while后不可以加分号

    6.continue 和break
      continue:退出当次循环,遇到continue后的代码不执行,继续执行下一次循环。
      break:退出当前循环,遇到break则退出循环;
    7.死循环(无限循环)
     定义:当循环条件永远为真则循环不会结束,这种循环叫无限循环。无限循环不结束则后面的代码无法执行。
      比如说 while(1){}      while(1);

三、循环嵌套:
    1.定义:在循环中加入另外一个循环
    2.格式:  while(条件1)
                  {
        语句1;
                        while(条件2)
                         {
        语句2
         
                         }
            语句3;
                 }
     3.执行:先判断条件1是否满足,如果满足执行语句1,后继续判断条件2,如果条件2满足则执行语句2后继续判断条件2,直到条件2不满足才会退出内部循环,然后执行语句3,再执行外部循环的条件1,如果满足继续刚才的流程,直到条件1不满足则退出循环。
     练习: 鸡兔同笼游戏:一只两条腿,一只兔子4条腿,一共有100个头,有300条腿,请问多少只鸡多少只兔子。(day01/10chickenAdnRabbit.c)
    注意:在循环嵌套中,如果遇到break,则会退出当前循环,break在哪个括号中则退出当前括号的循环。


  4. do....while循环
  格式:do
            {
              循环体;
           }while(条件);
   执行:先执行循环体,在判断条件是否满足,如果满足则继续执行循环体,如果不满足则退出循环。不管是否满足条件,至少会执行一次循环体。
    随机值:电脑随机产生一个值,是随意的。
    随机值产生步骤: 添加头文件  #include <stdlib.h>,
    需要用srand做种子,然后rand产生随机值。
    案例:猜数小游戏,随机产生值,然后和输入的值比较,给出大小提示,直到用户猜对为止。(day02/11guess.c)
      注意:在while后要加分号。
srand(time(NULL));       //以时间为参数产生种子
int num =rand()%1000+1;


  5.for循环
   格式:  for(语句1;条件2;语句3)
               {
                    循环语句4;
               }
    注意:语句1一般为 定义变量语句
              语句2一般为判断条件语句
              语句3一般为自增自减语句 
   执行:先执行语句1,然后判断条件2是否满足,如果满足 则执行循环语句4,继续执行语句3后再判断条件2是否满足,如果条件2还满足则继续执行循环语句4,直到条件不满足为止。
  
6. for循环嵌套
      格式:for(语句1;语句2;语句3)
             {
                for(语句4;语句5;语句6)
                {
                       循环体7;
                }
            }
     执行:先初始化语句1,判断条件2是否满足,进入到内循环中,执行语句4,判断语句5是否满足,如果满足则执行循环体7,再执行语句6后判断语句5是否满足,如果满足则一直执行循环体7中内容,如果不满足则执行语句3,在判断语句2是否满足。
    练习:输入一个值,然后打印输入值的行数的三角形(day02/14triangle.c )  
          *
        *   *
     *    *   *  
    练习: 九九乘法表


四、数组:
  1.定义:相同数据类型的连续的集合。
  2.格式:数据类型 数组名[数组元素个数] = {多个值};
               例如: int arr[6]={1,2,3,4,5,6};
   3.元素:数组的每个值是他的元素,用数组名和下标表示例如arr[2]
      下标:数组的下标是从0开始到数组元素个数-1.不可以越界使用
   4.数组的初始化:
        int arr[4] = {1,2,3,4};  全部初始化
        int arr[4] = {1,2}        部分初始化,未初始化部分默认为0
        int arr[4] = {0}           全部初始化成0;
        int arr[ ] = {1,2,3,4}    缺省初始化,会根据初始化个数自动确定元素个数
     练习:请打印斐波拉契数列:1 1 2 3 5 8     (20项)
   5.补充知识: (头文件unistd.h)
      sleep() 代码延时, (秒)
      system(命令)      调用外部程序执行 
      exit()   结束程序 ,结束进程
      

预习:二维数组  函数  字符串函数  (结构体 枚举 联合)

作业1:打印1到1000的质数(只可以被1或者自己整除的数,2,3,5,7,11,13,17,19);

作业2:现在有一对大兔子,兔子每两个月生一对小兔子,小兔子两个月后可以生产,请问10个月后总共多少只兔子。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值