PowerPoint 演示文稿

Size: px
Start display at page:

Download "PowerPoint 演示文稿"

Transcription

1 第四讲 函数

2 目录页 华东师范大学数学科学学院 School of Mathematical Sciences, ECNU Contents 1 2 函数基础 数据的作用域 3 预编译与多文件结构 4 C++ 库函数

3 目录页 华东师范大学数学科学学院 School of Mathematical Sciences, ECNU Contents 1 函数基础 1 函数基础 2 数据的作用域 3 预编译与多文件结构 函数的定义 声明与调用 函数间的参数传递 函数嵌套 内联函数 4 C++ 系统函数

4 函数的定义 函数是程序设计中, 对功能的抽象, 是 C++ 的基本模块 C++ 程序是由函数构成的 ( 一个或多个函数 ) C++ 程序必须有且只能有一个 main 函数 函数的定义 类型标识符函数名 ( 形式参数表 ) { 语句 } 函数体 函数头 NOTE 类型标识符指明本函数的类型, 即函数返回值的类型, 若没有返回值, 可用 void 4

5 形式参数表 形式参数列表类型标识符变量, 类型标识符变量, 形式参数 ( 简称形参 ) 需要指定数据类型 有多个形参时, 用逗号隔开, 每个形参需单独指定数据类型 如果函数不带参数, 则形参可以省略, 但小括号不能省 形参只在函数内部有效 int my_max(int x, int y) // OK int my_max(int x, y) // ERROR 函数返回值 通过 return 语句给出, 如 : return x 若没有返回值, 可以不写, 也可以写不带表达式的 return 5

6 函数的调用 函数调用前须先声明 类型标识符函数名 ( 形式参数表 ); 可以在主调函数中声明, 也可以在所有函数之外声明 有时也称为函数原型 函数的调用方式 函数名 ( 实参数列表 ) 被调函数可以出现在表达式中, 此时必须要有返回值 主调函数与被调函数 被调函数在主调函数后定义, 须在调用前声明 被调函数在主调函数前定义, 则主调函数中可以直接调用 6

7 函数定义举例 ex04_fun_01.cpp int my_max(int x, int y) { if (x>y) return x; else return y; } double my_power(double x, int k) { double y = 1.0; ex04_fun_02.cpp for (int i=1; i<=k; i++) y = y * x; } return y; 7

8 函数的调用过程 int main() {... fun1();... fun2();... } int fun1() {... fun3();... } int fun2() {... } int fun3() {... } 8

9 函数的调用举例 例 : 输入一个二进制数, 输出相应的十进制数 ex04_bin2dec.cpp 思考 如何计算 对应的十进制数?( 提示 : 字符数组 ) 例 : 利用 sin 函数的 Taylor 展开计算 sin(pi/2) 的值 ( 直到级数某项的绝对值小于 为止 ) k 1 x x x x k 1 x sin( x) = + + = ( 1) 1! 3! 5! 7! (2k 1)! k= 1 思考 利用上面的公式计算 sin(41*pi/2), 结果如何? ex04_mysin.cpp 9

10 函数的调用举例 例 : 找出 11~999 之间的数 m, 满足 m m 2 和 m 3 均为回文数 分析 : 利用除以 10 取余的方法, 从最低位开始, 依次取出该数的各位数字 按反序重新构成新的数, 比较与原数是否相等, 若相等, 则原数为回文数 NOTE ex04_huiwen.cpp 回文数 : 各位数字左右对称的整数, 如 11,121,

11 举例 : 随机数 例 : 随机数的生成需包含头文件 cstdlib seed=11; srand(seed); % 设置种子 x=rand(); % 返回一个随机整数 rand(): 返回一个 0 ~ RAND_MAX 之间的伪随机整数 srand(seed): 设置种子 如不设定, 默认种子为 1 相同的种子对应相同的伪随机整数 每次执行 rand() 后, 种子会自动改变, 但变化规律是固定的 ex04_rand_01.cpp 思考 如何生成 [a, b] 之间的随机整数? 如何生成 [0, 1] 之间的随机小数? ex04_rand_02.cpp ex04_rand_03.cpp 11

12 举例 : 计时函数 例 : 计时函数 :clock #include <ctime> 需包含头文件 ctime clock_t t0, t1; double totaltime; t0 = clock(); t1 = clock(); totaltime=(double)(t1 - t0) / CLOCKS_PER_SEC; ex04_time_01.cpp NOTE clock(): 返回进程启动后所使用的 cpu 总滴答数 ( 毫秒 ) 12

13 举例 : 计时函数 例 : 计时函数 :time #include <ctime> 需包含头文件 ctime time_t t0, t1; t0 = time(null); // t0 = time(0) t1 = time(null); t = t1 - t0; ex04_time_02.cpp NOTE time(null): 返回从 1970 年 1 月 1 日 0 时 0 分 0 秒至今的总秒数 clock 以滴答 ( 毫秒 ) 为单位,time 以秒为单位 13

14 猜数游戏 例 : 猜数游戏由计算机随机产生 [1,100] 之间的一个整数, 然后由用户猜测这个数 要求根据用户的猜测情况给出不同的提示 : 如果猜测的数大于产生的数, 则显示 Larger; 小于则显示 Smaller; 等于则显示 You won! 同时退出游戏 用户最多有 7 次机会 ex04_game.cpp Tips: 如何生成每次都不同的随机整数? srand(time(null)); // srand(time(0)) x = rand(); 14

15 函数的参数传递机制 传递方式一 : 值传递 形参只在函数被调用时才分配存储单元, 调用结束即被释放 实参可以是常量 变量 表达式 函数 ( 名 ) 等, 但它们必须要有确定的值, 以便把这些值传送给形参 实参和形参在数量 类型 顺序上应严格一致 传递时是将实参的值传递给对应的形参, 即单向传递 形参获得实参传递过来的值后, 便与实参脱离关系, 即此后形参的值的改变不会影响实参的值 15

16 举例 int main() { x = 3.0; n = 2; y = my_power(x, n); } double my_power(double x, int k) { } ex04_fun_11.cpp 思考 编写一个函数, 交换两个整数的值 ex04_fun_12.cpp 16

17 函数的参数传递机制 : 引用 传递方式二 : 引用传递 引用是一种特殊类型的变量, 可看作是变量的别名 通过引用传递, 可以实现在改变形参值的同时改变实参值 引用的声明 : & ex04_ref_01.cpp int a; int & ra = a; // 声明一个指向 a 的引用 a = 3; cout << "a=" << a << endl; ra = 5; // ra 和 a 共享同一个存储空间 cout << "a=" << a << endl; 17

18 引用 NOTE 声明一个引用时必须初始化, 指向一个存在的对象 引用一旦初始化就不能改变, 即不能再指向其它对象 若引用作为形参, 则调用函数时才会被初始化, 此时形参是实参的一个别名, 对形参的任何操作也会直接作用于实参 void swap_new(int & a, int & b) { int t = a; a = b; b = t; } int main() { int x = 5, y = 8; cout << "x=" << x << ", y=" << y << endl; ex04_ref_02.cpp } swap_new(x, y); cout << "x=" << x << ", y=" << y << endl; 18

19 函数的嵌套 函数可以嵌套调用, 但不能嵌套定义 函数也可以递归调用 ( 函数可以直接或间接调用自己 ) 例 : 利用右边的公式计算阶乘 : n! 1 ( n = 0) = nn ( 1)! ( n> 0) ex04_factorial.cpp NOTE 对同一个函数的多次不同调用中, 编译器会给函数的形参和局部变量分配 不同的存储空间, 它们互不影响 19

20 递归 factorial(4) Step 9: return 24 Step 8: return 6 return 4 * factorial(3) Step 0: executes factorial(4) Step 1: executes factorial(3) return 3 * factorial(2) Step 7: return 2 return 2 * factorial(1) Step 2: executes factorial(2) Step 3: executes factorial(1) Step 6: return 1 return 1 * factorial(0) Step 4: executes factorial(0) Step 5: return 1 return 1 20

21 举例 : 汉诺塔问题 有三根针 A B C; A 针上有 N 个大小不同的盘子, 大的在下, 小的在上 ; 把这 N 个盘子从 A 针移到 C 针, 在移动过程中可以借助 B 针 ; 要求 :(1) 每次只允许移动一个盘,(2) 在移动过程中在三根针上的盘子都要保持大盘在下, 小盘在上 数学归纳 A B C 法 21

22 举例 : 汉诺塔 A B C A B C A B C A B C A B C 22

23 举例 : 汉诺塔 分析 : 该问题可分解为下面三个步骤 : (1) 将 A 上 n-1 个盘子移到 B 针上 ( 借助 C 针 ); (2) 把 A 针上剩下的一个盘子移到 C 针上 ; (3) 将 n-1 个盘子从 B 针移到 C 针上 ( 借助 A 针 ); 上面三个步骤包含两种操作 : 1 将多个盘子从一个针移到另一个针上, 这是一个递归的过程, 我们用 hanoi 函数实现 2 将 1 个盘子从一个针上移到另一针上, 该过程用 move 函数实现 ex04_hanoi.cpp 23

