大学数据结构实验指导书Word文档格式.docx

上传人:b****1 文档编号:5364076 上传时间:2023-05-05 格式:DOCX 页数:24 大小:66.51KB
下载 相关 举报
大学数据结构实验指导书Word文档格式.docx_第1页
第1页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第2页
第2页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第3页
第3页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第4页
第4页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第5页
第5页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第6页
第6页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第7页
第7页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第8页
第8页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第9页
第9页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第10页
第10页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第11页
第11页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第12页
第12页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第13页
第13页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第14页
第14页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第15页
第15页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第16页
第16页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第17页
第17页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第18页
第18页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第19页
第19页 / 共24页
大学数据结构实验指导书Word文档格式.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

大学数据结构实验指导书Word文档格式.docx

《大学数据结构实验指导书Word文档格式.docx》由会员分享,可在线阅读,更多相关《大学数据结构实验指导书Word文档格式.docx(24页珍藏版)》请在冰点文库上搜索。

大学数据结构实验指导书Word文档格式.docx

显示结果

(3)常用命令

编辑切换(F6,编译(F9),运行(CTRL+F9),显示结果(ALT+F5)其它常用命令见"

附录一"

.

2、使用VC++建立C源程序

(1)打开VC++编译软件,通过“file/new/win32consloeapplication”建立一个空工程,输入工程名字;

(2)再运行”file/new/c++sourcefile”建立一个C源文件,输入文件名;

(3)编辑源程序代码

3、有下面的C程序,目的是求两个由键盘输入的数的乘积。

试编译运行,查看结果。

/********exl.c********/

#include<

stdio.h>

voidmain()

{

intprodct(inta,intb);

intx,y,p

scanf("

%d,%d"

&

x,&

y)

p=prodct(x,y)

printf("

Theproductis:

%d"

p)

}

intprodct(inta,intb)

{intc

c=a*b

returnc

五、实验报告内容

请编辑并运行上述程序。

1)静态地检查上述程序,改正程序中的错误

2)在编辑状态下照原样键入上述程序.

3)编译并运行上述程序,记下所给出的出错信息

4)按照事先静态检查后所改正的情况,进行纠错.

5)再编译执行纠错后的程序,如还有错误,再编辑改正,直到不出现语法错误为止

6)下面给出6组测试用例,你认为哪几组较好,为什么

(1)0,0

(2)0,99

(3)20,50

(4)33000,20

(5)-5,-2

(6)-5,2

要测试出上述程序中所有错误,你认为应当用几组测试用例

六、思考题

1、有哪些方法可以进入TC编译环境?

2、编写一个程序,要求输入圆的半径,计算圆的周长和面积并输出。

实验二基本输入/输出函数和运算符、表达式

1、掌握C语言程序输入,输出的方法和格式。

2、学会有关C语言的有关运算符,以及包含这些运算符的表达式,特别是是++和--运算符的使用。

3、掌握C语言表达式的运行规则。

4、进一步熟悉C程序的编辑环境。

TC或者VC++编程环境;

三、预备知识

要深入理解输入输出函数的格式和用法,掌握运算符和表达式的概念和应用。

1、输入并编辑下面的程序

main()

inta,b;

floatc,d;

longe,f;

unsignedintu,v;

charc1,c2;

a,&

b);

%f,%f"

c,&

d);

%ld,%ld"

e,f);

%o,%o"

u,&

v);

%c,%c"

c1,c2);

\n"

);

a=%7d,b=%7d\n"

a,b);

c=%10.2f,d=%10.2f\n"

c,d);

e=17ld,f=%17ld\n"

u=%o,d=%o\n"

u,v);

c1=%c,d=%c\n"

(1)这个程序有语法错误吗,为什么?

(2)调试上述程序无语法错误后,用下面的测试数据,对程序进行测试:

a=123,b=456,c=17.6,d=71837.65,e=70000,f=2174506,u=62000,v=58765,c1='

a'

c2='

b'

分析运行结果.特别注意输入c1,c2的值是什么,什么原因?

(3)将输入e和f的语句改为:

e,&

f);

再用上述测试数据测试并分析结果.

(4)将输入u,v的语句改为:

2、编写一个C语言程序,测试下列各表达式

i,j

i+1,j+1

i++,j++

++i,++j

i+++++j

++i+++++j++

要求在各表达式中i和j都分别有相同的初值.在实验中注意下列问题:

(1)哪些表达式是错误的,为什么?

(2)理解+,++,++i,i++的意义和优先级别。

3、下面的程序试图计算由键盘输入的任意两个整数的平均值:

#include

main()

