数据结构实验答案.doc

上传人:gs****r 文档编号:1485123 上传时间:2019-03-03 格式:DOC 页数:62 大小:1.26MB
下载 相关 举报
数据结构实验答案.doc_第1页
第1页 / 共62页
数据结构实验答案.doc_第2页
第2页 / 共62页
数据结构实验答案.doc_第3页
第3页 / 共62页
数据结构实验答案.doc_第4页
第4页 / 共62页
数据结构实验答案.doc_第5页
第5页 / 共62页
点击查看更多>>
资源描述

1、1数据结构实验指导2013 / 2014 学年 第 2 学期姓 名:_学 号:_班 级:_指导教师:_潍坊学院计算机工程学院20142预备实验 C 语言的函数数组指针结构体知识一、实验目的1、复习 C语言中函数、数组、指针和结构体的概念。2、熟悉利用 C语言进行程序设计的一般方法。二、实验内容和要求1、调试程序:输出 100以内所有的素数(用函数实现) 。#include/*判断一个数是否为素数*/int isprime(int n)for(int m=2;m*m#define N 10int main()int aN=0,1,2,3,4,5,6,7,8,9,i,temp;printf(“th

2、e original Array is:n ”);for(i=0;i#define M 3#define N 4int main()int aMN,i,j,k;printf(“请输入二维数组的数据:n”);for(i=0;iaik)k=j;for(j=0;jint main()int a34=1,3,5,7,9,11,13,15,17,19,21,23;int *p;for(p=a0;p#define N 10;struct studentchar num6; /*学号*/char name8; /*姓名*/int score3; /*成绩*/float avr; /*平均成绩 */stuN;

3、int main()int i,j,max,maxi,sum;5float average;for(i=0;imax)max=sum;maxi=i;average/=10;printf(“ 学号 姓名 成绩 1 成绩 2 成绩 3 平均分n);for(i=0;i#include#define ERROR 0#define OK 1#define INIT_SIZE 5 /*初始分配的顺序表长度*/#define INCREM 5 /*溢出时,顺序表长度的增量*/typedef int ElemType; /*定义表元素的类型*/typedef struct SqlistElemType *sl

4、ist; /*存储空间的基地址*/int length; /*顺序表的当前长度*/int listsize; /*当前分配的存储空间*/Sqlist;int InitList_sq(Sqlist *L); /* 初始化顺序表 L,并将其长度设为 0 */int CreateList_sq(Sqlist *L,int n); /* 构造顺序表的长度为 n */int ListInsert_sq(Sqlist *L,int i,ElemType e);/*在顺序线性表 L中第 i个 元素之前插入新的元素 e */int PrintList_sq(Sqlist *L); /*输出顺序表的元素*/in

5、t ListDelete_sq(Sqlist *L,int i); /*删除第 i个元素*/int ListLocate(Sqlist *L,ElemType e); /*查找值为 e的元素*/int InitList_sq(Sqlist *L)L-slist=(ElemType*)malloc(INIT_SIZE*sizeof(ElemType);if(!L-slist) return ERROR; L-length=0; L-listsize=INIT_SIZE; return OK; /*InitList*/8int CreateList_sq(Sqlist *L,int n)ElemT

6、ype e;int i;for(i=0;ilength;i+)printf(“%5d“,L-slisti-1);return OK;/*PrintList*/int ListInsert_sq(Sqlist *L,int i,ElemType e)int k;if(iL-length+1) return ERROR; if(L-length=L-listsize) L-slist=(ElemType*)realloc(L-slist,(INIT_SIZE+INCREM)*sizeof(ElemType);if(!L-slist) return ERROR; L-listsize+=INCREM

7、; for(k=L-length-1;k=i-1;k-) L-slistk+1=k;L-slisti-1=e; L-length+; return OK;/*ListInsert*/*在顺序表中删除第 i个元素*/int ListDelete_sq(Sqlist *L,int i) if(iL-length) return ERROR;for(p=i-1;plength-1;p+)9L-slistp=L-slistp+1;L-length-;return OK;/*在顺序表中查找指定值元素,返回其序号*/int ListLocate(Sqlist *L,ElemType e) int main

8、()Sqlist sl;int n;printf(“please input n:“); /*输入顺序表的元素个数*/scanf(“%d“,if(n0)printf(“n1-Create Sqlist:n“);InitList_sq(CreateList_sq(printf(“n2-Print Sqlist:n“);PrintList_sq(elseprintf(“ERROR“);return 0; 算法分析与运行结果please input n:51-Create Sqlist:input data 10input data 25input data 38input data 43input

9、 data 562-Print Sqlist:0 5 8 3 6Press any key to continue102、为第 1题补充删除和查找功能函数,并在主函数中补充代码验证算法的正确性。算法代码:int ListDelete_sq(Sqlist *L,int i) int p;if(iL-length) return ERROR;for(p=i-1;plength-1;p+) L-slistp=L-slistp+1;L-length-;return OK;/*在顺序表中查找指定值元素,返回其序号*/int ListLocate(Sqlist *L,ElemType e) int i=0;while(ilength)if(ilength)return(i+1);elsereturn(-1);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 企业管理资料库 > 生产营运

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。