第一章 程序设计与C语言 / 第二章 数据的存储与运算
说明:谭浩强 《c语言程序设计》一书的总结
一,C语言命名规则 / 标识符 / 变量名 / 函数名
1 变量名的开头必须是字母或下划线,不能是数字。其后的字符必须是字母、数字或下划线。
2 变量名大小写敏感。
3 变量名不可以是C语言关键字。
实际编程中最常用的是以字母开头,而以下划线开头的变量名是系统专用的。
二,浮点数的表示 / 实型常量
1 十进制小数形式。如 1230,123.0,0.123
2 指数形式。如 123e1,123e0,123e-3
三,输出格式
%d 整形
%f 浮点形
%c 字符形
四,转义字符
\ 转义字符必须以反斜杠 "\" 作为开头的标志,而且在其后只能有一个字符、代表字符的八进制或十六进制数代码
\n 换行
\t 使下一个输出的数据跳到下个输出区(一行中一个输出区占7列)
\b 退格。将当前的输出位置退回前一列处,即消除前一个已输出的字符
\r 回车。将当前的输出位置返回在本行的开头
\f 换页。将当前的输出位置移到下页的开头。不常用
\0 空操作。代表ASCII代码为0的控制字符,用于字符串中,作为字符串的结束标志。不常用
\\ 代表一个反斜杠字符 "\"
\' 代表一个单撇号字符
\" 代表一个双撇号字符
\ddd 1~3位(d)八进制数按照ASCII代码所代表的字符,例如 \101 = 65 = A
\xhh 1~2位(h)十六进制数按照ASCII代码所代表的字符,例如 \x41 = 65 = A
五,自增、自减运算符
++i,--i 先使 i 的值加/减 1,再赋值给其他变量,加/减会影响被赋值的变量(先加后赋值)
i++,i-- 先赋值给其他变量,再使 i 的值加/减 1,加/减不会影响被赋值的变量(先赋值后加)
六,进制
八进制 0开头,例如0123。= 1*8*8 + 2*8 + 3*1
十六进制 0x开头,例如0x123。= 1*16*16 + 2*16 + 3*1
其他记录
1,'a'是字符常量,"a"是字符串常量
2,A-Z:065-090 a-z:097-122
3,运算包含算术运算、关系运算、逻辑运算和赋值运算
4,运算时字节少的数据转换成字节多的类型
5,强类型转换 (double)a
6,正数的补码等于原码,负数的补码等于 原码反转变成反码,再加1。(二进制)
C语言数据类型

