数据结构实验答案

更新时间:2023-10-18 02:55:01 阅读量: 综合文库 文档下载

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

《数据结构》实验指导

2013 / 2014 学年 第 2学期

姓 名:______________ 学 号:_________ 班 级:______________ 指导教师:______________

潍坊学院计算机工程学院

2014

1

预备实验 C语言的函数数组指针结构体知识

一、实验目的

1、复习C语言中函数、数组、指针和结构体的概念。 2、熟悉利用C语言进行程序设计的一般方法。

二、实验内容和要求

1、调试程序:输出100以内所有的素数(用函数实现)。 #include

/*判断一个数是否为素数*/ int isprime(int n){ for(int m=2;m*m<=n;m++){ if(n%m= =0) return 0; return 1; }

/*输出100以内所有素数*/ int main(){ int i; for(i=2;i<100;i++) if(isprime(i)= =1) printf(“M”,i); return 0; }

运行结果:

2、 调试程序:对一维数组中的元素进行逆序排列。 #include #define N 10 int main(){ int a[N]={0,1,2,3,4,5,6,7,8,9},i,temp; printf(“the original Array is:\\n ”); for(i=0;i

2

a[i]=a[N-i-1]; a[N-i-1]=temp; } printf(“\\nthe changed Array is:\\n”); for(i=0;i

运行结果:

3、 调试程序:在二维数组中,若某一位置上的元素在该行中最大,而在该列中最小,则该元素即为该二维数组的一个鞍点。要求从键盘上输入一个二维数组,当鞍点存在时,把鞍点找出来。

#include #define M 3 #define N 4 int main(){ int a[M][N],i,j,k; printf(“请输入二维数组的数据:\\n”); for(i=0;ia[i][k]) k=j; for(j=0;j

3

}

运行结果:

4、 调试程序:利用指针输出二维数组的元素。 #include int main(){ int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int *p; for(p=a[0];p

运行结果:

5、 调试程序:输入10个学生的成绩,每个学生成绩包括学号、姓名和三门课的成绩。要求打印出三门课的平均成绩及成绩最高者的姓名和成绩。 #include #define N 10; struct student{ char num[6]; /*学号*/ char name[8]; /*姓名*/ int score[3]; /*成绩*/ float avr; /*平均成绩*/ }stu[N]; int main(){ int i,j,max,maxi,sum;

4

float average; for(i=0;imax){ max=sum; maxi=i; } } average/=10; printf(“ 学号 姓名 成绩1 成绩2 成绩3 平均分\\n); for(i=0;i<10;i++){ printf(“%8ss”,stu[i].num,stu[i].name); for(j=0;j<3;j++) printf(“}”,stu[i].score[j]); printf(“%6.2f\\n”,stu[i].avr); } printf(“平均成绩是:%5.2f\\n”,average); printf(“最好成绩的学生是:%s,总分是%d”,stu[maxi].name,max); return 0; }

运行结果

5

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

Top