C++上机实验报告(指针)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C++上机实验报告

实验名称:指针

专业班级:

姓名:

学号:

实验日期:

目录

1.实验目的

2.实验内容

3.程序代码

4.调试结果

5.实验心得

1.实验目的

(1)通过实验进一步掌握指针的概念,会定义和使用指针变量;(2)能正确使用数组的指针和指向数组的指针变量;

(3)能正确使用字符串的指针和指向字符串的指针变量;

(4)能正确使用引用型变量。

2.实验内容

编程序并上机调试运行程序(要求用指针或引用处理)。

(1)输入3个整数,按由小到大的顺序输出。编译一个程序,用指针变量作为参数。

(2)在上题的基础上将程序改为:输入3个字符串,按由小到大的顺序输出。

(3)用引用指针变量作为形参,实现3个整数由小到大输出。(4)有n个人围成一圈,顺序排号。从第1个人开始报数(从1~3报数),凡是到3的人退出圈子,问最后留下的人原来排在第几号。(5)在主函数中输入10个字符串。用另一个函数最它们排序。然后在主函数输出这10个已排好的字符串。

要求用以下方法编程:

Ⅰ.指向一维数组的指针座函数参数;

Ⅱ.用string数组方法。

3.程序代码

(1)

#include

using namespace std;

int main()

{void swap(int *p1,int *p2);

int n1,n2,n3;

int *p1,*p2,*p3;

cout<<"input three integers n1,n2,n3:";

cin>>n1>>n2>>n3;

p1=&n1;

p2=&n2;

p3=&n3;

if(n1>n2) swap(p1,p2);

if(n1>n3) swap(p1,p3);

if(n2>n3) swap(p2,p3);

cout<<"Now,the order is:"<

}

void swap(int *p1,int *p2)

{int p;

p=*p1;*p1=*p2;*p2=p;

}

(2)

Ⅰ.用字符数组方法的源程序

#include

using namespace std;

int main()

{void swap(char *,char *);

char str1[20],str2[20],str3[30];

cout<<"input three line:"<

gets(str1);

gets(str2);

gets(str3);

if(strcmp(str1,str2)>0) swap(str1,str2); if(strcmp(str1,str3)>0) swap(str1,str3); if(strcmp(str2,str3)>0) swap(str2,str3); cout<

}

void swap(char *p1,char *p2)

{char p[20];

strcpy(p,p1);strcpy(p1,p2);strcpy(p2,p);

}

Ⅱ.用string方法的源程序(程序中使用了指针和引用)#include

#include

using namespace std;

int main()

{void change(string &,string &);

string str1=" ",

str2=" ",

str3=" ";

char *p1=&str1[0],*p2=&str2[0],*p3=&str3[0];

cout<<"input three line:"<

gets(p1);

gets(p2);

gets(p3);

if(str1>str2) change(str1,str2);

if(str1>str3) change(str1,str3);

if(str2>str3) change(str2,str3);

cout<

cout<

}

void change(string &st1,string &st2) {string st;

st=st1;st1=st2;st2=st;

}

(3)

#include

using namespace std;

int main()

{void exchange(int *,int *,int *);

int a,b,c,*p1,*p2,*p3;

cin>>a>>b>>c;

p1=&a;p2=&b;p3=&c;

exchange(p1,p2,p3);

cout<

return 0;

}

void exchange(int *q1,int *q2,int *q3)

相关文档
最新文档