代码
#include<stdio.h> #include<math.h> #define PI 3.1415926 //自定义符号常量 int main() { // 鸡兔同笼。头16,脚40,求鸡兔个数 // int h=16, f=40, x, y; // y = (f - 2 * h) / 2; // x = h - y; // printf("cook=%d, rabbit=%d\n", x, y); // 分期付款。贷款324500,每月还3245,月利率0.8%,需要多少月还清 // int d = 324500, p = 3245; // double r = 0.008, m; // m = (log10(p) - log10(p-d*r)) / log10(1+r); // printf("month=%f, total=%f\n", m, m*p); // 指数形式表示浮点数/实型常量 // double f31 = 123e3, f32 = 123e0, f33 = 123e-3; // printfd("f31=%f, f32=%f, f33=%f\n", f31, f32, f33); // printf("字节长度"); // printf("%d\n", sizeof(int)); // printf("%d\n", sizeof(float)); // printf("%d\n", sizeof(double)); // printf("%d\n", sizeof(long double)); // 输出字符型数据与ASCII码 // char c31 = 'A'; // printf("%c\n", c31); // printf("以形式保存的字符型数据:\n"); // printf("\x51\n"); // printf("不同输出格式的输出不一样:\n"); // char c32 = 'a'; // printf("%d %c\n", c32, c32); // printf("不同的数据类型和一样的输出格式:\n"); // char c33 = 97; // int c34 = 97; // printf("%c %c\n",c33, c34); // 根据半径,求圆的周长、面积、球的体积 // 自定义符号常量 // double r = 3.67, c4, s4, v4; // c4 = 2 * PI * r; // s4 = PI * pow(r, 2); // v4 = 4.0 / 3.0 * PI * pow(r, 3); // printf("c=%f s=%f v=%f\n", c4, s4, v4); // 自增、自减运算符 // int i41 = 1, i42 = 1; // printf("++i = %d; i++ = %d\n", ++i41, i42++); // printf("++i是先加后赋值,i--是先赋值后加"); // 八进制、十六进制 // int a5 = 0123, a6 = 0x123; // printf("%d %d", a5, a6); // 整型变量 // int f1 = 123; // short f2 = 12; // long f3 = 1234; // printf("%d %d %ld", f1, f2, f3); return 0; }
章节小结
第一章 程序设计与C语言
(1)计算机是由程序控制的,要使计算机按照人们的意图工作,必须用计算机语言编写程序。
(2)机器语言和汇编语言依赖于具体计算机,属于低级语言,难学难用,无通用性。高级语言接近人类自然语言和数学语言,容易学习和推广,不依赖于具体计算机,通用性强。
(3)C语言是目前在世界上使用最广泛的一种计算机语言,语言简洁紧凑,使用方便灵活,功能很强,既有高级语言的优点,又具有低级语言的功能;既可用于编写系统软件,又可用于编写应用软件。掌握C语言程序设计是程序设计人员的一项基本功。
(4)一个C语言程序是由一个或多个函数构成的,必须有一个main函数。程序由main函数开始执行。在函数体内可以包括若干个语句,语句以分号结束。一行内可以写多个语句,一个语句可以分写为多行。
(5)上机运行一个C程序必须经过4个步骤:编辑、编译、连接和执行。要熟练掌握上机技巧。
(6)用C语言写好程序后,可以用不同的C编译系统对他进行编译。目前所用的编译系统多采用集成环境:把编辑、编译、连接和执行等步骤在一个集成环境中完成。
(7)目前所用的C++集成环境功能强,使用方便。由于C++和C兼容,可以用C++集成环境对C程序进行编译、连接和运行。
第二章 数据的存储与运算
(1)在C语言中,数据都是属于一定的类型的。不同类型的数据在计算机中所占的空间大小和存储方式是不同的。整数以其二进制(补码)形式存储,字符型数据以其对应的ASCII代码形式存储,实数以指数形式存储。
(2)在“int a = 3;”中,int是类型名,a是变量名。类型相当于模板,它只是一种抽象的规定,不占存储空间,不能在其中存放数据,如写成“int = 3;”是错误的。变量是根据类型所规定的原则建立的实体,它占存储空间,可以在其中存放数据,写出“a = 3;”是正确的。
(3)在程序中,数据的表现形式有常量和变量。常量有字面常量和符号常量两种形式,符号常量与变量不同,它不占存储空间,不能对它指定类型,不能被赋值,它只是一个字符串,用来代替一个已知的常量。
(4)标识符用来标识一个对象(包括变量、符号常量、函数、数组、文件、类型等)。变最名必须符合 C 标识符的命名规则,不要使用系统已有定义的关键字(见附录B)和系统预定义的标一识符。变量名要尽量”见名知意”。
(5)ANSI C 标准没有具体规定各类数据在内存中所占的字节数,由各 C 编译系统自行决定。常见的有两种:
① Turbo C 等,short 占 2字节,int 占 2字节,long 占 4字节。
② Visual C++等,short 占 2字节,int 占 4字节,long 占 4字节。
对字符型都是 1字节。浮点数一般都是,float 占 4字节,double 占 8字节。
可以用运算符 sizeof (类型名)或 sizeof(变量名)测出所用 C 系统给各类数据分配的字节数。
(6)要区别字符和字符串。'a' 是一个字符,"a" 是一个字符串,它包括 'a' 和 '\0' 两个字符。一个字符(char)型变量只能存放 1个字符。
(7)使用 ++(自加)和 --(自减)是 C 语言的一个特色,可以使程序清晰、简练,但用得不适当,也会产生副作用。一般只使用最简单的形式,如 i++,p-- 。防止出现二义性,为便于理解和减少出错,需要时可以加括号。
(8)在算术表达式中,允许不同类型的数值数据和字符数据进行混合运算。C 语言编译系统把 float 型数据都处理为 double 型。两个不同类型数据进行算术运算时,占字节少的数据先转换为字节多的数据类型,然后进行运算,得到的结果是字节多的数据类型。
相关/转载:
1,谭浩强 《c语言程序设计》

浙公网安备 33010602011771号