资源描述:
《数据结构(邹永林版)实验报告1-复习C》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验一、C语言回顾复习c语言中关于函数、数组、指针、结构体等的知识,为数据结构实验做准备。【实验学时】2学时【实验预习】回答以下问题:1、数组的定义与引用数组定义在定义数组时,应该说明数组的名字、类型、大小和维数。数组定义形式类型说明符数组名[常量表达式]数组元素的引用方法数组名[下标]2、函数的定义与调用无参函数类型说明符函数名(){函数体};有参函数类型说明符函数名(形式参数表列){函数体};函数调用函数名([实参表列])3、指针的基本概念指针一般指向一个函数或一个变量。在使用一个指针时,一个程序既可以直接使用这个指针所储存的内存地址,乂可以使用这个地址里储存
2、的函数的值。在计算机语言中,由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。4、结构体类型变量的定义方法结构体类型定义的一般形式struct结构体名{成员表};struct结构体名{成员表}变量表;5、结构体成员的访问方法结构体变量名.成员名(*指针变量名).成员名指针变量名・>成员名【实验内容和要求】1、完成并调试程序:实现对一维数组元素的升序排序并输出结果(横线处仅能补充一条语句)。#includevoidsort(intaf],intn);;intmai
3、n(){ints[10]={l,-9,89,120,76,45,43,6,7,2},i;for(i=0;i<10;i++)printf(”%4d”,s[i]);printf(nn);return0;voidsort(inta[],intn){/*补充完整排序函数,可用选择或冒泡排序*/}#includevoidsort(inta[],intn);intmain(){ints[10]={1,-9,89,120,76,45,43,6,7,2},i;sort(s,10);for(i=0;i<10;i++)printf(M%4d,,,s[i]);pr
4、intf(””);return0;}voidsort(inta[],intn){intfor(i=0;i5、j]>a[j+l]){t=afj];aUJ=aU+l];a[j+l]=t;2、完成并调试程序:字符串连接程序,不使用系统提供的字符串连接函数,将第二个字符串连接至第一个字符串后。(横线处仅能补充一条语句)。#include#defineM80intmain(){charsubl[M],sub2[M];char*ps1=sub15*ps2=sub2;printf(uplea
6、seinputstrings:M);printffstringl:”);gets(psl);printf(,,string2:M);gets(ps2);while(*ps1!='(r)ps1++:while(*ps2!=' ')_*(ps1++)=*(sp2++);*psl-O';printf(unewstring:1');puts(subl);return0;}3、完成并调试程序:结构体与数组。实现学生数据的输入、输出和按成绩排序。(横线处仅能补充一条语句)。#include#includestructstuden
7、t{intsno;charsname[10];floatgrade;};voidinputData(structstudents[]3ntn);voidprintData(structstudents[],intn);voidsortData(structstudents[],intn);intmain(){structstudenta[100J;intn=3;inputData(a,n);sortData(a.n);printData(a,n);return0;}voidinputData(structstudentsfLintn){inti;for(i=0;i
8、9、0;i