24 内联函数 内联函数声明与使用 定义与普通函数一样, 只需加关键字 inline 编译时在调用处用函数体进行替换 使用内联函数能节省参数传递 控制转移等开销, 从而提高代码的执行效率 ex04_inline.cpp NOTE 内联函数通过应该功能简单 规模小 使用频繁 内联函数体内不建议使用循环语句和 switch 语句 有些函数无法定义成内联函数, 如递归调用函数等 24

25 目录页 华东师范大学数学科学学院 School of Mathematical Sciences, ECNU Contents 2 数据的作用域 1 函数基础 2 数据的作用域 3 预编译与多文件结构 4 C++ 系统函数 什么是作用域, 局部作用域 局部变量, 全局变量 作用域解析运算符, 命名空间 生存期, 静态变量 形参的缺省值, 函数重载

26 作用域 数据的作用域 : 数据在程序中有效的区域 C++ 中常见的作用域 函数原型作用域 局部作用域 ( 函数, 语句块等 ) 命名空间作用域 类作用域 26

27 函数原型作用域 函数原型作用域 : 函数原型声明时形参的作用范围 int my_max(int x, int y); x, y 的作用域仅限于形参列表的左右括号之间 NOTE 在函数原型声明时可省略变量名, 但类型不能省! 27

28 局部作用域 函数体内声明的变量, 作用域从声明开始, 到声明所在的 语句块结束为止 double my_power(double x, int k) { if (k==1) return x; else { double y = 1.0; for (int i=1; i<=k; i++) y = y * x; return y; } } NOTE 语句块 : 一对大括号括起来的部分 x, k 的作用域 y 的作用域 i 的作用域 ex04_var_local.cpp 28

29 局部变量与全局变量 每个变量都有作用域, 即在程序中哪些地方可以使用该变量 函数定义时的形参和函数中定义的变量, 均为局部变量, 只在该函数内有效 ; 语句块中定义的变量是局部变量, 只在该语句块中有效 ; for 循环初始语句中定义的变量是局部变量, 只在 for 循环中有效 ; 在所有函数外定义的变量为全局变量, 在它后面定义的函 数中均可以使用 ; 若要在它前面定义的函数中使用该全局变量, 则需声明其为外部变量, 即 : extern 类型名变量名 ex04_var_01.cpp ex04_var_02.cpp 29

30 局部变量与全局变量 若局部变量与全局变量同名, 则优先使用局部变量! #include<iostream> using namespace std; int k = 2; // 全局变量 int main() { int i=5, x; // 局部变量 x=i+k; cout << "x=" << x << "\n" << endl; ex04_var_03.cpp { } int k=16; // 局部变量 x=i+k; cout << "x=" << x << "\n" << endl; } x=i+k; cout << "x=" << x << "\n" << endl; 30

31 作用域解析运算符 作用域解析运算符 :: 若存在同名的局部变量和全局变量, 则缺省自动引用局部变 量, 若需引用全局变量, 可在变量名前加 :: #include<iostream> using namespace std; int i = 2; // 全局变量 int main() { int i=5; // 局部变量 { int i=7; // 局部变量 cout << "i=" << i << endl; // i=7 } cout << "i=" << i; // i=5 cout << " 全局变量 i=" << ::i; // 引用全局变量,i=2 } 31 ex04_var_global.cpp

32 命名空间 大型程序通常由不同模块组成, 不同模块中的类和函数可能存在重名 为解决这个问题,C++ 引入命名空间概念 命名空间的定义 namespace 命名空间名 { ( 命名空间内的各种声明, 包括函数声明, 类声明等 ) } 命名空间内的元素, 可以是类 函数 变量等, 均称为名字 命名空间的使用 :using 可以将命名空间中的所有名称都导入到当前作用域中 也可以只导入指定的某个名称 32

33 命名空间举例 namespace mynames { int k = 10; double pi = 3.14; int my_max(int x, int y); double my_power(double x, int k); } example using namespace mynames; // 导入 mynames 中的所有名字 using mynames::my_max; // 只导入 my_max mynames::my_power(1.2,3); // 直接使用 mynames 中的 my_power 函数 ex04_namespace_01.cpp ex04_namespace_02.cpp ex04_namespace_03.cpp 33

34 标准命名空间 标准库的所有函数 类 对象等, 都在 std 命名空间中 using namespace std; // 导入标准命名空间中所有名字 example using std::cout; // 只导入标准命名空间中的 cout example ex04_namespace_04.cpp 34

35 生存期 静态生存期 : 生存期与程序的运行期相同, 即一直有效 动态生存期 : 当对象所在的程序块执行完后即消失 静态变量和全局变量 : 静态生存期 动态变量 : 动态生存期 NOTE 局部变量缺省为动态变量 35

36 静态变量 static 类型名变量名 ; static int i=5; // 静态变量声明 example 静态变量的特点 静态局部变量不会随函数的调用结束而消失, 下次调用该函数时, 该变量会保持上次调用后的值! 没有初始化的静态变量会自动赋初值 0 静态变量只初始化一次! ex04_var_static.cpp 36

37 形参的缺省值 函数在定义时, 可以预先给形参设定一个值 ( 即缺省值 ), 函数被调用时, 如给定实参, 则采用实参值, 否则就可以采用这个预先给定的缺省值 好处 : 调用时可以不提供或提供部分实参 int add(int x=5, int y=6) { return x+y; } example int main() { add(10,20); //10+20 add(); //5+6 add(10); //10+6 } 37

38 如何给形参设定缺省值 问题 : 如果有多个形参, 有的带缺省值, 有的不带, 怎么处理? 形参缺省值按照从右向左顺序声明 带缺省值的形参, 其右面不能有不带缺省值的形参 ( 在函数调用时, 实参与形参的配对是按从左向右的顺序进行的 ) int add(int x, int y=5, int z=6); // 正确 example int add(int x=1, int y=5, int z); // 错误 int add(int x=1, int y, int z=6); // 错误 38

39 设定缺省值的位置 问题 : 缺省值是在函数声明时设定, 还是在函数定义时设定? 同一作用域中, 哪个在前就由哪个设定, 后面的不能再设定 ( 若先声明, 后定义, 则声明时设定, 定义时就不能再设定, 反之亦然 ) 不同作用域中的声明, 可设定不同的缺省值 int add(int x=5, int y=6); int main() { add(); // 调用在实现前 } int add(int x=5,int y=6) { return x+y; } int main() { int add(int x, int y) { return x+y; } example 注意 : 这里不能再出现缺省形参! } add(); // 调用在实现后 ex04_defaultvalue_01.cpp ex04_defaultvalue_02.cpp ex04_defaultvalue_03.cpp 39

40 函数重载 C++ 允许功能相近的函数在相同的作用域内采用相同的函数名, 从而形成重载, 方便使用, 便于记忆 两个以上的函数, 具有相同的函数名, 但形参的个数或类型不同, 调用时, 编译器会根据实参和形参的最佳匹配, 自动 确定调用哪一个函数, 这就是函数重载 int add(int x, int y) // 整数的加法 { return x + y; } ex04_overload.cpp double add(double x, double y) // 浮点数的加法 { return x + y; } 40

41 函数重载 重载函数的形参必须不同 : 个数不同或类型不同 int add(int x, int y); double add(double x, double y); int add(int x, int y); int add(int x, int y, int z); example 形参类型不同 形参个数不同 如果函数名相同, 形参个数与类型也相同, 则无论函数返回值的类型是否相同, 编译时会认为语法错误! 不要将功能不同的函数定义为重载函数! 在使用带有默认形参的重载函数时, 要注意防止二义性! int add(int x, int y=1); int add(int x); add(10); //??? example 41

42 目录页 华东师范大学数学科学学院 School of Mathematical Sciences, ECNU Contents 3 预编译与多文件结构 1 函数基础 2 数据的作用域 3 预编译与多文件结构 4 C++ 系统函数 头文件 符号常量 条件编译 多文件结构 外部变量, 外部函数

43 编译预处理 加入头文件 #include < 文件名 > // 按标准方式导入头文件, // 即在系统目录中寻找指定的文件 #include 文件名 // 先在当前目录中寻找, 然后再按标准方式搜索 常用的头文件 iostream iomanip cmath ctime cstdlib fstream 基本输入输出操纵符数学函数计时函数 abs,rand,srand,system,... 文件操作 43

44 编译预处理 定义符号常量 #define PI // 定义符号常量 #undef PI // 删除由 #define 定义的符号常量 NOTE 在很多情况下可以由 const 实现该功能 #define 还可以用来定义带参数的宏, 但也可以用内联函数取代 44

45 条件编译 #if 常量表达式 程序正文 #endif // 当 常量表达式 非零时编译 #if 常量表达式 程序正文 #else 程序正文 #endif // 当 常量表达式 非零时编译 // 否则编译这段程序 45

46 条件编译 #if 常量表达式 1 程序正文 #elif 常量表达式 2 程序正文 #elif 常量表达式 3 // 当 常量表达式 1 非零时编译 // 否则, 当 常量表达式 2 非零时编译 程序正文 // 否则, 当 常量表达式 3 非零时编译 #else 程序正文 #endif // 否则编译这段程序 46

47 条件编译 #ifdef 标识符程序正文 #else 程序正文 #endif // 当 标识符 已由 #define 定义时编译 // 否则编译这段程序 #ifndef 标识符 程序正文 // 当 标识符 没有定义时编译 #else 程序正文 #endif // 否则编译这段程序 47

48 多文件结构 一个程序可以由多个文件组成, 编译时可以使用工程 / 项目来 组合 若使用命令行编译, 则需要同时编译 48

49 外部变量和外部函数 如果需要用到其它文件中定义的变量和函数, 则需要用 extern 声明其为外部变量和外部函数 extern 类型名变量名 ; extern 函数声明 ; 49

50 目录页 华东师范大学数学科学学院 School of Mathematical Sciences, ECNU Contents 4 C++ 系统函数 1 函数基础 2 数据的作用域 3 预编译与多文件结构 标准 C++ 函数 ( 库函数 ) 非标准 C++ 函数 函数举例 : 定积分近似计算 4 C++ 系统函数

51 C++ 系统函数 系统函数分类 标准 C++ 函数 ( 库函数 ): 各类头文件中定义的函数 (cmath, ctime,...) 参见 cppreference.com 非标准 C++ 函数 : 操作系统或编译环境提供的函数 NOTE C++ 的系统库中提供了几百个函数可供程序员直接使用 使用库函数时要包含相应的头文件函数, 如 cmath 充分使用库函数不仅可以大大减少编程工作量, 还可以提高代码的可靠性和执行效率 ex04_cmath.cpp 51

52 函数举例 : 定积分近似计算 例 : 计算定积分 的近似值 bb SS = ff xx ddxx = llllll xx iiff xx ii aa xx ii 00 hh = bb aa nn 0 ππ 2 sin xx dxx nn = llllll nn ii=11 hhff xx ii nn bb aa = llllll nn nn ii=11 ff xx ii srand(time(0)); for(int i=1; i<=n; i++) { x = a + length*double(rand())/rand_max; S = S + sin(x); } cout << "S=" << length/n*s << endl; ex04_integral.cpp 52

53 上机作业 1) 编写两个函数, 分别求两个正整数的最大公约数与最小公倍数, 要求用递归方 法计算最大公约数, 最小公倍数则可以通过调用最大公约数实现 在主函数中计算 2012 与 1509 的最大公约数与最小公倍数 ( 函数名分别为 gcd 和 lcm, 程序取名 hw04_01.cpp) int gcd(int x, int y) int lcm(int x, int y) 2) 编写函数, 判断一个整数是否为素数, 并在主函数中找出三位数中所有的素数, 在屏幕上输出时每行输出 8 个 ( 程序取名 hw04_02.cpp) bool is_prime(int n) 3) 编写函数, 判断给定的年份是否为闰年, 并在主函数中输出 21 世纪 (2001 至 2099 年 ) 中所有的闰年, 每行输出 5 个 ( 程序取名 hw04_03.cpp) ( 闰年 : 能被 400 整除 ; 或者能被 4 整除但不能被 100 整除 ) bool is_leap_year(int year) 53

