c语言笔记

c语言学习笔记

c语言关键字

c语言关键字一共有32个

  • 数据类型关键字(12个)
    char,short,int,long,float,double,
    unsigned,signed,struct,union,enum,void
  • 控制语句关键字
    if,else,switch,case,default,for,do,while,
    break,continue,goto,return
  • 储存类关键字
    auto,extern,register,static,const
  • 其他关键字
    sizeof,typedef,volatile

标识符

1.不能使用系统关键字;
2. 允许使用字母数字下划线;
3. 不允许数字开头;
4. 标识符区分大小写;
5. 见名知义;

转义字符

转义字符 含义
\a 警报
\b 退格(BS),将当前位置移到前一列
\f 换页(FF),将当前位置移到下页开头
\n 换行(LF),将当前位置移到下一行开头
\r 回车(CR),将当前位置移到本行开头
\t 水平制表(HT) (跳到下一个TAB位置)
\v 垂直制表(VT)
\ 代表着一个反斜杠字符“\”
\ ’ 代表一个单引号(撇号)字符
\ " 代表一个双引号字符
\ ? 代表一个问号
\0 数字0
\ddd 8进制转义字符,d范围0~7
\xhh 16进制转义字符,h范围0~9, a~ f,A~F

C语言如何表示相应进制数

进制 表示方式
二进制 c语言不能直接书写二进制数
八进制 以数字0开头,如0123
十进制 以正常数字1~9开头,如123
十六进制 以0x开头,如0x123

计算机内存数值存储方式

  • 原码
    一个属的原码(原始的二进制码)有以下特点
    • 最高位做为符号位,0表示为正,1表示为负
    • 其他数值部分就是数值本身绝对值的二进制数
    • 负数的原码就是在其绝对值的基础上最高位变成1
      原码的设计不便于加减计算
  • 反码
    正数的反码还是正数本身,负数的补码就是其绝对值相同的正数取反的结果。即在原码的基础上,符号位不变,其他位取反的结果。
    反码的设计依旧不便于加减计算
  • 补码
    正数的补码就是正数本身,负数的补码就是其原码取反加一的结果。补码设计的目的,就是讲将原二进制数,分一半做负数,而取反加一的规律则是在此设计的基础上归纳得来的。所以,使用“取反加一”来定义补码,是与设计相悖的
    补码的设计,方便了二进制的加减运算
    在计算机系统中,数值一律用补码来存储 ,主要原因是:
  • 统一了零的编码
  • 将符号位和其他位统一处理
  • 将减法运算变成加法运算
  • 两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃

下面的数值以1字节的大小描述:

十进制数 原码 反码 补码
+15 0000 1111 0000 1111 0000 1111
-15 1000 1111 1111 0000 1111 0001
+0 0000 0000 0000 0000 0000 0000
-0 1000 0000 1111 1111 0000 0000

运算符与表达式

  • 常用运算符分类

|

运算符类型 作用
算术运算符 用于处理四则运算
赋值运算符 用于将表达式的值赋给变量
比较运算符 用于表达式的比较,并返回一个真值或假值
逻辑运算符 用于根据表达式的值返回真值或假值
位运算符 用于处理数据的位运算
sizeof运算符 用于求字节数长度
  • 算术运算符
运算符 术语 示例 结果
+ 正号 +2 2
- 负号 -2 -2
+ 1+1 2
- 3-1 2
* 1 * 2 2
/ 2/ 1 2
% 取余 11%3 2
++ 前自增 a=1; b= ++a; a=2;b=2;
++ 后自增 a=1;b=a++ a=2;b=1;
-- 前自减 a=1;b= --a; a=0;b=0;
-- 后自减 a=1;b=a-- a=0;b=1;
  • 赋值运算符
运算符 术语 示例 结果
= 赋值 a=2;b=3; a=2;b=3;
+= 加等于 a=0;a+=2; a=2;
-= 减等于 a=5;a-=3; a=2;
*= 乘等于 a=2;a*=2; a=4
/= 除等于 a=4;a/=2; a=2
%= 模等于 a=3;a%=2 a=1
  • 比较运算符
    c语言的比较运算里,“真”用数字 “1”来表示,“假”用数字“0”来表示。
运算符 术语 示例 结果
== 相等于 4==3 0
!= 不等于 4!=3 1
< 小于 4<3 0
> 大于 4>3 1
<= 小于等于 4<=3 0
>= 大于等于 4>=3 1
  • 逻辑运算符·
运算符 术语 示例 结果
! !a 如果a为真,则!a为真;
如果a为真,则!a为假。
&& a&&b 如果a和b都为真,则结果为真
否则结果为假 。
|| a||b 如果a和b有一个为真,则结果为真,
二者都为假时,结果为假。

嵌套循环

循环语句之间可以相互嵌套
例如:用嵌套循环写一个打印九九乘法口诀的代码

# include
  int main()
  {
     for(int i=1;i<=9;i++)
     {
       for(int j=1;j<=i;j++)
       {
         printf("%d*%d=%d\t",j,i,i*j);
       }
       printf("\n");
     }
     return 0;
   }

输出如下
c语言笔记_第1张图片

你可能感兴趣的:(c语言,学习笔记)