C语言基础知识(二)
2020-07-28 20:52
281 查看
一、整数存储方式(补码)
正整数存储方式:正数的补码即是正数的二进制。
负整数存储方式:负数补码 = 该数的绝对值的二进制,并对除最高位的取反,再加1;
二、无符号数据输出
对无符号整型数据输出用“%u”,表示用无符号十进制数的格式输出。
例子:
[code]printf("%u\n", u_num);
三、浮点数存放方式
float 和 double 类型,视系统定,多少位用于小数部分,多少位用于指数部分。
float型:精度为6位有效数字,一般为4个字节。
double型:精度为15位有效数字,一般为8个字节。
浮点型常量默认是双精度,分配8字节。
四、强制类型转换
[code]float x = 3.8; int a = (int)x; #强制类型转换
原理:进行强制类型转换的时候,int(x)会先得到一个int类型的临时值,等于x的整数部分。赋值给int类型的a后,x的类型和值都未发生改变,并临时值不再存在。
1、将一个占字节多的整型数赋值给一个占字节少的整型数,只将多字节的低字节赋值即可。
五、变量赋值
对几个变量要赋同一值,应该写
[code]int a = 3, b = 3, c = 3; # 对 int a = b = c = 3; #是错误的
一般变量初始化不是在编译阶段完成的(只有静态存储变量和外部变量的初始化是编译阶段完成的),而是在程序运行的时候执行本函数时赋予初值的。
[code]int a = 3; ## 相当于 int a; a = 3;
六、输出格式e
用 %e 指定以指数形式输出实数,Visual C++系统会默认给数字部分的小数位分6列,指数部分占5列(如e+002,其中e 占一列,指数符号占1列,指数占3列)。指数标准化形式的输出,即是小数点前必须有且仅有1位非零数字。
例子:
[code]printf("%e", 123.456); 输出:1.234560e+002 其中:234560占6列,e+002占5列,实际输出长度为13列 #--------------------------------------- printf("%13.2e", 123.456); 输出: 1.23e+002 (前面有4个空格) 其中:13.2表示总长13,小数部分为2,e+002默认占5列
七、使用scanf的注意事项
如果在scanf中除了格式声明外还有其他字符(包括空格),则在输入数据的时候,要和scanf中的字符相对应。
[code]scanf("%f%f", &a,&b); 连续输入数字时,为了区别数字值,可以用空格进行隔离 输入:2.3 5.4 但是scanf中有其他字符的时候 scanf("a = %f, b = %f", &a, &b); 因此输入的时候要一一对应即 输入:a = 2.3, b = 5.4 (要对应,包括空格) scanf("%c%c", &a,&b); 连续输入字符的时候,不能用空格进行隔离 输入:ab (不能有空格)
相关文章推荐
- 汇编语言学习第一章-基础知识
- ios之C语言基础知识串联
- SQL查询语言的基础知识
- 《Linux C编程实战》中一些基础C语言知识 && 一些笔试面试题总结
- inux下C语言编程基础知识
- Python语言的12个基础知识点小结
- 汇编语言的基础知识标识符和表达式的继续
- C语言基础知识(一)-------C++语言结构
- Java语言的基础知识2
- [汇编语言学习笔记][第一章基础知识]
- 汇编语言基础知识
- 计算机基础知识--语言介绍
- JavaScript 语言基础知识点总结(思维导图)
- C语言基础知识——常变量以及输入输出函数
- C语言基础知识总结(1)-基本数据类型
- 黑马程序员-C语言基础知识-数据
- 学ios需要了解的C语言基础知识-3-分支结构循环结构
- java学习笔记,1,java语言基础知识
- JavaScript 语言基础知识点总结(思维导图)
- C语言基础知识【环境设置】