54 上机作业 4) 编写程序, 用 while 实现猜数游戏 ( 可在示例程序 ex04_game.cpp 上修改, 程序取名 hw04_04.cpp) 5) Emirp 数 : 如果一个素数反转后仍然是素数, 则称这个素数为 emirp 数 如 13 是素数, 反转后 31 也是素数, 故 13 和 31 都是 emirp 数 编写程序, 输出前 100 个 emirp 数, 每行输出 5 个 ( 程序取名 hw04_05.cpp) 要求 : 先编写两个函数 :is_prime 和 reverse, 分别用于判断素数和计算反序数 bool is_prime(int n) int reverse(int n) 6) 梅森素数 : 如果一个素数可以写成 2 p -1 的形式, 则称该素数为梅森素数 编写程序, 找出所有 p<32 的梅森 (Mersenne) 素数, 并以如下形式输出 ( 注意优化循环次数, 程序取名 hw04_06.cpp) 思考 : 如果条件改为 p<64, 程序怎么编? 54

55 上机作业 7) 3n+1 问题 : 给定一个正整数 n, 不断按照下面的规律进行运算 : 如果当前数是偶数, 则下一个数为当前数除以 2, 如果当前数为奇数, 则下一个数为当前数乘 3 加 1 整个过程直到当前数是 1 为止 这样形成的数列的长度称为数 n 的链数 如 : 从 3 开始, 得到的数列为 :3, 10, 5, 16, 8, 4, 2, 1, 所以整数 3 的链数为 8 (a) 编写一个函数 ( 函数名 num_chain ), 计算给定的正整数的链数 ; (b) 找出 [90, 100] 中, 链数最大的那个数 ( 程序取名 hw04_07.cpp) int num_chain(int n) // 使用循环计算链数 8) 使用递归实现上面问题中的函数 num_chain ( 主程序取名 hw04_08.cpp) 9) 编写函数, 用递归方法计算 Fibonacci 数, 并在主函数中计算第 40 个 Fibonacci 数 ( 程序取名 hw04_09.cpp) long fibo(int n) 55

56 上机作业 10) 给定一个正整数, 使用递归方法找出其所有的素数因子 ( 程序取名 hw04_10.cpp ) void prime_factor(int n) 提示 : 先找出最小的素数因子, 然后除以这个数, 得到商, 再找商的最小素数因子, 以此类推, 构成递归 注意递归的出口 只要在屏幕上输出这些素数因子, 不用保存 例如,84 的所有素数因子为 2,2,3,7 56

57 上机作业 11) 蒙特卡洛 (Monte Carlo) 投点法计算定积分的近似值 选定一个简单大区域 : 要求覆盖阴影部分, 且容易计算面积 ; 往这个大区域中随机投点 ( 假 定投 N 个点 ), 统计落在阴影 部分的点的个数 ( 设为 M 个 ) 计算阴影部分面积的近似值 y 2 sin xx dxx 0 ππ 程序取名 hw04_11.cpp f( x) SS = MM NN 大区域的面积 S b = f ( x) dx a o a b x 57

主要内容 函数的定义 声明与调用 函数间的参数传递 函数嵌套与内联函数 形参带缺省值的函数与函数重载 数据的作用域 预编译处理与多文件结构 C++ 系统函数 2