{

intx,y,a;

%x,%y,&

y);

a=(x+y)/2;

Theaverageis:

"

a);

}

调试无语法错误后,分别使用下列测试用例对上述程序进行测试:

2,6;

1,3;

-2,-6;

-1,-3;

-2,6;

-1,3;

1,0;

1,6;

32800,33000;

-32800,33000;

(1)分析上述哪几组测试用例较好,通过测试,你发现程序有什么错误了吗?

若有错误,请指出错误原因。

4、输入以下程序

{intj,k,m,n;

k=8;

j=10;

m=k++;

n=++j;

%d,%d,%d,%d"

k,j,m,n);

(1)运行程序,观察结果

(2)分析++在变量之前和在变量之后的不同点

完成上述题目及思考题内容。

1、操作符sizeof用以测试一个数据或类型所占用的存储空间的字节数,请编写一个程序,测试各基本数据类型所占用的存储空间大小。

实验三顺序结构、选择结构程序设计

1、了解条件与程序流程的关系。

2、了解C语句表示逻辑量的方法(以0代表"

假"

以1代表"

真"

)。

3、学会正确使用逻辑运算符和逻辑表达式。

4、熟练掌握if语句和switch语句。

要深入理解顺序结构及选择结构的特点,掌握各自的语句实现。

1、有如下程序段:

if(a>

1&

&

b==0)x=x/a;

if(a==2||x>

1)x=x+1;

要求增加一些输入语句和输出语句,以便使上述程序能在不同的a,b和x值下运行,并且能观察程序流程经过(覆盖)了哪些语句,哪些分支及哪些路径。

记下分别使用下列各组数据运行时的操作流程:

(1)a=1,b=1,x=1;

(2)a=1,b=1,x=2;

(3)a=3,b=0,x=1;

(4)a=2,b=1,x=4;

(5)a=2,b=1,x=1;

(6)a=1,b=0,x=2;

(7)a=2,b=1,x=1;

(8)a=3,b=0,x=2.

2、已知三个数a,b,c,找出最大值放于max中。

#include"

stdio.h"

inta,b,c,max;

/*定义四个整型变量*/

a=%d,b=%d,c=%d"

b,&

c);

=b)

max=a;

/*a>

=b*/

else

max=b;

/*amax)

if(c>

=max)

max=c;

/*c是最大值*/

max=%d"

max);

实验步骤:

若输入下列数据,分析程序的执行顺序并写出运行结果

(1)a=1,b=2,c=3

(2)a=2,b=1,c=3

(3)a=3,b=2,c=1

(4)a=3,b=1,c=2

(5)a=3,b=3,c=2

(6)a=2,b=1,c=2

3、输入某学生的成绩,经处理后给出学生的等级,等级分类如下:

90分以上(包括90):

A

80至90分(包括80):

B

70至80分(包括70):

C

60至70分(包括60):

D

60分以下:

E

输入测试数据,同方法一一样调试程序并写出结果。

完成上述题目及思考题内容。

1、输入4个整数,要求按由小到大的顺序输出。

实验四循环结构程序设计

1,掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的次数。

2,了解条件型循环结构的基本测试方法。

3,掌握如何正确地控制计数型循环结构的次数。

4,了解对计数型循环结构进行测试的基本方法。

5,了解在嵌套循环结构中,提高程序效率的方法。

要深入理解循环程序结构的特点,掌握其各种方式的语句实现。

1、

(1)下面是一个计算e的近似值(使误差小于给定的δ)的程序

{doublee=1.0,x=1.0,y,detax;

inti=1;

\npleaseinputenteraerror:

%lf"

detax);

y=1/x;

while(y>

=detax)

x=x*i;

e=e+y;

++i;

%12.10lf"

e);

(2)实验步骤

1)阅读上面的程序,写出程序所依据的计算公式。

2)当输入的detax各是什么值时,能分别使程序按下面的要求运行:

不进入循环;

只循环一次;

只循环两次;

进入死循环(程序将永远循环下去)

为了能知道程序循环了多少次,应该在程序中增加一条什么样的语句?

3)原程序中while语句中的y>

=detax,分别换成y>

detax,y=detax,y<

detax,Y<

=detax,观察程序运行将会有什么变化。

4)把原程序中while语句之前的y=1/x语句去掉,观察程序的运行将会发生什么样的变化。

5)若把原程序中的++i换成i++,观察程序的运行发生了什么变化

6)把原程序中的while结构改写成do—while结构,再分别按上述的2),3)两步进行实验。

2、求5!

3、求和s=1!

+2!

+3!

4、求和s=1!

+5!

