C语言程序设计(三)——顺序程序设计
目录:
常量.c
常量分类: (1)字面常量(直接常量):数值常量(分为整型常量和浮点型常量)、字符串常量和字符常量
(2)符号常量
(3)常变量
\f,换页,将当前位置移到下一页的开头
\v,垂直制表符,将当前位置移到下一个垂直制表对齐点
\o、\oo或\ooo(o代表一个八进制),与该八进制码对应的ASCII字符,与该八进制码对应的字符
\xh[h...](h代表一个十六进制),与该十六进制码对应的ASCII字符,与该十六进制码对应的字符
注:只要在定义一个变量的时候在它之前加上一个const这个关键字,就代表所定义的变量是一个常变量,常变量必须在定义时初始化,之后其值不能被修改
整型:
(一)补码:整型以补码的形式存放
(1)一个正数的补码是此数的二进制形式
求一个正整数的二进制,除以2,直至商为0,余数倒数排序
(2)一个负数的补码,先求其绝对值的补码,然后该补码所有位取反,所得之数最后加1
例如:求-5的补码
假设-5储存的单元是一个字节,一个字节是八个二进制位,求-5的补码先求5的补码,5的补码是101,其他高位上用0来填充则是00000101,得到5的补码后需要对所有位取反,对0取反就是1,对1取反就是0,所以就是11111010,然后加1得到11111011,这就是-5的补码。
(3)0的补码,所有位全都是0
注意:在存放整型的存储单元中最左边一位是用来表示符号的(一个正整数最左边那一位是0,负整数最左边那一位是1)。
8位二进制补码所代表的整数:
二进制 十进制
0000 0000 —————————— 0
0000 0001 —————————— 1
……
0111 1111 —————————— 127 ——— 2^(8-1)-1 最大正数
1000 0000 —————————— -128 ——— -2^(8-1) 最小负数
1000 0001 —————————— -127 ——— -(2^(8-1)-1)
1000 0010 —————————— -126 ——— -(2^(8-1)-2)
……
1111 1111 —————————— -1
自然数0~127,负整数-128~-1
(二)整型数据的存储空间及范围
(1)Turbo C中 int 是2个字节。VC++中 int 是4个字节。C标准没有具体规定各种数据类型所占用储存单元的长度,这是由各编译系统自行决定的。
短整型 整型 长整型 双长整型 名称
short <= int <= long <= long long 类型
2 2或4 4 8 字节
无符号短整型 无符号整型 无符号长整型 无符号双长整型 名称
unsigned short <= unsigned int <= unsigned long <= unsigned long long 类型
2 2或4 4 8 字节
注意:只有整型(包括字符型)数据可以加 unsigned 修饰符,实数型不能加,对无符号整型数据用 %u 格式输出,C99新增数据的整型类型有 long long 和 bool(布尔型)
字节数 | 有符号的取值范围 | 类型 |
2 | - 2^15~2^15-1(-32768~32767) | short, int |
4 | - 2^31~2^31-1(约-2e9~2e9) | int, long |
8 | - 2^63~2^63-1(-约-9e18~9e18) | long long |
字节数 | 无符号的取值范围 | 类型 |
2 | 0 ~ 2 ^64-1(约0~18e18) | unsigned short, unsigned int |
4 | 0 ~ 2 ^32-1(约0~4e9) | unsigned int, unsigned long |
8 | 0 ~ 2 ^64-1(约0~18e18) | unsigned long long |
记住 2^7 == 128
2^8 == 256
2^15 == 32768
2^16 == 65536
2147483648 == 2^31 ≈ 2e9
4294967296 == 2^32 ≈ 4e9
9223372036854775808 == 2^63 ≈ 9e18
18446744073709551616 == 2^64 ≈ 18e18
注意:黑色的格式声明scanf可用,黑色和红色的格式声明printf可用。
类型 | 格式声明 | ||
十进制的 | 八进制的 | 十六进制的 | |
short | %hd, %hi | %ho | %hx, %hX, %#hx, %#hX |
int | %d, %i | %o | %x, %X, %#x, %#X |
long | %ld, %li | %lo | %lx, %lX, %#lx, %#lX |
long long | %lld, %lli | %llo | %llx, %llX, %#llx, %#llX |
unsigned short | %hu | %ho | %hx, %hX, %#hx, %#hX |
unsigned int | %u | %o | %x, %X, %#x, %#X |
unsigned long | %lu | %lo | %lx, %lX, %#lx, %#lX |
unsigned long long | %llu | %llo | %llx, %llX, %#llx, %#llX |
*整型常量的类型转换
类型 | 常量末尾所加符号(建议都大写) |
short | 无 |
unsigned short | 无 |
int | 无 |
unsigned int | U、u |
long | L, l |
unsigned long | UL, ul, Ul, uL |
long long | LL, ll, Ll, lL |
unsigned long long | ULL, ull, ULl, uLL, Ull, uLl, ulL |
注:如果不加这些说明符号,整型变量的类型是由系统自动识别。
字符型数据:
(一)字符型是以整数形式(ASCII码)存放在内存中。ASCII共128个字符(0~127这128个整数来表示字符)(也就是说最多用7位数就可以表示)。
记住: 'A' —— 65
'a' —— 97 一个小写字母比其大写字母的ASCII码大32
'0' —— 48
空格 —— ' ' —— 32
换行 —— '\n' —— 10
空字符 —— '\0' —— 0
(二)字符型数据的存储空间和值
*
类型 | 字节数 | 取值范围 |
signed char | 1 | -128 ~ 127 |
unsigned char | 1 | 0 ~ 255 |
注意:1.C99把字符型数据作为整型类型的一种。
2.在使用有符号字符型变量时,允许存储的值为负数,但是字符的代码是不可能是负值,所以在存储字符时只用到了 0 ~ 127 这一部分。
getchar 和 putchar函数.c
f1输出值:
f2输出值:
浮点型数据(包括:单精度浮点型,双精度浮点型,长双精度浮点型,复述浮点型):
(一)规范化的指数形式,把小数部分中小数点前的数字为0,小数点后第一位数不为0,如:0.314159e1就是3.14159的规范化的指数形式。
(二)实数储存空间及范围(Turbo C中long double 占16个字节,vc++6.0中占8个字节)
字节数 | 有效数字 | 数值范围 ( 绝对值) | 数据类型 |
4 | 6 | 0以及1.2e-38~3.4e38 | float |
8 | 1 5 | 0以及2.3e-308~1.7e308 | double, long double |
1 6 | 19 | 0以及3.4e-4932~1.1e4932 | long double |
注:从数值的左边第一个不为0的数字起,一直数到这个数字结束,中间的数字叫这个值的有效数字(如0.618的有效数字有三个,分别是6,1,8)
注:(一)所有常量末尾加的数据转换类型转换符可以大小写不分
(二)在目前学习过的所有格式声明中只有xeg可以不分大小写。
printf用到的格式附加字符.C
scanf函数注意事项.C
scanf函数中不可以使用#、-、m-n(m,n属于自然数)的格式附加字符,可以使用域款的格式附加字符
运算符.2.C
C语言程序设计(三)——顺序程序设计的更多相关文章
- C语言第三次程序设计作业
(一)改错题 计算f(x)的值:输入实数x,计算并输出下列分段函数f(x)的值,输出时保留1位小数. 1)源程序(有错误的程序) #include <stdio.h> int main(v ...
- 【blockly教程】第三章Blockly顺序程序设计
3.1 什么是Blockly语言 2012年6月,Google发布了完全可视化的编程语言Google Blockly,整个界面清晰明了, 你可以如同在玩拼图一样用一块块图形对象构建出应用程序.每个图 ...
- 基于C#程序设计语言的三种组合算法
目录 基于C#程序设计语言的三种组合算法 1. 总体思路 1.1 前言 1.2 算法思路 1.3 算法需要注意的点 2. 三种组合算法 2.1 普通组合算法 2.2 与自身进行组合的组合算法 2.3 ...
- 第3章 简单的C程序设计——顺序程序设计
3.1 顺序程序设计举例 例:有人用温度计测量出用华氏法表示的温度(如64F),今要求把它转换为一摄氏法表示的温度(如17.8C) 解题思路:问题的关键在于找到两者的转换公式.根据物理学知识,公式为c ...
- Swift语言指南(三)--语言基础之整数和浮点数
原文:Swift语言指南(三)--语言基础之整数和浮点数 整数 整数指没有小数的整数,如42,-23.整数可以是有符号的(正数,零,负数),也可以是无符号的(正数,零). Swift提供了8,16,3 ...
- ASP.NET MVC:多语言的三种技术处理策略
ASP.NET MVC:多语言的三种技术处理策略 背景 本文介绍了多语言的三种技术处理策略,每种策略对应一种场景,这三种场景是: 多语言资源信息只被.NET使用. 多语言资源信息只被Javascrip ...
- SQL语言逻辑执行顺序
SQL语言逻辑执行顺序 2012-12-18 16:18:13 分类: 数据库开发技术 查询的逻辑执行顺序 FROM < left_table> ON < join_conditio ...
- UWP 多语言的三个概念
首先了解一下 RFC4646 和 BCP-47 是什么东西: RFC4646 The name is a combination of an ISO 639 two-letter lowercase ...
- 第二百五十九节,Tornado框架-模板语言的三种方式
Tornado框架-模板语言的三种方式 模板语言就是可以在html页面,接收逻辑处理的self.render()方法传输的变量,将数据渲染到对应的地方 一.接收值渲染 {{...}}接收self.re ...
随机推荐
- LeetCode136. 只出现一次的数字(异或)
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [ ...
- iloc与loc的区别
pandas.DataFrame.iloc iloc基于位置进行索引,主要是整数位置,也可以用布尔数组 iloc的输入可以是:单个整数.整数列表或数组.整数切片.布尔数组 pandas.DataFr ...
- format的使用
v="敬爱可亲的{0},最喜欢在{1}地方干{2}" name1=input("名字>") lang=input("地点>") ...
- 高级特征工程I
Mean encodings 以下是Coursera上的How to Win a Data Science Competition: Learn from Top Kagglers课程笔记. 学习目标 ...
- python之路模块补充
=======================================json序列化========================================= ============ ...
- STM 32 内部功能回顾
EXTI 外部中断 NVIC 嵌套的向量式中断控制器 AHB 是高级高性能内部总线,主要是用在CPU.DMA.DSP(数字信号处理) APB 是外围总线,I2C. 串口 APB 分为高速APB2( ...
- EasyExcel实现导入excel
https://blog.csdn.net/rexueqingchun/article/details/91870372 1.pom.xml配置依赖包 <!-- xls格式excel依赖包 -- ...
- Ubuntu切换默认sh为bash或者dash
Ubuntu切换默认sh为bash或者dash 1 bash与dash 从Ubuntu 6.10开始,默认使用dash(theDebian Almquist Shell)而不是bash(the G ...
- Django | mysql修改个别表后save()报错
报错内容: elasticsearch.exceptions.ConnectionError: ConnectionError(<urllib3.connection.HTTPConnectio ...
- 安装proxmox VE(PVE)教程
proxmox VE,又叫PVE,全称是 Proxmox Virtual Environment 官网地址:https://www.proxmox.com/en/ 1)在官网下载PVE最新镜像,笔者下 ...