c语言程序设计(第二版)谭浩强 自我总结笔记

不同数据类型的存储方式

1 整数

一个存放整数的存储单元,左边第一位用来表示符号

2 实数

在计算机中一般以4个字节存储一个实数。这4个字节分为两个部分:一般以3个字节存放数值部分(包括数符),以1个字节存放指数部分。

3 字符

计算机并不是将字符本身存放到存储单元中(存储单元只能存储二进制信息),而是将字符的代码存储到相应的存储单元中。

字符数据与整型数据在一定条件下可以通用

Char c=”a”;

Char c=97;

字符数据既可以以字符形式(%c格式)输出,也可以以整数形式(%d格式)输出。按字符形式输出时,系统先将存储单元中的ASCII码转换成相应字符,然后输出 ,按整数形式输出时,直接将ASCII码作为整数输出。

‘a’”a”得区别

C编译系统在处理字符串时,在每一个字符串常量的结尾加一个字符’/0’,作为字符串结束的标志。’/0’是一个ASCII码为0的字符,即NULL,是“空操作字符‘,即它不引起任何控制动作,也不是一个可显示的字符。不要把其中的’/0’误写为0,两者的含义是不同的。’/0’ASCII代码为0,而数字字符0ASCII代码为48

字符串”a”实际上包含2个字符:’a’’/0’,这是他们的区别。

程序风格

1 在程序中尽量少用数值常量,多用符号常量,以增加程序的可读性和可维护性。

易忘知识点

1  强制类型转换

   (类型名)(表达式),如:(double)a

求补码的方法

 计算机不论对正数和负数都按“补码“形式存放在存储单元

  1 正数

      补码就是该数的“原码“(该数的二进制形式)。

  2 负数

      1)取该数的二进制形式,他就是原码。

      2)对该原码逐位取反,得到其“反码“。

      3)将得到的反码加1

赋值表达式和赋值语句

赋值表达式的末尾没有分号,赋值语句的末尾必须有分号。

在一个表达式中可以包含一个或多个赋值表达式,但绝不能包含赋值语句。

字符数据的输入输出

   1  putchar函数输出一个字符

         putchar(a);

2         getchar函数输入一个字符

         getchar()

        实例

            char a=getchar();putchar(a);

3         printfscanf

         基本的格式字符   %d,%c%s(输出一个字符串)%f%e(以指数形式输出实数)%uunsigned型变量)。%md(用来输出数据的宽度为m的数)  %ld(输出长整型数据)

%o(八进制输出)   %x(十六进制)   %mc(宽度为m的字符数据)  %ms(指定输出的字符串占m列)   %g (用来输出实数,它根据数值的大小,自动选f格式或e格式)

如果要输出字符%,则应该在“格式控制“字符串中用连续两个%表示

         1 连续输入数据时,在两个数值之间需要插入空格(或其他分隔符),以使系统能够区分两个数值。连续输入字符时,在两个字符之间不要插入空格或其他分隔符。系统能 区分两个字符。

         2 在输入数值数据时,空格、回车、Tab键或遇非法输入,则认为该数据结束。

             Scanf(“%d%d”,&a,&b)   输入123a12a,则认为a123b12

   无符号数据与有符号数据之间的赋值

     无符号整型变量不能用%d格式符,而要用%u格式符

   continuebreak区别

     Continue只结束本次循环,而不是终止循环语句的执行(注意用词意思);break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。

    

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值