《C语言程序设计》实验报告(实验1-12)(7)

2019-08-30 22:36

4.

七、实验结果:

1. 运行结果(或截图):

2. 运行结果(或截图):

3. 运行结果(或截图):

4. 运行结果(或截图):

成绩

指导教师签名 - 30 -

实验十

实验项目名称:指针

所使用的工具软件及环境:Visual C++ 6.0 一、实验目的:

1.通过实验进一步掌握指针的概念,会定义和使用指针变量。 2.能正确使用数组的指针和指向数组的指针变量。 3.能正确使用字符串的指针和指向字符串的指针变量。 4.了解指向函数的指针变量。 二、预习内容:

教材《C语言程序设计教程》第7章。

三、实验内容:

1.输入2个整数,交换顺序后输出,程序要求使用指针处理。 程序提示:

自定义交换函数:

void swap(int *p1,int *p2) //实现*p1与*p2交换 { }

//main函数结构如下:

int n1,n2; int *q1,*q2;

//输入2个数,q1,q2分别指向这n1,n2这2个数 swap(q1,q2); //调用函数swap

printf(“]]”,n1,n2); //输出交换后的值

2. 将一个数组的10个元素反序,用一函数实现。

程序提示:在主函数中用for循环通过scanf函数输入数组元素值,调用函数,用for循环输出结果。

void inverse(int *p) { 循环for(i=0;i<10/2;i++)

*(p+i)与*(p+9-i)交换,就能实现反序

}

- 31 -

3.下面程序是用指针法将一个字符串a复制到字符串b中,修改程序实现问题(1)(2)。 main() {

char a[]=\int i; p1=a;p2=b;

for( ; *p1!=’\\0’;p1++,p2++)

*p2=*p1; *p2=’\\0’;

printf(\printf(\for(i=0;b[i]!=’\\0’;i++) printf(\

}

(1)将第一个for循环改为while循环;

(2)分别用指针变量p1和p2输出字符串a 和b。

4. 用一个函数实现两个字符串的比较,自定义compare函数已给出,编写main函数:

设p1指向字符串s1,p2指向字符串s2。要求当两个字符相同时返回0,若两个字符串不相等,则返回返回它们二者第一个不同字符的ASCII码的差值。两个字符串s1,s2由主函数输入,compare函数的返回值也由主函数输出。

程序提示:使用以下函数进行比较: int compare(char *p1,char *p2) { int i; for(i=0;*(p1+i)!=’\\0’;i++) if(*(p1+i) != *(p2+i))

break; //不相等,循环结束

return *(p1+i)-*(p2+i); }

main() { }

5.下面的程序的功能是将字符数组ch中第2维下标是偶数的元素取出后,构成一个十进制整数。

#include main() {

char ch[2][5]={\int i,j,s=0; for(i=0;i<2;i++) p[i]= ; for(i=0;i<2;i++)

for(j=0;p[i][j]>'\\0'&& p[i][j]<='9';j+=2) s= ; printf(\

四.重要变量用途说明:

- 32 -

1. 2. 3. 4. 5.

五、源程序补充后完整清单: 1. 2. 3. 4. 5.

六、实验结果(写出典型测试数据输入和输出)

- 33 -

1. 运行结果:

2. 运行结果:

3. 运行结果:

4. 运行结果:

5. 运行结果:

成绩

指导教师签名 - 34 -


《C语言程序设计》实验报告(实验1-12)(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:元代肃政廉访司研究

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: