数组实验报告

更新时间:2023-10-27 22:38:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验四 使用数组的程序设计

学号 姓名

一、实验目的

1、 正确理解数组的概念,熟练掌握一维数组和二维数组的定义和初始化方法。 2、 熟练掌握字符数组和字符串的区别和使用、字符串函数的使用。 3、 熟练掌握一维数组、二维数组以及字符串的输入和输出方法。 4、 了解数组的地址、数组元素的地址及一维数组和二维数组的存储结构。 5、 掌握字符窜的结束标志,正确使用字符串的结束标志对字符串进行处理。 6、 通过编程和调试程序,加深对数组、字符数组和字符串函数应用的理解。 7、 实验前复习数组、字符数组和字符串函数的概念。

二、实验内容

1、打印fabonacci数列的前20项,该数列前两项为1,以后各项均为前相邻两项之和。 程序代码:

#include \void main() {

int a[20],i; a[0]=1;

printf(\ a[1]=1;

printf(\ for(i=2;i<20;i++) {

a[i]=a[i-1]+a[i-2]; printf(\ } }

对程序进行测试,并观察运行结果。将程序的运行情况写在下面。 『运行结果:』

2、从键盘输入一个班学生(最多30人)的成绩,然后按降序进行排列。 程序代码:

#include \#define N 30 void main() { int a[N],i,t,k=1; printf(\请输入30个人的成绩,中间用空格隔开,并按回车结束:\\n\ for(i=0;i0;i--)

1

}

if(a[i]>a[i-1]) {

t=a[i];

a[i]=a[i-1]; a[i-1]=t; } k++; }

for(i=0;i

printf(\}printf(\

对程序进行测试,并观察运行结果。将程序的运行情况写在下面。 『运行结果:』

3、编写一个程序,利用字符数组实现两个字符串的比较。 (注意不能使用字符串比较函数strcmp()) 程序代码:

#include \void main() {

char a[1000],b[1000]; int c,d,i;

printf(\请输入字符串 a 的数据:\\n\ gets(a);

printf(\请输入字符串 b 的数据:\\n\ gets(b);

printf(\ for(i=0;i<100;i++) {

c=a[i]; d=b[i]; if(c>d) {

printf(\两个字符串的大小为:a > b\\n\ break; }

if(c

printf(\两个字符串的大小为:a < b\\n\ break; } }

if(c==d)

printf(\两个字符串的大小为:a = b\\n\}

2

对程序进行测试,并观察运行结果。将程序的运行情况写在下面。 『运行结果:』

三、问题讨论

1.使用%s格式符输入字符串到数组时能否将空格符输入?如果不能该如何使用其它方法解决?举例说明。

答:不能。scanf函数遇到空格结束输入,这可以用gets解决。如: 程序代码:

#include \void main() {

char a[10],b[10];

printf(\请输入带有空格的字符:\\n\ gets(a);

printf(\请再输入刚才的字符:\\n\ scanf(\

printf(\}

执行结果:

2.数组在“定义”时和“引用”时所带的下标有何区别?

答:数组定义是,所带下标是该数组所含有元素个数,“引用”时的下标是表示该元素在该

数组中的位置。 四、实验总结

1 总结本次实验完成情况、相关知识掌握情况

2 总结本次实验编辑、编译、连接、运行所取得的经验 3 分析本次实验出现的主要错误最直接原因

3

本文来源:https://www.bwwdw.com/article/teq2.html

微信扫码分享

《数组实验报告.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文
范文搜索
下载文档
Top