第一部分 程序设计基础
第一章 计算机、程序和C++语言简介
c++的头文件:
std::cout:控制台输出
<<:流插入运算符,数据流入cout
std::endl:换行(使所有平台上均能显示内容)
.cpp:c++源程序文件扩展名、
预处理、编译、连接:分别得到.obj .exe (unix上是.o 无)
第二章 基本数据类型和计算
std::cin>>变量:控制台输入
.> > : 流提取运算符,数据从一个cin流向变量,可以多个同时输入,即多个>>(但此时键盘输入时应当使用空格分开)
std::标准命名空间,划分为不同空间以防止命名冲突,如何消除此前缀,1、使用using namespace std. (告知编译器,如果不加限定符,都默认为标准命名空间),2、在程序中添加using std::cout,(这样编译器即可理解此类使用的是标准命名空间)
变量声明:告知编译器变量的名字和类型(多个变量,逗号隔开,命名时多个单词除第一个外其他首字母大写)
声明加赋值等于初始化、
命名常量:在变量类型前加const 习惯上,常量的名字用大写。
文字常量:直接在程序中出现的常量值,如int x=188 ,double s=235.35
整型文字常量:(因为表示范围有限,所以对于一个长整型的文字变量,要在其后加上L,一般默认为十进制,八进制前面要加0,十六进制要加0X)
类型转换:(type) 变量名 如 (int)a ; static_cast< int >(5.4)
单引号包起来的字符常量,双引号包起来的字符串常量。
char型和数值型互相转换:由变量类型分别得到char或数值,如 int c=‘A’; cout<<c ;(此时输出的是一个数值),而 char c=65;cout<<c (输出为一个字符);字符的长度为1个字节。
< cmath >:数学库
格式化数值显示:先放大再缩小,如显示后两位。static_cast< int >(a*100)/100.
\t:制表符,类似于tab,缩进四个空格。
< ctime>:时间库,time(0),返回从1970年到现在经历的秒数
第三章 分支语句
布尔值:bool 变量=表达式语句;
逻辑运算符: && || !
< cstdlib>头文件:包含rand()函数,为避免每次使用相同的随机数,通过srand(seed)来改变种子实现。通常用当前时间来实现,即srand(time(0));
条件表达式:y=(x>9) ? 1 : 0
输出格式控制:setw(width) (指定打印字段的宽度:cout<<stew(5)<<“agd”<<endl;) setprecision(n) (指定精度:cout<<setprecision(3)<<12.343<<endl; 输出为12.3); showpoint(强制显示小数点)
枚举类型: enum 枚举类型名 {枚举量1,。。。} (枚举类型的声明)枚举类型名一般首字母大写。
枚举类型名=变量名 (枚举变量的声明)
变量名=枚举量1 (枚举变量的赋值)
枚举类型名 变量名 = 枚举量1 (枚举变量的初始化)
当枚举量未被赋值时,默认从0开始,依次增加。在内存中以整数保存,等同于相对应的整数。
第四章 循环
while(判断语句):判断语句不可使用浮点数,
设计程序式解决方案,关键是分解为子问题,通过对子问题的解决,然后利用循环,分支来解决问题。
向文件写入数据:1、创建ofstream类型的对象(如ofstream output); 2、指定要写入的文件(output.open(“numbers.txt”);创建一个名为numbers.txt 的文件,如此文件已存在,会销毁原文件)3、执行写入操作 (output<<43<<endl) 4、在进行写入操作后,需要关闭文件(output.close).
< fstream>:头文件,类ofstream在其中调用,所以在执行文件操作时要将其包含。
从文件读取数据:1、ifstream input; 2、略 3、input>>a; 4、略
检测文件尾:当准备读入的文件不知道包含多少数据的时候使用;利用 input对象的 eof()函数来检测,返回一个布尔值,当为true时 表示已经到达文件尾。
第五章 函数
函数头:返回值类型、函数名称、参数列表
函数签名:函数名、参数列表
函数调用:等同于函数头
调用栈:每当一个函数被调用时,系统将参数和变量保存在一个栈内,因此具有后入先出的特性。
按值方式传递:当传递的实参时变量时,无论形参如何变化,实参的变量不会发生变化。(常见例子ÿ