C语言复习笔记

Week1

1.不能使用关键字作为变量名

2.进制转换

3.使用后缀为sln的文件,可以打开项目

4.00 00 00 7b   x86架构是小端存储(英特尔还是AMD),低位在前,高位在后

内存数据要用十六进制去看,非常高效,两个字符就可以表示一个字节

1 位  1 bit  存储0或者1

1 字节 1 byte =8 bit

1KB = 1024 字节

1MB =1024 KB

1GB= 1024 MB

5.数据变量类型

Week2

1.ASCLL码与十进制的转化   %c

无论是赋ASCLL码值还是赋字符,使用%c打印输出的都是字符

2.字符串常量的存储空间需要比他的字符个数多一个

3.混合运算

Int i=5;

Float j=i/2;    j=2.0

Float k=(float i)/2;    k=2.5

4.数据输入输出函数

Scanf   读取的是标准输入   不能运行时加入宏定义  #define _CRT_SECURE_NO_WARNINGS

Printf  输出到黑色控制台标准输出

%d    一个十进制整数

%f  一个浮点数

%c    一个单一的字符

5.scanf使用方法

  #include <stdio.h>

  int scanf( const char *format, ... );

format 是一个字符串,…是可变参数,参数的数目与format中的%的数目保持一致

Scanf 在读取  整数型,浮点数,字符串时,会忽略 '\n'空格等字符。

但是在读取匹配字符时,scanf("%c",&c) 不会忽略任何字符

缓冲区为空时,黑色窗口才会卡住停下,所以在%c时,黑色窗口会闪过。

6.scanf循环读取,发生错误时返回EOF(-1)

scanf出错的情况:在前面不输入任何字符的时候,反复按  CTRL+Z,会出错停止

疯狂打印:scanf缓冲区,字符不匹配

7.清空缓冲区:  fflush(stdin)

while (rewind(stdin),(ret=scanf("%d", &i))!=EOF)

字符匹配时,不需要清空缓冲区

8.当我们让scanf函数一次读取多种类型的数据时,对于字符型数据要格外小心,因为当一行数据中存在字符型数据读取时,读取的字符并不会忽略空格和'\n'(回车符),所以使用方法如图2.9.8所示。

int i = 5; double f; float l; char c; int ret;

ret = scanf("%d %c%lf%f",&i,&c,&f,&l);

//混合输入时%d %c之间要加一个空格,才能正确输出

printf("i=%d,c=%c,f=%5.2lf,l=%5.2f,ret=%d\n", i, c, f, l, ret);

//%5.2lf  是对输出数字形式的确定

system("pause");

return 0;

编写代码时,我们需要在%d 与%c之间加入一个空格。 scanf 函数匹配成功了4个成员,所以返回值为4,我们可以通过返回值来判断scanf函数匹配成功了几个成员,中间任何有一个成员匹配出错,后面的成员都会匹配出错。

9.printf输出格式

%5.2   有5位数字,小数点后显示两位

10.运算符优先级

先乘除,取模,后加减

2<a<10 变成布尔运算

2<a&&a<10加了逻辑运算符,是正确的判断方式

11.判断两个浮点数是否相等

F=234.56

关系运算符:f==234.56  ×

布尔运算符:f-234.56>-0.0001&&f-234.56<0.0001  √

关系运算符认为一切非0数值都为真

12.赋值运算符只能在左边放变量

13.自增自减运算符

J=i++>-1可以分解为两步   j=i>-1;布尔关系式,正确为true=1,不正确为flase=0;

i++

14.整形数在0-128之间可以通过%c输出

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值