主要内容 函数的定义 声明与调用 函数间的参数传递 函数嵌套与内联函数 形参带缺省值的函数与函数重载 数据的作用域 预编译处理与多文件结构 C++ 系统函数 2 第四讲 函数 主要内容 函数的定义 声明与调用 函数间的参数传递 函数嵌套与内联函数 形参带缺省值的函数与函数重载 数据的作用域 预编译处理与多文件结构 C++ 系统函数 2 函数的定义 函数是程序设计中, 对功能的抽象, 是 C++ 的基本模块 C++ 程序是由函数构成的 ( 一个或多个函数 ) C++ 程序必须有且只能有一个 main 函数 函数的定义 函数头 类型标识符函数名 ( 形式参数表

More information

Microsoft PowerPoint - 3. 函数Functionl.ppt [兼容模式]

Microsoft PowerPoint - 3. 函数Functionl.ppt [兼容模式] 函数 Function 如何重用代码 How to reuse code 3 4 = 3*3*3*3 3 4,6 5 : 拷贝 - 粘帖代码 (Copy-paste code) 3 4,6 5,12 10 : 拷贝 - 粘帖代码 (Copy-paste code) Bad! 使用函数 (with a function) 使用函数 (with a function) 使用函数 (with a function)

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

第三章 函数

第三章 函数 第三章函数 中国科大 黄章进 本章主要内容 函数的定义和调用 函数间的参数传递 内联函数 带默认形参值的函数 函数重载 C++ 系统函数 深度探索 2 函数的声明与使用 函数的定义 函数是面向对象程序设计中, 对功能的抽象 函数定义的语法形式 类型标识符函数名 ( 形式参数表 ) { 语句序列 若无返回值, 写 void 是被初始化的内部变量, 寿命和可见性仅限于函数内部 3 return 语句 函数的声明与使用函数的定义

More information

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1 1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束,

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN: 978-7-302-13599-9, 红色封面答案制作时间 :2011 年 2 月 -5 月一 思考题 1 函数总需要从 main 中调用吗? 当调用一个函数时, 为什么要使用参数? 函数不是总需要从 main 函数中调用, 使用参数的目的是为了给被调函数传递数据 2 什么是函数的返回值? 是否每个函数都有返回值?

More information

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 TEMPLATE 1 Template 描述 使用模板函数求最大值 使用如下 main 函数对程序进行测试 int main() { double a, b; cin >> a >> b; cout c >> d; cout

More information

第五讲 数组 一维数组 二维数组 数组作为函数参数

第五讲 数组 一维数组 二维数组 数组作为函数参数 第五讲 数组 一维数组 二维数组 数组作为函数参数 一维数组 2 数组 数组 : 具有一定顺序关系的若干相同类型变量的集合体 一维数组的声明 类型标识符变量名 [n] 声明一个长度为 n 的数组 ( 向量 ) 类型标识符 : 数组元素的数据类型 ; n: 数组的长度, 即元素的个数 ; 例 : int x[5] // 声明一个长度为 5 的一维数组 一维数组的引用 变量名 [k] // 注 : 下标

More information

新版 明解C++入門編

新版 明解C++入門編 511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,

More information

C++ 程序设计 笔记 * 潘建瑜 2019 年 6 月 9 日 * 本笔记仅供课堂教学使用

C++ 程序设计 笔记 * 潘建瑜 2019 年 6 月 9 日 * 本笔记仅供课堂教学使用 C++ 程序设计 笔记 * 潘建瑜 2019 年 6 月 9 日 * 本笔记仅供课堂教学使用 ii 纸上得来终觉浅, 绝知此事要躬行 学而不思则罔, 思而不学则殆 知识, 只有当它靠积极的思考得来, 而不是凭记忆得来的时候, 才是真正的知识 目录 第一讲 计算机基础 1 1.1 信息的表示与存储........................................ 1 1.1.1 计算机的数字系统...................................

More information

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式] Arrays and Strings 存储同类型的多个元素 Store multi elements of the same type 数组 (array) 存储固定数目的同类型元素 如整型数组存储的是一组整数, 字符数组存储的是一组字符 数组的大小称为数组的尺度 (dimension). 定义格式 : type arrayname[dimension]; 如声明 4 个元素的整型数组 :intarr[4];

More information

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf (%d, & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9 201 201 21 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 1 B 1 C 5 D RPG 10 E 10 F 1 G II 1 1 201 201 C 1 # include 2 int main ( void

More information

第五讲 C++程序的结构

第五讲 C++程序的结构 第五章数据的共享与保护 本章主要内容 作用域与可见性 对象的生存期 数据与函数 静态成员 共享数据的保护 友元 编译预处理命令 多文件结构和工程 深度探索 2 命名空间作用域作用域与可见性标识符的作用域 标识符在程序正文中有效的区域 函数原型作用域 局部作用域 类作用域 3 作用域与可见性函数原型的作用域 函数原型中的参数, 其作用域始于 "(", 结束于 ")" 例如, 设有下列原型声明 : double

More information

数学分析(I)短课程 [Part 2] 4mm 自然数、整数和有理数

数学分析(I)短课程 [Part 2]   4mm 自然数、整数和有理数 .. 数学分析 (I) 短课程 [Part 2] 自然数 整数和有理数 孙伟 华东师范大学数学系算子代数中心 Week 2 to 18. Fall 2014 孙伟 ( 数学系算子代数中心 ) 数学分析 (I) 短课程 Week 2 to 18. Fall 2014 1 / 78 3. 自然数理论初步 孙伟 ( 数学系算子代数中心 ) 数学分析 (I) 短课程 Week 2 to 18. Fall 2014

More information

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP:  ******************* * 关于 Java 测试试题 ****** ******************* * 关于 Java 测试试题 ******************* 問 1 运行下面的程序, 选出一个正确的运行结果 public class Sample { public static void main(string[] args) { int[] test = { 1, 2, 3, 4, 5 ; for(int i = 1 ; i System.out.print(test[i]);

More information

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式]

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式] 指针 Pointers 变量指针与指针变量 Pointer of a variable 变量与内存 (Variables and Memory) 当你声明一个变量时, 计算机将给该变量一个内存, 可以存储变量的值 当你使用变量时, 计算机将做两步操作 : - 根据变量名查找其对应的地址 ; - 通过地址对该地址的变量内容进行读 (retrieve) 或写 (set) 变量的地址称为变量的指针! C++

More information

06-statement

06-statement PHP 基本语法 条件 循环 函数杨亮 程序的基本结构 程序 输 入 运算 (+ - x / &! ) 逻辑 ( 条件 循环 递归 ) 输出 辅助 ( 变量 数组 函数 ) 小测验 用你熟悉的程序找出 1~1000 中的所有质数 我们直接看代码好了 if else elseif 1

More information

运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2

运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2 第十一讲 运算符重载 与类型转换 运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2 为什么要运算符重载 预定义的运算符只针对基本数据类型, 若要对类的对象进行类似的运算, 需要重新定义运算符的功能 运算符重载实质就是函数重载 : 对已有的运算符赋予多重含义, 使得同一个运算符作用于不同类型的数据时导致不同的行为

More information

没有幻灯片标题

没有幻灯片标题 指针作为函数参数 : 原因 : 1 需要修改一个或多个值,( 用 return 语句不能解决问题 ) 2 执行效率的角度 使用方法 : 在函数原型以及函数首部中需要声明能够接受指针值的形参, 具体的写法为 : 数据类型 * 形参名 如果有多个指针型形参, 则用逗号分隔, 例如 : void swap(int *p1, int *p2) 它说明了形参 p1 p2 是指向整型变量的指针 在函数调用时,

More information

Microsoft PowerPoint - 10 模板 Template.pptx

Microsoft PowerPoint - 10 模板 Template.pptx 模板 Tempalte 泛型编程的需要 Why Templates? 设想你对整数类型实现了一个排序算法 : void sort(int *is,int n); 用该函数可以对实 复数或工资单排序吗? 模板可以复用源代码 - 泛型编程. inline void Swap( int &x, int &y){ int t = x; x = y; y =t; inline void Swap(double

More information

试卷代号 :1075 座位号 rn 国家开放大学 ( 中央广播电视大学 )2015 年秋季学期 " 开放本科 " 期末考试 c+ 十语言程序设计试题 2016 年 1 月 t 问一 Urr-f 斗 士 1 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new

试卷代号 :1075 座位号 rn 国家开放大学 ( 中央广播电视大学 )2015 年秋季学期  开放本科  期末考试 c+ 十语言程序设计试题 2016 年 1 月 t 问一 Urr-f 斗 士 1 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new 试卷代号 :1075 座位号 rn 国家开放大学 ( 中央广播电视大学 )2015 年秋季学期 " 开放本科 " 期末考试 c+ 十语言程序设计试题 2016 年 1 月 t 问一 Urr-f 斗 士 1 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. long 2. 在每个 C 十 + 程序中都必须包含有这样一个函数, 该函数的函数名为 ) A.main

More information

试卷代号 ~1075 座位号 E 口 国家开放大学 ( 中央广播电视大学 )20]5 年秋季学期 " 开放本科 " 期末考试 C 十十语言程序设计 试题 同二二十斗 2016 年 1 月 巴叫一 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. l

试卷代号 ~1075 座位号 E 口 国家开放大学 ( 中央广播电视大学 )20]5 年秋季学期  开放本科  期末考试 C 十十语言程序设计 试题 同二二十斗 2016 年 1 月 巴叫一 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. l 试卷代号 ~1075 座位号 E 口 国家开放大学 ( 中央广播电视大学 )20]5 年秋季学期 " 开放本科 " 期末考试 C 十十语言程序设计 试题 同二二十斗 2016 年 1 月 巴叫一 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. long 2. 在每个 c++ 程序中都必须包含有这样一个函数, 该函数的函数名为 ( ) A. main

More information

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2 第 六 讲 指 针 与 字 符 串 1 内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2 指 针 什 么 是 指 针 指 针 的 定 义 与 运 算 指 针 与 一 维 数 组 指 针 数 组 行 指 针 与 二 维 数 组 指 针 与 引 用 指 针 与 函 数 3 指 针 定 义 什 么 是 指 针 指 针 变 量, 简 称 指 针, 用 来 存 放

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 CIRCLE 1 Circle 描述 编写一个圆类 Circle, 实现半径的输入 面积的计算和输出 输入 圆的半径 (double 类型 ) 输出 圆的面积 ( 保留小数点后两位 ) 样例输入 3 样例输出 28.27 提示 圆周率的取值需要比较精确, 以保证计算结果的精度 #include

More information

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf (%d, & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf (%d %d 2013 18 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp, Compilation Error cin scanf Time Limit Exceeded 1: A 5 B 5 C 5 D 5 E 5 F 5 1 2013 C 1 # include 2 int main ( void ) 3 { 4 int cases, a, b,

More information

<4D F736F F F696E74202D2043D3EFD1D4BFCEBCFE2D362DBAAFCAFD2E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D2043D3EFD1D4BFCEBCFE2D362DBAAFCAFD2E BBCE6C8DDC4A3CABD5D> 第六章函数 郎大鹏 第六章函数 6.1 高效程序的编写方法 6.2 函数的定义 6.3 函数间数据的传递方法 6.4 函数的调用 6.5 函数的嵌套调用 6.6 函数的递归调用 6.7 局部变量和全局变量 6.8 变量的存储类别 6.9 习题 第六章函数 6.1 高效程序的编写方法 6.2 函数的定义 6.3 函数间数据的传递方法 6.4 函数的调用 6.5 函数的嵌套调用 6.6 函数的递归调用

More information

幻灯片 1

幻灯片 1 第一课 C 与 C++ 互联网新技术在线教育领航者 1 内容概述 第一部分 : C++ 综述 1. C++ 历史背景 2. Why C++ 3. 推荐书籍第二部分 : C VS C++ 1. C 语法回顾 2. 例 :C 实现动态数组 3. C++ 的 vector 第三部分 :C++ 对 C 的扩展 ( 上 ) 1. 命名空间 2. 输入输出 3. 基本类型转换 4. 声明 列表初始化 5. 指针和引用

More information

<4D F736F F F696E74202D20B5DA3032BDB25FC0E0BACDB6D4CFF3312E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D20B5DA3032BDB25FC0E0BACDB6D4CFF3312E BBCE6C8DDC4A3CABD5D> 程序设计实习 (I): C++ 程序设计 第二讲类和对象 (1) 面向对象的程序设计 面向对象的程序设计方法, 能够较好解决结构化程序设计中出现的问题 面向对象的程序 = 类 + 类 + + 类 设计程序的过程, 就是设计类的过程 2 面向对象的程序设计 面向对象的程序设计方法 : 将某类客观事物共同特点 ( 属性 ) 归纳出来, 形成一个数据结 构 ( 可以用多个变量描述事物的属性 ); 将这类事物所能进行的行为也归纳出来,

More information

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p NOWOER.OM /++ 程师能 评估. 单项选择题 1. 下 描述正确的是 int *p1 = new int[10]; int *p2 = new int[10](); p1 和 p2 申请的空间 的值都是随机值 p1 和 p2 申请的空间 的值都已经初始化 p1 申请的空间 的值是随机值,p2 申请的空间 的值已经初始化 p1 申请的空间 的值已经初始化,p2 申请的空间 的值是随机值 2.

More information

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

c_cpp

c_cpp C C++ C C++ C++ (object oriented) C C++.cpp C C++ C C++ : for (int i=0;i

More information

Microsoft PowerPoint - CPP-Ch ppt [兼容模式]

Microsoft PowerPoint - CPP-Ch ppt [兼容模式] Chapter 6 Functions and an Introduction to Recursion http://jssec.seu.edu.cn 杨明 yangming2002@seu.edu.cn OBJECTIVES To construct programs modularly from functions. To use common math functions available

More information

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf("%d", &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf("%

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf(%d, &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf(% 2013 ( 28 ) ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 10 B 1 C 1 D 5 E 5 F 1 G II 5 H 30 1 2013 C 1 #include 2 int main(void) 3

More information

C/C++语言 - C/C++数据

C/C++语言 - C/C++数据 C/C++ C/C++ Table of contents 1. 2. 3. 4. char 5. 1 C = 5 (F 32). 9 F C 2 1 // fal2cel. c: Convert Fah temperature to Cel temperature 2 # include < stdio.h> 3 int main ( void ) 4 { 5 float fah, cel ;

More information

Microsoft Word - 第05章 函数

Microsoft Word - 第05章 函数 第 5 章函数 5.1 函数概述 对于一个较大的程序, 为便于实现一般应将其分为若干个程序模块, 每一个模块实现一个特定的功能 在 C 语言中, 由函数实现模块的功能 函数是 C 程序的构成基础 一个 C 程序可由一个主函数 main() 和若干个子函数构成 像 printf() scanf() 这样的函数是由系统提供的, 其他函数则由用户编写 函数的实现, 将有利于信息隐藏及数据共享, 节省开发时间,

More information

网C试题(08上).doc

网C试题(08上).doc 学习中心 姓名 学号 西安电子科技大学网络与继续教育学院 高级语言程序设计 (C) 全真试题 ( 闭卷 90 分钟 ) 题号一二三总分 题分 60 20 20 得分 一 单项选择题 ( 每小题 3 分, 共 60 分 ) 1.C 语言程序的基本单位是 A) 程序行 B) 语句 C) 函数 D) 字符 2. 下列四组选项中, 均是不合法的用户标识符的选项是 A)A B)getc C)include D)while

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 第 3 章 lambda 表达式及其应用 lambda 表达式是 Java 8 提供的一种新特性, 它使得 Java 也能像 C# 和 C++ 语言一样进行简单的 函数式编程, 这不仅简化了某些通用结构的实现方式, 也大大增强了 Java 语言的表达功能 3.1 lambda 表达式简介 lambda 表达式是基于数学中的 λ 演算得名, 本质上就是一个没有方法名的匿名方法 例如, 有一个方法定义如下

More information

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx 运算符重载 Operator Overloading class Point { public: ; double x_, y_; Why Operator Overloading? Point (double x =0, double y = 0):x_(x),y_(y) { int main(){ Point a(1., 2), b(3,4); Point c = a + b; return 0;

More information

C/C++程序设计 - 字符串与格式化输入/输出

C/C++程序设计 - 字符串与格式化输入/输出 C/C++ / Table of contents 1. 2. 3. 4. 1 i # include # include // density of human body : 1. 04 e3 kg / m ^3 # define DENSITY 1. 04 e3 int main ( void ) { float weight, volume ; int

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 在第 2 章中已经对 C 语言变量的声明 定义及初始化进行了介绍, 并简单介绍了 C 语言变量的作用域, 本章将对变量的存储方式进行详细的介绍, 不同存储方式的变量有不同的生命期, 作用域也各不相同 通过对 C 语言变量存储方式的介绍, 使更加深入的了解 C 语言变量的作用域的工作原理 本章讲述的知识点包括 : C 语言变量的生存期和作用域 ; C 语言局部变量与全局变量 ; C 语言变量的存储方式

More information

<4D F736F F F696E74202D BDE1B9B9BBAFB3CCD0F2C9E8BCC D20D1ADBBB7>

<4D F736F F F696E74202D BDE1B9B9BBAFB3CCD0F2C9E8BCC D20D1ADBBB7> 能源与动力工程学院 结构化编程 结构化程序设计 循环 循环结构 确定性循环 非确定性循环 I=1 sum=sum+i I = I +1 陈 斌 I>100 Yes No 目录 求和 :1+2+3++100 第四节循环的应用 PROGRAM GAUSS INTEGER I, SUM 计数器 SUM = 0 DO I = 1, 100, 1 SUM = SUM + I print*, I, SUM DO

More information

勤 學 * 卓 越 * 快 樂 成 長 本 校 在 老 師 群 策 群 力 共 同 討 論 下, 型 塑 了 學 校 願 景 : 勤 學 卓 越 快 樂 成 長 ( 一 ) 勤 學 運 用 真 的 力 量 培 養 勤 學, 以 語 文 教 為 基 礎 紮 根 ( 二 ) 卓 越 利 用 美 的 感

勤 學 * 卓 越 * 快 樂 成 長 本 校 在 老 師 群 策 群 力 共 同 討 論 下, 型 塑 了 學 校 願 景 : 勤 學 卓 越 快 樂 成 長 ( 一 ) 勤 學 運 用 真 的 力 量 培 養 勤 學, 以 語 文 教 為 基 礎 紮 根 ( 二 ) 卓 越 利 用 美 的 感 桃 園 市 復 旦 國 民 小 學 104 學 年 度 學 校 課 程 計 畫 壹 依 據 貳 目 的 一 教 基 本 法 第 13 條, 國 民 教 法 第 4 條 二 教 部 92 公 佈 之 國 民 中 小 學 九 年 一 貫 課 程 綱 要 三 桃 園 市 政 府 推 動 國 民 中 小 學 九 年 一 貫 課 程 實 施 計 畫 四 桃 園 市 政 府 97.5.29 府 教 數 字 第

More information

移动平台应用软件开发 C/C++/JAVA 基础 C 中的预处理指令 主讲 : 张齐勋 移动平台应用软件开发 课程建设小组北京大学二零一五年

移动平台应用软件开发 C/C++/JAVA 基础 C 中的预处理指令 主讲 : 张齐勋 移动平台应用软件开发 课程建设小组北京大学二零一五年 移动平台应用软件开发 C/C++/JAVA 基础 C 中的预处理指令 主讲 : 张齐勋 zhangqx@ss.pku.edu.cn 移动平台应用软件开发 课程建设小组北京大学二零一五年 预处理 2 预处理器 C 语言的编译系统分为编译预处理和正式编译 预处理作用 : 对源程序编译之前做一些处理, 生成扩展 C 源程序 预处理器的行为是由预处理指令控制的 宏定义 文件包含 条件编译 #define #ifdef

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d

More information

第3章.doc

第3章.doc 3 3 3 3.1 3 IT Trend C++ Java SAP Advantech ERPCRM C++ C++ Synopsys C++ NEC C C++PHP C++Java C++Java VIA C++ 3COM C++ SPSS C++ Sybase C++LinuxUNIX Motorola C++ IBM C++Java Oracle Java HP C++ C++ Yahoo

More information

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3 浙江大学 C 程序设计及实验 试题卷 2002-2003 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:30-10:30 注意 : 答题内容必须写在答题卷上, 写在本试题卷上无效 一. 单项选择题 ( 每题 1 分, 共 10 分 ) 1. 下列运算符中, 优先级最低的是 A.

More information

WHUST 2017 Div.2 Day 3.5 C++ 标准模版库

WHUST 2017 Div.2 Day 3.5  C++ 标准模版库 标准模版库 标准模版库 集训队郭松 集训队郭松 标准模版库 标准模版库 纲 介绍算法竞赛中, 需要 到的 知识命名空间代码框架实参 类型模版函数简介 模版类简介 集训队郭松 标准模版库 标准模版库介绍算法竞赛中, 需要 到的 知识算法竞赛中, 需要 到的 知识标准命名空间 std 集训队郭松 标准模版库 标准模版库介绍算法竞赛中, 需要 到的 知识算法竞赛中, 需要 到的 知识标准命名空间 std

More information

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc C 语言开发入门 课程教学大纲 ( 课程英文名称 ) 课程编号 :201409210011 学分 :5 学分学时 :60 学时 ( 其中 : 讲课学时 :37 学时上机学时 :23 学时 ) 先修课程 : 计算机导论后续课程 :C++ 程序设计适用专业 : 信息及其计算机相关专业开课部门 : 计算机系 一 课程的性质与目标 C 语言开发入门 是计算机各专业必修的基础课程, 是数据结构 C++ Java

More information

Guava学习之Resources

Guava学习之Resources Resources 提供提供操作 classpath 路径下所有资源的方法 除非另有说明, 否则类中所有方法的参数都不能为 null 虽然有些方法的参数是 URL 类型的, 但是这些方法实现通常不是以 HTTP 完成的 ; 同时这些资源也非 classpath 路径下的 下面两个函数都是根据资源的名称得到其绝对路径, 从函数里面可以看出,Resources 类中的 getresource 函数都是基于

More information

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 PERSON 1 Person 题目描述 编写程序, 定义一个基类 Person, 包含 name 和 age 两个数据成员 ; 再由它派生出学生类 Student 和教师类 Teacher, 其中学生类添加学号 no 数据, 教师类添加职称 title 数据 ; 要求每个类均有构造函数 析构函数和显示数据的函数

More information

C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1

C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1 C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1 1 CRECT 类 1 CRect 类 设计矩形类, 包含 长度和宽度信息 基本构造函数 基础属性的访问接口 ( 读 / 写, Read/Write, Get/Set) 计算周长和面积 ( 注 : 基本构造函数, 一个无参数的默认构造函数, 以及一个初始化数据成员的构造函数如果数据成员的初始化有多种形式, 就提供多个构造函数

More information

02

02 Thinking in C++: Volume One: Introduction to Standard C++, Second Edition & Volume Two: Practical Programming C++ C C++ C++ 3 3 C C class C++ C++ C++ C++ string vector 2.1 interpreter compiler 2.1.1 BASIC

More information

C++ 程序设计 实验 1 - 参考答案 MASTER 2017 年 5 月 21 日 1

C++ 程序设计 实验 1 - 参考答案 MASTER 2017 年 5 月 21 日 1 C++ 程序设计 实验 1 - 参考答案 MASTER 2017 年 5 月 21 日 1 1 简单图形 1 简单图形 输入图形的行数 ( 如下图 7 行 ), 输出如下图所示图形 * *** ***** ******* ***** *** * 2 1 简单图形 1 #inc lude 2 using namespace std ; 3 4 // 注意变量命名的方式 5 //

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 7.5 函数的嵌套调用 C 语言的函数定义是互相平行 独立的 即函数不能嵌套定义 但可以嵌套调用函数 即调用一个函数的过程中, 又可以调用另一个函数 7.5 函数的嵌套调用 main 函数 1 调用 a 函数 2 a 函数 3 调用 b 函数 4 b 函数 5 9 8 7 6 结束 7.5 函数的嵌套调用 例 7.5 输入 4 个整数, 找出其中最大的数 用函数的嵌套调用来处理 解题思路 : main

More information

9.2 构造函数和析构函数 类的组合 结构体与联合体 类的 UML 描述 第十讲 类与对象 (II) 面向对象进阶 对象的生存期 静态成员 友元关系

9.2 构造函数和析构函数 类的组合 结构体与联合体 类的 UML 描述 第十讲 类与对象 (II) 面向对象进阶 对象的生存期 静态成员 友元关系 C++ 笔记 ( 草稿 ) 潘建瑜 (jypan@math.ecnu.edu.cn) 第二讲 C++ 编程基础... 1 2.1 C++ 语言概述... 1 2.2 C++ 编程基础... 2 2.3 C++ 简单输入输出... 4 第三讲 选择与循环... 5 3.1 关系运算与逻辑运算... 5 3.2 选择结构... 5 3.3 循环结构... 6 第四讲 函数... 8 4.1 函数的声明

More information

Microsoft PowerPoint - 01_Introduction.ppt

Microsoft PowerPoint - 01_Introduction.ppt Hello, World C 程序设计语言 第 1 章章观其大略 孙志岗 sun@hit.edu.cn http://sunner.cn prf("hello,, world\n"); 超级无敌考考你 : 如何把 hello 和 world 分别打印在两行? 2004-12-19 A Tutorial Introduction 2 hello.c 打印华氏温度与摄氏温度对照表 计算公式 : C=(5/9)(

More information

C++ 程序设计 OJ9 - 参考答案 MASTER 2019 年 6 月 7 日 1

C++ 程序设计 OJ9 - 参考答案 MASTER 2019 年 6 月 7 日 1 C++ 程序设计 OJ9 - 参考答案 MASTER 2019 年 6 月 7 日 1 1 CARDGAME 1 CardGame 题目描述 桌上有一叠牌, 从第一张牌 ( 即位于顶面的牌 ) 开始从上往下依次编号为 1~n 当至少还剩两张牌时进行以下操作 : 把第一张牌扔掉, 然后把新的第一张放到整叠牌的最后 请模拟这个过程, 依次输出每次扔掉的牌以及最后剩下的牌的编号 输入 输入正整数 n(n

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 第二讲 C++ 编程基础 主要内容 C++ 语言概述 C++ 的发展 C++ 源程序结构与书写规范 C++ 编译器和集成开发环境 C++ 编程基础 数据的简单输入输出 2 C++ 语言概述 C++ 的发展 - C++ 是从 C 语言发展演变而来, 可以看成是 C 的超集 - 1980 年由 Bjarne Stroustrup 开发创建 - 1983 年正式取名为 C++,1989 年开始 C++ 的标准化工作

More information

谈谈数学素质的培养

谈谈数学素质的培养 谈 谈 数 学 素 质 的 培 养 -- 院 士 八 闽 行 福 州 一 中 演 讲 陈 木 法 ( 北 京 师 范 大 学 ) 2004 年 10 月 19 日 主 持 人 ( 李 校 长 ): 陈 木 法 院 士 长 期 从 事 数 学 的 教 育 和 研 究 工 作, 是 中 科 院 院 士 博 士 生 导 师 在 数 学 领 域 有 非 常 深 的 造 诣 希 望 大 家 今 天 能 从 陈

More information

Chapter12 Derived Classes

Chapter12   Derived Classes 继 承 -- 派 生 类 复 习 1. 有 下 面 类 的 说 明, 有 错 误 的 语 句 是 : class X { A) const int a; B) X(); C) X(int val) {a=2 D) ~X(); 答 案 :C 不 正 确, 应 改 成 X(int val) : a(2) { 2. 下 列 静 态 数 据 成 员 的 特 性 中, 错 误 的 是 A) 说 明 静 态 数

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 第 1 章程序设计和 C 语言 1.1 什么是计算机程序 1.2 什么是计算机语言 1.3 C 语言的发展及其特点 1.4 最简单的 C 语言程序 1.5 运行 C 程序的步骤与方法 1.6 程序设计的任务 1.1 什么是计算机程序 程序 : 一组计算机能识别和执行的指令 只要让计算机执行这个程序, 计算机就会自动地 有条不紊地进行工作 计算机的一切操作都是由程序控制的, 离开程序, 计算机将一事无成

More information

(Microsoft Word - 136\260g\270\364\252\272\267s\256Q.doc)

(Microsoft Word - 136\260g\270\364\252\272\267s\256Q.doc) 日 本 短 篇 推 理 小 說 136 迷 路 的 新 娘 赤 川 次 郎 著 序 曲 啊 頭 好 痛 啊! 太 柔 軟 的 枕 頭 在 頭 痛 時 刻, 反 而 產 生 了 反 效 果 按 了 太 陽 穴 好 幾 次, 又 緊 閉 著 眼 晴 再 張 開 重 複 地 做 了 這 些 動 作 之 後, 終 於 稍 微 減 輕 了 頭 痛 在 這 種 情 況 之 下 醒 來, 已 經 不 是 第 一

More information

酒 神 (长篇小说)

酒  神  (长篇小说) 酒 神 ( 长 篇 小 说 ) 作 家 : 莫 言 第 一 章 一 省 人 民 检 察 院 的 特 级 侦 察 员 丁 钩 儿 搭 乘 一 辆 拉 煤 的 解 放 牌 卡 车 到 市 郊 的 罗 山 煤 矿 进 行 一 项 特 别 调 查 沿 途, 由 于 激 烈 思 索, 脑 袋 膨 胀, 那 顶 本 来 晃 晃 荡 荡 的 五 十 八 号 咖 啡 色 鸭 舌 帽 竟 紧 紧 地 箍 住 了 头

More information

避孕篇

避孕篇 避 孕 篇 生 育 后 时 期 的 避 孕 方 法 : 适 用 的 方 法 : 1) 宫 内 节 育 器 类 : 金 属 环 可 放 置 15 年 左 右 ;V 型 环 可 放 置 5-7 年 ;T 型 环 可 放 置 10-15 年 2) 避 孕 药 ( 针 ) 类 : 各 种 短 效 口 服 避 孕 药, 如 妈 富 隆 敏 定 偶 三 相 片 及 达 英 -35 等, 按 规 定 方 法 服

More information

Microsoft Word - C++CodeRule94.doc

Microsoft Word - C++CodeRule94.doc C++ 程序编制标准 标准如下 : 一 概述制定本编程格式的目的是为了使软件可读性好 兼容性好 易维护等等 二 程序的构成 C++ 程序的主要特点即为对象 (object) 的概念和数据封装性 (encaptulation) 所以, C++ 程序的主要内容包括 : 1 类 ( 包括基类子类等, 结构看作特殊的类 ) 的定义, 也就是类的描述说明 2 对象类的成员函数的定义, 即类的实现 所有的类都既有属性定义,

More information

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023) ( CIP) /. :, 2005. 2 ( ) ISBN 7-5624-3339-9.......... TP311. 1 CIP ( 2005) 011794 : : : : * : : 174 ( A ) :400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / /www. cqup. com. cn : fxk@cqup.

More information

untitled

untitled 1 Outline 類别 欄 (1) 類 類 狀 更 易 類 理 若 類 利 來 利 using 來 namespace 類 ; (2) namespace IBM class Notebook namespace Compaq class Notebook 類别 類 來 類 列 欄 (field) (property) (method) (event) 類 例 立 來 車 類 類 立 車 欄 料

More information

C++ 程序设计 实验 3 - 参考答案 MASTER 2017 年 5 月 21 日 1

C++ 程序设计 实验 3 - 参考答案 MASTER 2017 年 5 月 21 日 1 C++ 程序设计 实验 3 - 参考答案 MASTER 2017 年 5 月 21 日 1 1 圆 1 圆 设计圆类 包含 包含基本属性和基本属性访问接口 计算面积和周长接口 2 1 圆 1 #include 2 using namespace std ; 3 c l a s s CCircle 4 { 5 p r i v a t e : 6 double r ; 7 const

More information

OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点

OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public

More information

_汪_文前新ok[3.1].doc

_汪_文前新ok[3.1].doc 普 通 高 校 本 科 计 算 机 专 业 特 色 教 材 精 选 四 川 大 学 计 算 机 学 院 国 家 示 范 性 软 件 学 院 精 品 课 程 基 金 青 年 基 金 资 助 项 目 C 语 言 程 序 设 计 (C99 版 ) 陈 良 银 游 洪 跃 李 旭 伟 主 编 李 志 蜀 唐 宁 九 李 涛 主 审 清 华 大 学 出 版 社 北 京 i 内 容 简 介 本 教 材 面 向

More information

《C语言程序设计》第2版教材习题参考答案

《C语言程序设计》第2版教材习题参考答案 教材 C 语言程序设计 ( 第 2 版 ) 清华大学出版社, 黄保和, 江弋编著 2011 年 10 月第二版 ISBN:978-7-302-26972-4 售价 :35 元 答案版本 本习题答案为 2012 年 2 月修订版本 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p = &a A. *p = *a B. p = *a C.p = &a D. *p =

More information

重 要 声 明 长 城 证 券 股 份 有 限 公 司 编 制 本 报 告 的 内 容 及 信 息 来 源 于 陕 西 东 岭 工 贸 集 团 股 份 有 限 公 司 提 供 的 证 明 文 件 以 及 第 三 方 中 介 机 构 出 具 的 专 业 意 见 长 城 证 券 对 报 告 中 所 包

重 要 声 明 长 城 证 券 股 份 有 限 公 司 编 制 本 报 告 的 内 容 及 信 息 来 源 于 陕 西 东 岭 工 贸 集 团 股 份 有 限 公 司 提 供 的 证 明 文 件 以 及 第 三 方 中 介 机 构 出 具 的 专 业 意 见 长 城 证 券 对 报 告 中 所 包 2015 年 陕 西 东 岭 工 贸 集 团 股 份 有 限 公 司 ( 宝 鸡 市 马 营 路 东 段 ) 公 司 债 券 受 托 管 理 事 务 报 告 (2015 年 度 ) 债 券 代 理 人 长 城 证 券 股 份 有 限 公 司 ( 深 圳 市 福 田 区 深 南 大 道 6008 号 特 区 报 业 大 厦 16-17 层 ) 2016 年 4 月 12 日 1 重 要 声 明 长 城

More information

Microsoft PowerPoint - string_kruse [兼容模式]

Microsoft PowerPoint - string_kruse [兼容模式] Strings Strings in C not encapsulated Every C-string has type char *. Hence, a C-string references an address in memory, the first of a contiguous set of bytes that store the characters making up the string.

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN:978-7-302-13599-9, 红色封面 答案制作时间 :2011 年 2 月 -5 月 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p=&a 2. 设已定义 int x,*p=&x;, 则下列表达式中错误的是 :B)&*x 3. 若已定义 int a=1,*b=&a;,

More information

(Microsoft Word - 4\244\353.doc)

(Microsoft Word - 4\244\353.doc) 20092009-2010 年度第三 年度第三期 地址 地址 九龍新蒲崗崇齡街 33 號新蒲崗廣場地下 A23A23-A26 網址 網址 http://spk.wd.rhenish.org 電話 電話 23261336 目 錄 ( 一 ) 最 新 消 息 P.3 ( 二 ) 老 師 心 聲 訪 問 何 老 師 P.4 ( 三 ) 專 題 文 章 趣 怪 的 科 學 P.5-8 ( 四 ) 小 食 嘗

More information

新・解きながら学ぶC言語

新・解きながら学ぶC言語 330!... 67!=... 42 "... 215 " "... 6, 77, 222 #define... 114, 194 #include... 145 %... 21 %... 21 %%... 21 %f... 26 %ld... 162 %lf... 26 %lu... 162 %o... 180 %p... 248 %s... 223, 224 %u... 162 %x... 180

More information

untitled

untitled A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (

More information

Microsoft PowerPoint - 0 C复习.ppt [兼容模式]

Microsoft PowerPoint - 0 C复习.ppt [兼容模式] C 复习 董洪伟 http://hwdong.com 1 程序 : 数据 + 处理 ( 运算 ) 数据 : 变量和常量 int i = 3; 初始化式 变量需要定义 : 类型变量名 ; 类型变量名 = 变量或常量 ; doule pi, r=3.45,area; char var= A ; 类型变量 1, 变量 2, 变量 3; 同时定义多个变量, 逗号隔开 2 运算 : 用运算符对数据进行处理 y

More information

求出所有的正整数 n 使得 20n + 2 能整除 2003n n 20n n n 20n n 求所有的正整数对 (x, y), 满足 x y = y x y (x, y) x y = y x y. (x, y) x y =

求出所有的正整数 n 使得 20n + 2 能整除 2003n n 20n n n 20n n 求所有的正整数对 (x, y), 满足 x y = y x y (x, y) x y = y x y. (x, y) x y = 求出所有的正整数 n 使得 20n + 2 能整除 2003n + 2002 n 20n + 2 2003n + 2002 n 20n + 2 2003n + 2002 求所有的正整数对 (x, y), 满足 x y = y x y (x, y) x y = y x y. (x, y) x y = y x y 对于任意正整数 n, 记 n 的所有正约数组成的集合为 S n 证明 : S n 中至多有一半元素的个位数为

More information

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ

download.kaoyan.com_2006ÄêÌì½ò¹¤Òµ´óѧ¸ß¼¶ÓïÑÔ³ÌÐòÉè¼Æ£¨409£©¿¼ÑÐÊÔÌâ 考生注意 : 本试卷共七大题, 满分 150 分 考试时间为 3 小时 ; 所有答案均写在答题纸上 ( 注明题号 ), 在此答题一律无效无效 一 选择题 ( 本题共 20 小题, 每小题 2 分, 满分 40 分 ) 1 char ch 1 2 A 0

More information

提纲 1 联编与多态性 2 用虚函数实现多态 3 虚函数的工作原理 4 纯虚函数与抽象类 5 总结与思考 Dongke Sun (Southeast University) C++ Programming and Algorithms April 12, / 36

提纲 1 联编与多态性 2 用虚函数实现多态 3 虚函数的工作原理 4 纯虚函数与抽象类 5 总结与思考 Dongke Sun (Southeast University) C++ Programming and Algorithms April 12, / 36 程序设计与算法语言 虚函数 C/C++ Programming and Algorithms Virtual Function Dongke Sun ( 孙东科 ) dksun@seu.edu.cn 东南大学机械工程学院 School of Mechanical Engineering Southeast University April 12, 2018 提纲 1 联编与多态性 2 用虚函数实现多态

More information

新版 明解C言語入門編

新版 明解C言語入門編 328, 4, 110, 189, 103, 11... 318. 274 6 ; 10 ; 5? 48 & & 228! 61!= 42 ^= 66 _ 82 /= 66 /* 3 / 19 ~ 164 OR 53 OR 164 = 66 ( ) 115 ( ) 31 ^ OR 164 [] 89, 241 [] 324 + + 4, 19, 241 + + 22 ++ 67 ++ 73 += 66

More information

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票 复习 创建对象 构造函数 函数重载 : 函数 = 函数名 + 参数列表 public class MyType { int i; double d; char c; void set(double x)

More information

北京大学

北京大学 1 string 类 郭炜刘家瑛 北京大学程序设计实习 string 类 string 类是一个模板类, 它的定义如下 : typedef basic_string string; 使用 string 类要包含头文件 string 对象的初始化 : string s1("hello"); // 一个参数的构造函数 string s2(8, x ); // 两个参数的构造函数

More information

新・明解C言語入門編『索引』

新・明解C言語入門編『索引』 !... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177

More information

C/C++语言 - 运算符、表达式和语句

C/C++语言 - 运算符、表达式和语句 C/C++ Table of contents 1. 2. 3. 4. C C++ 5. 6. 7. 1 i // shoe1.c: # include # define ADJUST 7. 64 # define SCALE 0. 325 int main ( void ) { double shoe, foot ; shoe = 9. 0; foot = SCALE * shoe

More information

Microsoft PowerPoint - 概率统计Ch02.ppt [Compatibility Mode]

Microsoft PowerPoint - 概率统计Ch02.ppt [Compatibility Mode] 66 随机变量的函数.5 随机变量的函数的分布 设 是一随机变量, 是 的函数, g(, 则 也是一个随机变量. 本节的任务 : 当 取值 x 时, 取值 y g 67 ( 一 离散型随机变量的函数 设 是离散型随机变量, 其分布律为 或 P { x } p (,, x x, P p p, x p 已知随机变量 的分布, 并且已知 g 要求随机变量 的分布. (, 是 的函数 : g(, 则 也是离散型随机变

More information

並 責 成 各 里 幹 事 下 里 服 勤 宣 導 病 媒 防 治 知 識, 協 助 各 家 戶 清 除 病 媒 孳 生 源 ( 積 水 容 器 ), 降 低 棲 群 密 度, 預 防 傳 染 病 之 發 生, 以 確 保 民 眾 身 體 健 康 及 居 家 生 活 品 質 訂 定 每 月 最 後

並 責 成 各 里 幹 事 下 里 服 勤 宣 導 病 媒 防 治 知 識, 協 助 各 家 戶 清 除 病 媒 孳 生 源 ( 積 水 容 器 ), 降 低 棲 群 密 度, 預 防 傳 染 病 之 發 生, 以 確 保 民 眾 身 體 健 康 及 居 家 生 活 品 質 訂 定 每 月 最 後 541 94.4.6 臺 北 市 文 山 區 都 市 計 畫 案 通 盤 檢 討 主 要 計 畫 暨 細 部 計 畫 案 542 94.5.5 都 市 計 畫 道 路 用 地 變 更 為 可 發 展 用 地 免 予 回 饋 原 則 附 件 三 溫 泉 產 業 特 定 專 用 區 都 市 計 畫 案 召 集 人 本 案 案 情 複 雜, 且 為 求 審 議 效 益, 委 請 陳 委 員 武 正 擔 任

More information

《计算概论》课程 第十九讲 C 程序设计语言应用

《计算概论》课程 第十九讲  C 程序设计语言应用 计算概论 A 程序设计部分 字符数组与字符串 李戈 北京大学信息科学技术学院软件研究所 lige@sei.pku.edu.cn 字符数组的定义 #include int main() char a[10] = 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' ; for (int i = 0; i < 10; i++) cout

More information

ch02_Basic

ch02_Basic 主要内容 C++ 语言概述 C++ 的发展 C++ 源程序结构与书写规范 C++ 编译器和集成开发环境 C++ 编程基础 数据的简单输入输出 2 C++ 语言概述 C++ 语言概述 C++ 的发展 - C++ 是从 C 语言发展演变而来, 可以看成是 C 的超集 - 1980 年由 Bjarne Stroustrup 开发创建 - 1983 年正式取名为 C++,1989 年开始 C++ 的标准化工作

More information

}; "P2VTKNvTAnYNwBrqXbgxRSFQs6FTEhNJ", " " string imagedata; if(0!= read_image("a.jpg",imagedata)) { return -1; } string rsp; ytopen_sdk m_sd

}; P2VTKNvTAnYNwBrqXbgxRSFQs6FTEhNJ,   string imagedata; if(0!= read_image(a.jpg,imagedata)) { return -1; } string rsp; ytopen_sdk m_sd tencentyun-youtu c++ sdk for 腾讯云智能优图服务 & 腾讯优图开放平台 安装 运行环境 Linux 依赖项 - curl-7.40.0, 获取更新版本 https://github.com/bagder/curl - openssl-1.0.1k, 获取更新版本 https://github.com/openssl/openssl 构建工程 工程采用 CMake 构建 1.

More information

C/C++ - 函数

C/C++ - 函数 C/C++ Table of contents 1. 2. 3. & 4. 5. 1 2 3 # include # define SIZE 50 int main ( void ) { float list [ SIZE ]; readlist (list, SIZE ); sort (list, SIZE ); average (list, SIZE ); bargragh

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

试卷代号 :1253 座位号 E 口 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期 " 开放本科 " 期末考试 C 语言程序设计 A 试题 2015 年 1 月 E 四! 五 总分! 一 单选题 ( 每小题 2 分, 共 20 分 ) 1. 由 C 语言源程序文件编译而成的目标文件的默

试卷代号 :1253 座位号 E 口 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期  开放本科  期末考试 C 语言程序设计 A 试题 2015 年 1 月 E 四! 五 总分! 一 单选题 ( 每小题 2 分, 共 20 分 ) 1. 由 C 语言源程序文件编译而成的目标文件的默 试卷代号 :1253 座位号 E 口 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期 " 开放本科 " 期末考试 C 语言程序设计 A 试题 2015 年 1 月 E 四! 五 总分! 一 单选题 ( 每小题 2 分, 共 20 分 ) 1. 由 C 语言源程序文件编译而成的目标文件的默认扩展名为 ( ) A. cpp B. c C. exe D. obj 2. 设 x 和 y 均为逻辑值,

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 第六讲 指针与字符串 为什么指针 持久动态内存分配 字符串 ( 字符数组 ) 指针 什么是指针 指针的定义与运算 指针与一维 ( 二维 ) 数组 指针数组 指针与引用 指针与函数 2 指针定义 什么是指针 指针变量, 简称指针, 用来存放其它变量的内存地址 指针的定义 类型标识符 * 指针变量名 声明一个指针类型的变量, 星号后面可以留空格 类型标识符表示该指针所指向的对象的数据类型, 即该指针所代表的内存单元所能存放的数据的类型

More information

Microsoft Word - 第3章.doc

Microsoft Word - 第3章.doc 第 3 章流程控制和数组 3.1 实验目的 (1) 熟练掌握控制台应用程序的代码编写和调试, 以及运行方法 (2) 掌握选择结构的一般语法格式和应用 (3) 掌握 switch 语句的用法 (4) 掌握选择结构的嵌套的用法, 能灵活使用选择结构解决实际问题 (5) 掌握 while 循环语句的一般语法格式 (6) 掌握 for 循环语句的一般语法格式 (7) 掌握循环嵌套的语法格式 (8) 掌握一维数组的定义

More information

迅速在两个含有大量数据的文件中寻找相同的数据

迅速在两个含有大量数据的文件中寻找相同的数据 迅速在两个含有大量数据的文件中寻找相同的数据 求解问题如下 : 在本地磁盘里面有 file1 和 file2 两个文件, 每一个文件包含 500 万条随机整数 ( 可以重复 ), 最大不超过 2147483648 也就是一个 int 表示范围 要求写程序将两个文件中都含有的整数输出到一个新文件中 要求 : 1. 程序的运行时间不超过 5 秒钟 2. 没有内存泄漏 3. 代码规范, 能要考虑到出错情况

More information