5、求和s=3+33+333

6、有一数列:

2/1,3/2,5/3,8/5,…求出这个数列的前10项之和.

7、打印500以内的"

水仙花数"

是一个三位数,其各位数立方和等于该数本身。

8、用牛顿迭代求方程2x3-4x2+3x-6=0在1.0附近的根。

9、打印下列图案

*

***

*****

********

10.断m是否是素数。

1、求和1!

+4!

+…20!

实验五数组的应用

1、掌握数组定义的规则。

2、掌握C语言数组的基本用法。

3、掌握一维数组的定义,赋值和输入输出的方法。

4、掌握字符数组的使用。

5、掌握二维数组的定义,赋值和输入输出的方法。

要深入理解数组的定义,数组的功能及操作特点;

1、编写程序,测试下列数组的定义方式是否正确

(1)main()

intn;

n);

inta[n];

……

测试结果:

(2)main()

constintn=10;

(3)#include<

#defineM10

inta[M];

(4)main()

inta[2+2*4];

(5)#include<

#defineM2

#defineN8

{inta[M+N];

通过这一实验,可以说明什么问题

2、完善并运行下面的C程序,根据运行结果,可以说明什么

main()

{intnum[5]={1,2,3,4,5};

inti;

for(i=0;

i<

=5;

i++)

num[i]);

4、输入10个数,计算其中负数的个数。

{chardata[10];

inti,sum=0;

10;

i++)

{scanf("

data[i]);

if(data[i]<

0)

sum=sum+1;

负数个数为:

%d\n"

sum);

1、已有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。

2、将一个数组中的值按逆序重新存放。

例如,原来顺序为8,6,5,4,1。

要求改为1,4,5,6,8。

实验六函数的应用

1、掌握C语言函数定义及调用的规则。

2、理解参数传递的过程。

3、掌握C语言函数的声明及函数的递归调用。

要深入理解函数的定义,掌握函数参数的种类及特点。

1、上机调试下面的程序,记录系统给出的出错信息,并指出出错原因。

int,y;

%d\n"

sum(x+y));

intsum(a,b)

return(a+b);

2、写一函数,使给定的一个二位数组(4×

4)转置,即行列互换。

/*矩阵的转置*/

1、针对以上实验内容写出相应的参数传递过程并分析结果。

2、讨论参数的传递的几种形式。

实验七指针的应用

1、熟悉指针的正确用法。

2、了解指针的特点。

3、掌握指针的用法。

要深入理解指针的定义,掌握指针的应用。

1、指出下面程序错误的原因

intx=10,y=5,*px,*py;

px=py;

px=&

x;

py=&

y;

*px=%d,*py=%d,*px,*py);

2、使指针变量pt1指向a和b中的大者,pt2指向小者,以下程序能否实现此目的

swap(int*p1,int*p2)

int*p;

p=p1;

p1=p2;

p2=p;

inta,b,*pt1,*pt2;

pt1=&

a;

pt2=&

b;

swap(pt1,pt2);

%d,%d\n"

*pt1,*pt2);

完成上述题目及思考内容。

输入一行文字,统计大写字母,小写字母,空格,数字字符及其他字符各多少个

实验八结构体的应用

1、掌握结构体类型方法以及结构体变量的定义和引用。

2、掌握指向结构体变量的指针变量的应用,特别是链表的应用。

3、掌握运算符"

."

和"

—>

的应用。

要深入理解结构体的定义及操作特点,能够使用结构体解决相关问题。

1、要求编写程序:

有4名学生,每个学生的数据包括学号,姓名,成绩,要求找出成绩最高者的姓名和成绩,上机运行程序。

1、如何使用结构体指针来建立链表?

附录一:

TC编译环境常用热键

基本操作:

F10-----调用主菜单

F2------存盘

F3------打开

Alt+F9------Compile

Ctrl+F9------Run

Alt+F5------UserScreen

文本编辑:

←↑→↓-------移动光标

PgUp,PgDn------上下翻页

Ctrl+PgUp,Ctrl+PgDn------文件首尾

HomeEnd

DdeleteInsert

Bkspace

块操作:

Ctrl+KB-------块开始标记Ctrl+KK--------块结束标记

Ctrl+KC-------块拷贝Ctrl+KV--------块移动

Ctrl+KY-------块删除Ctrl+KH--------块隐藏

窗口操作:

F5-----窗口缩放

F6-----窗口切换

程序调试:

F8-----StepoverF7-------Traceinto

F4-----GotoCursorCtrl+F7--------AddWatch

Ctrl+F8------ToggleBreakpointCtrl+F2--------ProgramReset

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2