C语言程序设计7

实验7  指针

实验目的

1、熟悉指针的基本概念。

2、掌握指针的初始化方式和基本操作。

3、了解数组指针和多级指针的使用方式。

实验内容

1、上机实验一

(1)编写程序:输入一行字符,将字符按照从小到大排列输出,要求使用指针方式编写。

(2)写出实验报告。

运行结果:

分析:

没有进行动态内存规划或像C++一样使用自动调整容器,由于在终端输入字符串,所以用字符数组的方式来命名字符串,开的空间稍微大一点,在scanf_s函数中对字符指定缓存区大小即可编译运行通过.否则不仅报错,还无法实现排序功能.

体会:

   遇到问题时,要学会结合原来的所学知识.想到了:scanf_s读取字符会出现的问题.

2、上机实验二

(1)编写程序:从键盘输入10个学生某门课程的成绩,输出其中的最低分、最高分和平均成绩,要求使用指针方式编写。

(2)写出实验报告。

运行结果:

分析:

   已知学生人数,通过一个for循环,输入学生成绩并求和,考虑到平均分大概率为小数,所以sum的数据类型为double.在寻找最大和最小之前,假设都为第一个元素,这样便于使用指针进行遍历这个数组.不能比较大小后,写成(*p)=*(p+1)的形式,这样导致前一个元素的值为后一个元素,导致数组的元素值发生了改变,且只获得了极大值,不一定是最大值.不能够寻找最小值了.所以直接复制给min和max两个变量.

体会:

把难的问题简单化,用容易的方式解决.

3、上机实验三

(1)编写程序:题目见教材P248页,习题16。

(2)写出实验报告。

运行结果:

分析:

用一维数组a来存值,指针数组里放对应元素的地址,通过循环以及解引用的方式把对应的元素按照要求打印出来.

体会:

这道题目注意一下打印格式就行了,没其他什么难以处理的地方.

4、上机实验四

(1)编写程序:编写一个函数fun,功能是:求出数组的最大元素在数组中的下标,并存放在k所指的存储单元中,要求利用指针方式编写,需要给出测试结果,即:需要写主函数。

(2)写出实验报告。

运行结果:

分析:

这里的数组大小不太好控制,所以设置为一个明确的数,也便于设置for循环的控制条件,关于寻找最大元素的方法与实验2完全一样,故不在此过多赘述.通过for循环依次比较元素,函数返回最大元素的下标,并赋值给变量k.

体会:

如果不好处理,就换成自己会处理的方式,与做过的实验相联系,将大大减少思考内容.

实验要求

1、结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。

2、整理上机步骤,总结经验和体会。

3、完成实验报告和上交源程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值