Post

3.程序结构

3.程序结构
目录 {{" - [程序结构](#%E7%A8%8B%E5%BA%8F%E7%BB%93%E6%9E%84) - [算数运算符](#%E7%AE%97%E6%95%B0%E8%BF%90%E7%AE%97%E7%AC%A6) - [范围判断要点](#%E8%8C%83%E5%9B%B4%E5%88%A4%E6%96%AD%E8%A6%81%E7%82%B9) - [逗号运算符](#%E9%80%97%E5%8F%B7%E8%BF%90%E7%AE%97%E7%AC%A6) - [除 /](#%E9%99%A4-) - [取余 %](#%E5%8F%96%E4%BD%99-%25) - [三目运算符 的原理和应用情况](#%E4%B8%89%E7%9B%AE%E8%BF%90%E7%AE%97%E7%AC%A6-%E7%9A%84%E5%8E%9F%E7%90%86%E5%92%8C%E5%BA%94%E7%94%A8%E6%83%85%E5%86%B5) - [](#) - [运算符优先级](#%E8%BF%90%E7%AE%97%E7%AC%A6%E4%BC%98%E5%85%88%E7%BA%A7) - [类型转换](#%E7%B1%BB%E5%9E%8B%E8%BD%AC%E6%8D%A2) - [程序流程结构](#%E7%A8%8B%E5%BA%8F%E6%B5%81%E7%A8%8B%E7%BB%93%E6%9E%84) " | markdownify }}

程序结构

算数运算符

范围判断要点

if(10<a<15)

  • 先判断 10<a ;若不成立 ,10<a 结果为0
  • 在判断 0<15 ;成立,结果为1 即真
  • 不等价于 判断 a 是否在该范围内
  • 应用 && 运算符来实现

逗号运算符

**逗号运算符,最终结果是最后一个表达式的结果
例:int c = (a++,b++,a+b,10,200,a+b); —— c = a+b;

除 /

  • 两数相除,若要得到小数,必有一个是 double 类型 或 float类型 。
  • 转换double类型方法 例:7*1.0;

取余 %

三目运算符 的原理和应用情况

三目运算符是 if else 的简写

  • example:
    • if (a>b)
      {
      c=a;
      }
      else
      {
      c=b;
      }
      等价于 c=a>b?a:b;

#

运算符优先级







  
优先级运算符名称或含义使用形式结合方向说明  
1[]数组下标数组名[常量表达式]左到右--  
1()圆括号(表达式)/函数名(形参表)--   
1.成员选择(对象)对象.成员名--   
1->成员选择(指针)对象指针->成员名--   
        
2-负号运算符-表达式右到左单目运算符  
2~按位取反运算符~表达式    
2++自增运算符++变量名/变量名++    
2--自减运算符--变量名/变量名--    
2*取值运算符*指针变量    
2&取地址运算符&变量名    
2!逻辑非运算符!表达式    
2(类型)强制类型转换(数据类型)表达式--   
2sizeof长度运算符sizeof(表达式)--   
        
3/表达式/表达式左到右双目运算符  
3*表达式*表达式    
3%余数(取模)整型表达式%整型表达式    
4+表达式+表达式左到右双目运算符  
4-表达式-表达式    
5«左移变量«表达式左到右双目运算符  
5>>右移变量>>表达式    
6>大于表达式>表达式左到右双目运算符  
6>=大于等于表达式>=表达式    
6<小于表达式<表达式    
6<=小于等于表达式<=表达式    
7==等于表达式==表达式左到右双目运算符  
7!=不等于表达式!= 表达式    
        
8&按位与表达式&表达式左到右双目运算符  
9^按位异或表达式^表达式左到右双目运算符  
10****按位或表达式表达式左到右 
11&&逻辑与表达式&&表达式左到右双目运算符  
12** **逻辑或表达式 表达式
        
13?:条件运算符表达式1?表达式2: 表达式3右到左三目运算符  
14=赋值运算符变量=表达式右到左--  
14/=除后赋值变量/=表达式--   
14*=乘后赋值变量*=表达式--   
14%=取模后赋值变量%=表达式--   
14+=加后赋值变量+=表达式--   
14-=减后赋值变量-=表达式--   
14«=左移后赋值变量«=表达式--   
14>>=右移后赋值变量>>=表达式--   
14&=按位与后赋值变量&=表达式--   
14^=按位异或后赋值变量^=表达式--   
14**=**按位或后赋值变量=表达式-- 
        
15逗号运算符表达式,表达式,…左到右--  

类型转换

类型的转换 — 所需要的类型和给的类型不匹配,需要转换 强制转换 — *(需要转的类型)原来的数据类型 **强制转换宗旨:

  • 数据不丢失。
  • 大的数据类型转小的数据类型时 ,只会保留低位 的数据。
  • 为了数据不丢失,一般是小的数据转大的**

int a = 3;
double b =(double)a;
printf(“%d\n”,(int)3.14);
printf(“%lf\n”,(double)a);

程序流程结构

C 语言支持最基本的三种程序运行结构分别是:

  • 顺序结构
  • 选择结构 if else… switch
  • if 条件里面 建议 数字写前面

  • 循环结构 for whlie…

### 跳转语句 break continue goto

  • break 跳出switch 或者离 break 最近的循环
  • continue 跳过本次循环
  • goto 无条件跳转
    • 例:
      1
      2
      3
      4
      5
      6
      7
      8
      
      #include <stdio.h>
      int main()
      {
      goto End;
      printf("aaa\n");
      End:
      printf("bbb\n");
      }
      
This post is licensed under CC BY 4.0 by the author.