c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料

上传人:f****u 文档编号:113625819 上传时间:2019-11-09 格式:PDF 页数:11 大小:126.71KB
返回 下载 相关 举报
c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料_第1页
第1页 / 共11页
c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料_第2页
第2页 / 共11页
c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料_第3页
第3页 / 共11页
c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料_第4页
第4页 / 共11页
c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料》由会员分享,可在线阅读,更多相关《c++程序设计实验辅导及习题解答-实验81、3、7和实验9资料(11页珍藏版)》请在金锄头文库上搜索。

1、实实 验验 八八 任务任务 1 1:程序调试。指针作为函数参数。:程序调试。指针作为函数参数。 (1) 设计一个函数 swap, 函数的参数为指针, 函数的功能是交换 main 函数中的 a,b 值。 思考:如果上上述 swap 函数设计为: voidvoid swap(intswap(int *p1,int*p1,int *p2)*p2) intint p;p; p=p1;p=p1; p1=p2;p1=p2; p2=p1;p2=p1; 程序运行会有什么样的结果?为什么? 答:只是利用指针交换了双方的地址,但内容没有变化,所以输出结 果并未改变。 如果上述 swap 函数设计为: voidvo

2、id swap(intswap(int *p1,int*p1,int *p2)*p2) intint p;p; p=*p1;p=*p1; *p1=*p2;*p1=*p2; *p2=p;*p2=p; 程序运行会有什么样的结果?为什么? (2)用引用的方法交换 main 函数中 a、b 的值,请重新设计函数。 程序设计如下:程序设计如下: #include “stdafx.h“ #include using namespace std; void swap(int p=p1; p1=p2; p2=p; int _tmain(int argc, _TCHAR* argv) int a,b; cina

3、b; swap(a,b); coutpt; coutx; del_char(pt,x); coutxname; person *p=new person(x,name); p-print(); delete p; return 0; 实实 验验 九九 任务任务 1 1:程序调试。指针作为函数的参数。:程序调试。指针作为函数的参数。 程序如下:程序如下: #include “stdafx.h“ #include using namespace std; #define K 16 void ByeToBit(bool *Out,const char *In,int bits) for(int i=

4、0;i(i%8) int _tmain(int argc, _TCHAR* argv) bool aK; char bK/8+1=“ab“; int i; ByeToBit(a,b,K); for(i=0;iy?x:y; int min(int x,int y) return xab; couta) if(a0) p=f1; else if(a5) p=f2; else p=f3; cout“result=“p(a)endl; 运行结果如下:运行结果如下: 任务任务 4 4:程序设计。函数指针的应用。:程序设计。函数指针的应用。 程序类似一个自动试题命题系统,分成三类题。第一类是数学运算 题,

5、在“+” 、 “-” 、 “*” 、 “/”中任选一题。第二类是字符运算题,在 字符串复制、连接、比较中任选一题。第三类为简单题,在五道简答 题中任选一道。 程序为:程序为: #include using namespace std; #include #include int a(int x,int y) return x+y; int b(int x,int y) return x-y; int c(int x,int y) return x*y; int d(int x,int y) return x/y; void main() char ch; int(*p4)(int,int)=a

6、,b,c,d,i,x,y,z; int k=12; srand(int)time(0); while(k) for(i=0;i100;i+) x=(int)(100.0*rand()/(RAND_MAX+1.0)%10; y=(int)(100.0*rand()/(RAND_MAX+1.0)%10; z=(int)(100.0*rand()/(RAND_MAX+1.0)%4; switch(z) case 0:ch=+;break; case 1:ch=-;break; case 2:ch=*;break; case 3:ch=/;break; i=(*pz)(x,y); coutxchy=i

7、endl; k-; 任务任务 5 5:程序设计。命令行参数的应用。:程序设计。命令行参数的应用。 用程序实现文件的加密和解密。约定:程序取名为 lock.c,程序 的可执行文件名为 lock.exe, 其用法为: lock+|-, 其中+为加密,-为解密。 设计代码运行如下:设计代码运行如下: #include using namespace std; int main (int argc,char*argv) char c; if(argc!=3)cout“参数个数不对!n“; else c=*argv1; switch(c) case +: cout“执行加密程序段“endl; break; case -: cout“执行解密程序段“endl; break; default:cout“第二个参数错误!“endl; return 0; 运行结果如下:运行结果如下:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号