赞
踩
大一时写的,很菜
目录
- 掌握函数的定义和调用方法。
- 练习重载函数的使用。
- 练习函数模板的使用。
- 练习使用系统函数。
- 学习使用VC++的debug调试功能,使用step into追踪到函数内部。
- 编写一个函数把华氏温度转换为摄氏温度,转换公式为:C = (F - 32) * 5/9。
- 用递归的方法编写函数求Fibonacci 级数,观察递归调用的过程。
- 使用系统函数pow(x,y)计算xy的值,注意包含头文件math.h。
- 使用重载函数模板重新实现上小题中的函数Max1。
- 编写重载函数Max1可分别求取两个整数,三个整数,两个双精度数,三个双精度数的最大值。
- //实验2.1 编写一个函数把华氏温度转换为摄氏温度,转换公式为:C = (F - 32) * 5/9。
- #include<iostream>
- using namespace std;
- double fc(double F) {
- double C;
- C = (F - 32.0) * 5.0/ 9.0;//注意double类型要加.0,本题中不加也可以得到正确结果(因为F是double类型的)
- return C;
- }
- int main() {
- double f;
- cout << "请输入华氏温度" << endl;
- cin >> f;
- cout << "摄氏度为:" << fc(f) << endl;
- return 0;
- }
- //实验2.2 编写重载函数Max1可分别求取两个整数,三个整数,两个双精度数,三个双精度数的最大值。
- #include<iostream>
- using namespace std;
- int Max1(int a, int b) {
- cout << "调用两个整数比较大小的Max1" << endl;
- return max(a, b);
- }
- int Max1(int a, int b, int c) {
- cout << "调用三个整数比较大小的Max1" << endl;
- return max(max(a, b), c);
- }
- double Max1(double a, double b) {
- cout << "调用两个双精度数比较大小的Max1" << endl;
- return max(a, b);
- }
- double Max1(double a, double b, double c) {
- cout << "调用三个双精度数比较大小的Max1" << endl;
- return max(max(a, b), c);
- }
- int main() {
- cout << Max1(1, 2) << endl;
- cout << Max1(1, 2, 3) << endl;
- cout << Max1(1.0, 2.0) << endl;
- cout << Max1(1.0, 2.0, 3.0) << endl;
- return 0;
- }
- //只有将函数表达式输出才能调用函数内的返回值
- //Max1.h
- #pragma once//#pragma once有什么作用?为什么加不加都可以实现?
-
- #include<iostream>
- using namespace std;
- int Max1(int a, int b) {
- cout << "调用两个整数比较大小的Max1" << endl;
- return max(a, b);
- }
- int Max1(int a, int b, int c) {
- cout << "调用三个整数比较大小的Max1" << endl;
- return max(max(a, b), c);
- }
- double Max1(double a, double b) {
- cout << "调用两个双精度数比较大小的Max1" << endl;
- return max(a, b);
- }
- double Max1(double a, double b, double c) {
- cout << "调用三个双精度数比较大小的Max1" << endl;
- return max(max(a, b), c);
- }
- //实验2.3 使用重载函数模板重新实现实验2.2中的函数Max1。
- #include<iostream>
- #include"Max1.h"
- using namespace std;
- int main() {
- cout << Max1(1, 2) << endl;
- cout << Max1(1, 2, 3) << endl;
- cout << Max1(1.0, 2.0) << endl;
- cout << Max1(1.0, 2.0, 3.0) << endl;
- return 0;
- }
- //实验2.4 使用系统函数pow(x,y)计算x^y的值,注意包含头文件math.h。
- /*pow函数的作用是求幂。
- 数学公式:计算x的y次幂;
- 返回值:x不能为负数且y为小数,或者x为0且y小于等于0,返回幂指数的结果;
- 返回类型:double型。*/
- #include<iostream>
- #include<math.h>//cmath与math.h有何区别?
- using namespace std;
- int main() {
- double x, y;//注意参数类型应与返回值一致
- cout << "输入底数x和指数y" << endl;
- cin >> x >> y;
- cout << "x^y=" << pow(x, y) << endl;
- return 0;//听说csp认证不写return 0会记0分?
- }
- //实验2.5 用递归的方法编写函数求Fibonacci 级数,观察递归调用的过程。
- //#include<iostream>
- //using namespace std;
- //int f(int n) {
- // if (n == 1)
- // f(n) = 1;
- // else if (n == 2)
- // f(n) = 1;
- // else
- // f(n) = f(n - 1) + f(n - 2);
- // return f(n);
- //}
- //int main() {
- // int n;
- // cout << "请输入一个大于等于1的整数" << endl;
- // cin >> n;
- // cout << "f(n)=" << f(n) << endl;
- // return 0;
- //}//会报错
- #include<iostream>
- using namespace std;
- int f(int n) {
- int F;
- if (n == 1)
- F = 1;
- else if (n == 2)
- F = 1;
- else
- F = f(n - 1) + f(n - 2);
- return F;
- }
- int main() {
- int n;
- cout << "请输入一个大于等于1的整数" << endl;
- cin >> n;
- cout << "F=" << f(n) << endl;
- return 0;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。