程序设计与编程实验指导书12版.docx
- 文档编号:26979888
- 上传时间:2023-06-24
- 格式:DOCX
- 页数:9
- 大小:23.65KB
程序设计与编程实验指导书12版.docx
《程序设计与编程实验指导书12版.docx》由会员分享,可在线阅读,更多相关《程序设计与编程实验指导书12版.docx(9页珍藏版)》请在冰豆网上搜索。
程序设计与编程实验指导书12版
程序设计与编程实验指导书(2012版),
校内讲义 《程序设计与编程》 实验指导书 编写:
黄玉兰 吉林大学通信工程学院 目 录 实验一熟悉C语言运行环境..................................................1实验二数据类型、运算符和表达式.......................................5实验三最简单的C程序设计..................................................7实验四选择结构程序设计.......................................................9实验五循环结构程序设计.......................................12实验六循环结构程序设计.......................................14实验七函数.............................................................................16实验八数组.............................................................16实验九数组.................................................................19实验十指针
(一)......................................................................20实验十一指针
(二)..................................................................22实验十二结构体和共用体.....................................................23实验十三文件.........................................................................24附录:
VisualC++的基本用法........................................26 1 实验一熟悉C语言运行环境 一、实验目的 1、了解VC++环境的组成。
2、学习VC++环境的使用方法。
3、了解C语言程序从编辑、编译、连接到运行并得到运行结果的过程。
二、实验内容 1、通过网络查找VisualC++的安装图解,了解VisualC++的安装过程,要求在课下对个人机进行安装此软件的实验。
2、编写程序。
进入VisualC++编程开发环境。
在桌面上双击VisualC++图标,即可进入VC++界面。
建立工程。
在VisualC++编程开发环境下,用鼠标单击菜单【File】→【New】,在【New】菜单弹出的对话框中选Project中的Win32ConsoleApplication。
在同一对话框的右边Projectname处,用键盘输入一个要建立的工程名称Task1。
在同一对话框的右边Location处,用键盘输入一个路径D:
\\或者选择路径D:
\\,然后单击OK按钮。
接下来出现Win32ConsoleApplication-Step1of1界面,选择Anemptyproject后单击Finish按钮。
1 之后出现NewProjectInformation界面,单击OK按钮,工程就建好了。
这时可以看到界面名为Task1project-MicrosoftVisualC++。
单击FileView选项卡出现workspace‘Task1’:
1project[s]Task1files 单击第二行文字前的+号,会出现3个文件的目录。
单击SourceFiles,可以看到该文件夹是空的。
用鼠标单击菜单【File】→【New】,在【New】菜单弹出的对话框中使用File选项卡,选择C++SourceFile,此时该界面右侧的Addtoproject中自动出现Task1project,表示已将要建立的新文件加入到名为Task1project的工程中。
在同一对话框的右侧中间部分的File处,输入给新建文件所起的名字,输入之后单击OK按钮,将弹出VC++的编程界面。
在编程界面下键入一个小程序:
#include\intmain(){ printf(\return0; 2 } 输入完毕后单击界面上的“保存”按钮,就可将源代码存放到名为的文件中。
按下F7键,对程序进行编译和链接,如果有错还要改正;按下Ctrl+F5键或者单击“执行”,即可运行程序。
观察运行结果出现的界面及结果的内容。
退出VC++。
单击界面右上角的关闭按钮,屏幕上会出现一条提示,问是否要保留对工程内容所做的改变,可以有3种选择:
“是”、“否”或“取消”,选“是”退出VC++系统。
3、格式控制输入输出 :
要使下面程序的输出语句在屏幕上显示1,2,34,则从键盘输入的数据格式应为以下备选答案中的哪一个?
#includemain(){ chara,b;intc; scanf(\printf(\} A)1234 B)1,2,34 C)’1’,’2’,34D)1234 第一种输入方式:
1,2,34↙第二种输入方式:
1234↙第三种输入方式:
1234↙第四种输入方式:
1↙ 3
2↙ 34↙ :
与上面程序的键盘输入相同的情况下,要使上面程序的输出语句在屏幕上显示1234,则应修改程序中的哪条语句?
怎样修改?
:
要使上面程序的键盘输入数据格式为1,2,34,输出语句在屏幕上显示的结果也为1,2,34,则应修改程序中的哪条语句?
怎样修改?
:
要使上面程序的键盘输入数据格式为1,2,34,而输出语句在屏幕上显示的结果为’1’,’2’,34,则应修改程序中的哪条语句?
怎样修改?
:
要使上面程序的键盘输入无论用下面哪种格式输入数据,程序在屏幕上的输出结果都为’1’,’2’,34,则程序应修改程序中的哪条语句?
怎样修改?
4、顺序结构程序设计:
计算定期存款本利之和 设银行定期存款的年利率rate为%,并已知存款期为n年,存款本金为capital元,试编程计算n年后的本利之和deposit。
要求定期存款的年利率rate、存款期n和存款本金capital均键盘输入。
三、实验要求 1、学习VisualC++的基本操作,编写程序。
2、运行程序并记录运行结果。
3、将源程序、目标文件、可执行文件和实验报告存在磁盘上。
4 实验二数据类型、运算符和表达式 一、实验目的 1、进一步熟悉VisualC++环境的使用方法。
2、学习C语言赋值语句和基本输入输出函数的使用。
3、了解数据类型在程序设计语言中的意义。
二、实验内容 1、输入并运行下列程序:
main{charc1,c2;c1=97;c2=98; printf(“%c%c\\n”,c1,c2);printf(“%d%d\\n”,c1,c2);} ①将第二行改为:
intc1,c2;再使之运行,分析结果。
②再将第三行改为:
c1=300;c2=400;再使之运行,分析其运行结果。
2、输入并运行下列程序,然后分别作以下改动并运行:
main() 5 {inti,j,m,n;i=8;j=10;m=++i;n=j++; printf(“%d,%d,%d,%d”,i,j,m,n);} ①将第4行改为:
m=i++;n=++j;②程序改为:
main(){inti,j;i=8;j=10; printf(“%d,%d”,i++,j++);} ③在②的基础上,将printf语句改为:
printf(“%d,%d”,++i,++j);④再将printf语句改为:
printf(“%d,%d,%d,%d”,i,j,i++,j++);⑤程序改为:
main() {inti,j,m=0,n=0;;i=8;j=10; 6 m+=i++;n-=--j; printf(“i=%d,j=%d,m=%d,n=%d”,i,j,m,n);}三、实验要求 1、复习赋值语句和输入输出函数各种格式符的使用。
2、复习数据类型和运算符的有关概念。
3、编写程序,运行程序并记录运行结果。
4、将源程序、目标文件、可执行文件和实验报告存在磁盘上。
实验三最简单的C程序设计 一、实验目的 1、掌握数据的输入输出的方法,能正确使用各种格式字符。
2、了解不同类型数据间的转换。
二、实验内容 1、输入并运行以下程序:
main(){inta,b;floatd,e; 7 charc1,c2;doublef,g;longm,n;unsignedintp,q;a=61;b=62;c1=’a’;c2=’b’;d=;e=-; f=;g=;m=50000;n=-60000;p=32768;q=40000; printf(“a=%d,b=%d\\nc1=%c,c2=%c\\nd=%,e=%\\n”,a,b,c1,c2,d,e); printf(“f=.6f,g=.12f\\nm=%ld,n=%ld\\np=%u,q=%u\\n”,f,g,m,m,p,q);} 2、进行以下改动后,运行程序,分析结果。
①将程序第8-13行改为:
a=61;b=62;c1=a;c2=b; 8
f=;g=;d=f;e=g; p=a=m=50000;q=b=n=-60000; ②在①的基础上将printf语句进行下如下修改,再运行程序:
printf(“a=%d,b=%d\\nc1=%c,c2=%c\\nd=.6f,e=.12f\\n”,a,b,c1,c2,d,e); printf(“f=%f,g=%f\\nm=%ld,n=%ld\\np=%d,q=%d\\n”,f,g,m,n,p,q);3、编写程序,用getchar函数读入两个字符c1、c2,然后分别用putchar函数和printf函数输出这两个字符。
上机运行程序,比较用printf和putchar函数输出字符的特点。
三、实验要求 1、学习程序的调试方法。
2、编写程序,运行程序并记录运行结果。
3、将源程序、目标文件、可执行文件和实验报告存在磁盘上。
实验四选择结构程序设计 一、实验目的 1、正确使用关系表达式和逻辑表达式表达条件2、学习分支语句if和switch的使用方法。
9 3、进一步熟悉VisualC++集成环境的使用方法,学习VisualC++环境提供的调试工具。
二、实验内容 1、编写程序,使之具有如下功能:
输入a、b、c三个整数,求最小值。
写出调试过程。
2、编写程序,求解下列分段函数:
y=x (-5 3、某托儿所收2岁到6岁的孩子,2岁、3岁孩子进小班;4岁孩子进中班;5岁、6岁孩子进大班。
编写程序,输入孩子年龄,输出年龄及进入的班号。
如:
输入:
3,输出:
age:
3,enterLowerclass。
先编程序,然后上机调试运行程序。
4、有一个函数:
x=10时,y=x。
用scanf函数输入x的值(分别为x 10 5、给出一个百分制成绩,要求输出成绩等级‘A’,‘B’,‘C’,‘D’,‘E’。
90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。
6、求五个数中的最大数。
7、从键盘上输入三个数,让它们代表三条线段的长度,请编写一个判断这三条线段所组成的三角形属于什么类型的程序。
8、身高预测 每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。
小孩成人后的身高与其父母的身高和自身的性别密切相关。
设faHeight为其父身高,moHeight为其母身高,身高预测公式为:
男性成人时身高=(faHeight+moHeight)*(cm)女性成人时身高=(faHeight*+moHeight)/2(cm)此外,如果喜爱体育锻炼,那么可增加身高2%,如果有良好的卫生饮食习惯,那么可增加身高%。
编程从键盘输入你的性别、父母身高、是否喜爱体育锻炼、是否有良好的饮食习惯等条件,利用给定公式和身高预测方法对你的身高进行预测。
11 9、简单的计算器程序 要求用switch语句编程设计一个简单的计算器程序。
要求根据用户从键盘输入的表达式:
操作数1运算符op操作数2 计算表达式的值,指定的算术运算符为加、减、乘、除。
10、在实验9基础上,增加如下要求:
如果要求程序能进行浮点数的算术运算,程序应该如何修改?
如何比较实型变量data2和常数0是否相等?
如果要求连续做多次算术运算,每次运算结束后,程序都给出提示:
Doyouwanttocontinue(Y/Nory/n)?
如果用户输入Y或y时,程序继续进行其它算术运算,否则程序退出运行状态。
那么,程序如何修改?
三、实验要求 1、复习关系表达式、逻辑表达式和if语句、switch语句。
2、编写程序,运行程序并记录运行结果 3、将源程序、目标文件、可执行文件和实验报告存在磁盘上。
实验五循环结构程序设计 一、实验目的 1、学习循环语句for、while和do-while语句的使用方法。
2、学习用循环语句实现各种算法,例如穷举法、迭代法等 12 3、进一步熟悉VisualC++集成环境的使用方法二、实验内容 1、下列程序计算SUM的值。
调试该程序,使之能正确地计算SUM。
写出调试过程。
计算公式如下:
SUM=1+1/2+1/3+1/4+?
?
+1/n2、北京市体育彩票采用整数1、2、3、?
?
、36表示36种体育运动,一张彩票可选择7种运动。
编写程序,选择一张彩票的号码,使得这张彩票的7个号码之和是105且相邻两个号码之差按顺序依次是1、2、3、4、5、6。
如果第一个号码是1,则后续号码应是2、4、7、11、16、22。
3、编写程序实现输入整数n,输出如下所示数字组成的菱形。
1121 12321 1234321 123454321 1234321 12321 1211 13
三、实验要求 1、复习for、while、do-while语句和continue、break语句。
2、编写程序,运行程序并记录运行结果。
注意程序的书写格式。
3、将源程序、目标文件、可执行文件和实验报告存在磁盘上。
实验六循环结构程序设计 一、实验目的 1、掌握三种循环语句的格式及应用。
2、掌握break语句和continue语句的格式及应用。
3、提高用结构程序设计设计程序的能力。
二、实验内容 1、编写一个程序,求小于100且能被3整除的数之和。
2、一封电文转换成密文,转换规律如下:
⑴电文的每一个字母用在字母表中位于其后一个字母来代替,如a用b代替,z用a代替,Z用A代替。
⑵电文中的非字母字符不变。
3、猜数游戏 在这个实验中,我们将尝试编写一个猜数游戏程序,这个程序看上去有些难度,但是如果你按下列要求以循序渐进方式进行编程实现,你就会发现其实这个程序是很容易实现的。
14 那么,现在就开始吧,先编写第一个程序,然后试着在第一个程序的基础上编写第二个程序,?
?
。
程序1:
编程先计算机“想”一个1到100之间的数请人猜,如果人猜对了,则计算机给出提示:
“Right!
”,否则提示:
“Wrong!
”,并告诉人所猜的数是大(Toohigh)还是小(Toolow),然后结束游戏。
要求每次运行程序时机器所“想”的数不能都是一样的。
程序2:
编程先计算机“想”一个1到100之间的数请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平,否则计算机给出提示,告诉人所猜的数是太大还是太小,直到人猜对为止。
程序3:
编程先计算机“想”一个1到100之间的数请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平,否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10次,如果猜了10次仍未猜中的话,则结束游戏。
程序4:
编程先计算机“想”一个1到100之间的数请人猜,如果人猜对了,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平,则结束游戏,否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10次,如果猜了10次仍未猜中的话,则停止本次猜数,然后继续猜下一个数。
每次运行程序可以反复猜多个数,直到操作者想停止时才结束。
三、实验要求 1、复习for、while、do-while语句和continue、break语句。
2、、编写程序,运行程序并记录运行结果。
注意程序的书写格式。
3、将源程序、目标文件、可执行文件和实验报告存在磁盘上。
15 实验七函数 一、实验目的 1、熟悉掌握函数的定义、调用方式。
2、掌握变量的作用域和变量存储属性在程序中的应用。
3、能用函数编写一般的应用程序。
二、实验内容 1、题目要求:
用函数实现三个数求最大值 2、二维数组(3*4)进行转置,即行列互换,即a[i][j]=>a[j][i];借助一个中间二维数组来存放转置后的结果。
3、编写一个求素数的函数,然后用主函数调用该函数来求100至500之间的所有素数,并统计素数的个数。
三、实验要求 1、复习数组的定义、引用和相关算法的程序设计。
复习字符串处理函数和字符数组的使用、库函数的调用方法。
2、编写程序,运行程序并记录运行结果。
3、将源程序、目标文件、可执行文件和实验报告存在磁盘上。
实验八数组 一、实验目的 16 1、掌握数组的定义、赋值和输入输出的方法。
2、学习用数组实现相关的算法。
3、熟悉VisualC++集成环境的调试数组的方法。
4、掌握C语言中字符数组和字符串处理函数的使用。
5、掌握在字符串中删除和插入字符的方法。
6、熟悉VisualC++集成环境的调试字符串程序的方法。
二、实验内容 1、调试下列程序,使之具有如下功能:
输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。
写出调试过程。
main(){ inti,n,a[10],av;for(i=0;i;i++)scanf(\ for(i=0;i;i++){ printf(\;if(i%3==0) 17 printf(\;} for(i=0;i!
=n;i++){ av+=a[i]; printf(\;}} 上面给出的程序是完全可以运行的,但是运行结果是完全错误的。
调试时请注意变量的初值问题、输出格式问题等。
请使用前面实验所掌握的调试工具,判断程序中的错误并改正。
2、编写程序,任意输入10个整数的数列,先将整数按照从大到小的顺序进行排序,然后输入一个整数插入到数列中,使数列保持从大到小的顺序。
3、编写程序,输入若干个字符串,求出每个字符串的长度,并打印最长一个字符串的内容。
以\作为输入的最后一个字符串。
三、实验要求 1、复习数组的定义、引用和相关算法的程序设计。
复习字符串处理函数和字符数组的使用、库函数的调用方法。
2、编写程序,运行程序并记录运行结果。
18
实验十三文件 一、实验目的 1.掌握C语言中文件和文件指针的概念。
2.掌握C语言中文件的打开与关闭及各种文件函数的使用方法。
3.熟悉VisualC++集成环境的调试文件程序的方法二、实验内容 1.编写程序,输入一个文件名,输出该文件中的每一个字符及其所对应的ASCII码。
例如文件的内容是Beijing,则输出:
B(66)e(101)i(105)j(106)i(105)n(110)g(103)。
2.编写程序完成如下功能:
⑴输入5个学生的信息:
学号、姓名、3门课的成绩。
计算每个学生的平均成绩,将所有数据写入文件; ⑵从文件中读入学生数据,按平均成绩从高到低排序后写入文件; ⑶按照输入学生的学号,在文件中查找该学生,找到以后输出该学生的所有数据,如果文件中没有输入的学号,给出相应的提示信息.。
3.用编辑软件建立一个名为\的文件存入磁盘,文件中有18个数。
从磁盘上读入该文件,并用文件中的前9个数和后9个数分别 24 作为两个3*3矩阵的元素。
求这两个矩阵的和,并把结果按每行3个数据写入文件\。
用DOS命令TYPE显示。
三、实验要求 1.复习文件的读写方法。
2.编写程序,运行程序并记录运行结果。
3.源程序、目标文件、可执行文件和实验报告存在磁盘上。
25 附录:
VisualC++的基本用法 1.进入C++工作环境建立个人子目录:
第一次上机时先在E盘上建立一个sw1子目录,在sw1子目录下,再建立以自己学号后三位为目录名的子目录,如学号为9911001的同学,可以用001为子目录名。
然后按以下步骤进行操作;启动VisualC++:
双击Windows桌面上的VisualC++图标或单击Windows桌面上“开始”按钮,在“程序”中选择“VisualC++”运行即可。
2.编译、运行C++源程序 创建一个新的工程文件 启动VisualC++编译系统后,出现“MicrosoftDeveloperStudio”窗口,该窗口菜单条有9个菜单项:
(1).单击“File”菜单,在其下拉菜单中选择“New”,屏幕上出现一个“New”对话框,在该对话框中选择“Projects”标签,出现“Project”对话框。
(2).选择工程类型为“Win32ConsoleApplication”,这时,在右边的Platforms选框中就会出现Win32。
(3).输入工程名字。
在“Projectname”选框中输入所指定的工程文件名字,例如:
1st。
(4).输入路径名。
在“Location”选框中,输入你将要把所建立的工程文件放入何处的路径名。
例如,要将工程文件放在E盘下已建立好的子目录E:
\\sw1\\001子目录中,所以该选取路径为:
E:
\\sw1\\001\\1st。
选择“OK”按钮,该工程文件已建立。
26 图1创建新的工程文件 建立
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 编程 实验 指导书 12