如何学好C语言?菜就多练

1.程序的有效性

1.1写程序的过程中需要注意程序的有效性和可靠性,即需要考虑多种复杂的情况

2.scanf

2.1   int a = scanf("%d%d%d",&a1,&a2,&a3)

        将输入的三组数据分别存入缓冲区,每两组数据之间用分隔符(如空格、tab或者非法字符分隔开),按下回车,缓冲区的数据被送入与%d类型匹配,匹配成功后,将输入的数据以格式化的形式放入对应地址的内存中,最后scanf返回1,若三个%d都匹配成功,返回3

3.关系运算

3.1 关系运算符的分类
3.2 用法

        1 > 2 //关系运算表达式  
        关系运算的结果:        真1    假  0  


4. 逻辑运算

4.1 逻辑运算符的分类   

        与(且)都要满足     &&  一假则假  (从左至右运算,具有截断特性,即左边为假,整体为假,右边不进行运算处理)
         或(满足一个即可)  ||    一真则真  (从左至右运算,具有截断特性,即左边为真,整体为真,右边不进行运算处理)
         非                               !=

4.2 用法

        逻辑运算用来组合多个关系运算

5. if 语句

5.1 形式一:if

5.1.1 基本结构

  if (表达式)        //表达式 做判断的条件 
  {
    语句;
  }                        //复合语句 

  5.1.2 含义
    首先,判断 "表达式"是否为真
    真
       执行 语句
       语句执行完,表示if语句结束,程序继续往下
    假
       表示if语句结束,程序继续往下 

5.2 形式二:if--else

5.2.1 基本结构

 if (表达式)
 {
   语句1;
 }else 
 {
   语句2;
 }
  5.2.2 含义
   首先 判断"表达式"是否为真
   真:
     执行 ”语句1"
     语句1 执行完,表示if语句结束,程序继续往下
   假:
      执行 ”语句2"
     语句2 执行完,表示if语句结束,程序继续往下

5.3 形式三:if-else-if-else-if-else

5.3.1 基本结构

if (表达式1)                //注意: 不能加分号
{
   语句1;
}else if (表达式2)        //注意: 不能加分号
{
   语句2;
}else if (表达式3)        //注意: 不能加分号

   语句3;
}else if (表达式4)        //注意: 不能加分号
{
   语句4;
}else
{
  语句5;
}

5.3.2 含义
判断 "表达式1"是否为真
真 执行 "语句1"   语句1 执行完,表示if语句结束,程序继续往下 
假 
   判断"表达式2" 是否为真
   真 执行 "语句2"   语句2 执行完,表示if语句结束,程序继续往下 
   假 
       判断"表达式3" 是否为真
       真 执行 "语句3"   语句3 执行完,表示if语句结束,程序继续往下 
       假 
         ...
         判断"表达式n" 是否为真
         真 执行 "语句n"   语句n 执行完,表示if语句结束,程序继续往下 
         假  
            执行 else后面语句 ,执行完,程序继续往下


注意:
   1.不存在单独的else语句 ,else出现一定有一个if与之对应,即if与else成对出现
   2.else 与 if匹配规则 
              从代码最内层开始匹配 
              else 与程序上步中距离最近的一个if进行匹配组合 

6. 条件运算

6.1 基本结构和含义

表达式1 ? 表达式2 : 表达式3;
         判断问一问 表达式1是真还是假 
         真 ,执行 表达式2 
         假 ,执行 表达式3 

7. switch 语句

7.1 基本结构


switch(表达式)                   //表达式 
{
    case 常量表达式1:      //
         语句;
         break;
    case 常量表达式2:
         语句;
         break;
    case 常量表达式3:
         语句;
         break;
     default:                         //除上述case之后所有常量表达式之外的其他任意情况 
         语句;
         break;
}


7.2 含义

  求解switch后的 "表达式"
  根据表达式结果,匹配case后的值,不同case之间并列关系非从上到下的顺序关系 
  匹配成功则执行对应case下的语句
  语句结束的标志是遇到了break 或者是switch 右} (花括号)  

注意:
  1.switch 后表达式需要是一个整型表达式 
  2.case后面是常量表达式,不能出现变量
 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值