ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:35.38KB ,
资源ID:10283493      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10283493.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验指导书.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验指导书.docx

1、实验指导书实验指导书实验1 Turbo C环境认识与使用 一、实验目的 熟悉Turbo C运行环境、创建c程序文件的过程。二实验内容 1启在C编辑环境下,输入下列程序。然后将其以p1.c为文件名保存到d盘的cc目录中。(若d盘中没有cc子目录,则需要自己建立) 启动C编辑环境 开始程序MS-DOS方式,在MS-DOS方式下键入:cdtcbin(Enter) 在如下的提示符下,键入tc。C:tcbintc(Enter) 则此时C语言编辑环境已启动。 按Esc键后,光标落在编辑区中,键入下面程序。 程序输入完成后,利用Alt+F将File菜单的子菜单显示在屏幕上,选择Save,此时显示一个对话框,

2、在对话框中输入:d:ccp1.c(Enter)则程序被保存。 利用Alt+X退出C语言编辑环境。 再次启动C语言编辑环境,键入tc(回车)。 打开上面保存的程序p1.c。 同时按下Alt+F将File菜单的子菜单显示在屏幕上,选择Load,此时显示一个对话框,在对话框中输入:d:ccp1.c(回车),则此时p1.c程序被显示在程序的编辑窗口中。 将上面的程序改名为pp1.c保存到d盘的cc目录中(d:cc)。 同时按下Alt+F将File菜单的子菜单显示在屏幕上,选择Write to,此时显示一个重命名对话框,在对话框中输入:d:ccpp1.c(Enter),则此时pp1.c程序被保存到d盘c

3、c子目录中,此时编辑窗口右上方的文件名为:pp1.c。 编译pp1.c程序同时按下Alt+C,则屏幕上显示编译子菜单,当光带落到第一个子菜单项Compile to OBJ上时按回车键,则程序编译开始,编译完成后显示编译结果,如图4所示。(10) 运行pp1.c程序 浏览完编译结果后,若程序没有错误,按键盘中的任意一个键,则回到编辑窗口,此时同时按下Alt+R,则显示编译子菜单,当光带落到第一个子菜单项Run上时按回车键,则链接、运行开始。运行完成后,利用Run子菜单中的User screen命令观察运行结果。2按上面“输入、调试、编译、链接、执行”程序的步骤,完成下面程序的输入、编译、执行。

4、分析上面程序的运行结果,写出运行结果_;并给出运行结果的说明。实验2 顺序结构程序设计 一实验目的 熟悉运算符、表达式,掌握标准输入输出函数的适用方法和顺序结构程序设计的一般方法。二实验内容 1变量a、b中各存有一个整数,交换两数后输出。【分析提示】 设a=10,b=20,若要交换这两数,则需要借一中间变量,首先将a中的数值存入变量t 中进行保存,然后将b中的数值存入a中,再将t中的数值存入b中。写出程序代码 2鸡兔同笼,已知鸡兔总头数为h,总脚数为f,求鸡兔各有多少只?设a=10,b=20,若要交换这两数,则需要借一中间变量,首先将a中的数值存入变量t 中进行保存,然后将b中的数值存入a中,

5、再将t中的数值存入b中。写出程序代码 2鸡兔同笼,已知鸡兔总头数为h,总脚数为f,求鸡兔各有多少只?【分析提示】设有x只鸡,有y只兔,则有: 求出x和y的公式: 设h=16,f=40,写出程序代码3从键盘输入一个字符,输出这字符的ASCII码的值。【分析提示】一个整数,只要它的值在0255之间,也可以用字符形式输出,在输出前,系统会将该整数转换为相应的ASCII码的字符;一个字符也可以用一个整数输出,输出的整数即为这字符的ASCII码值。根据上面的分析,自已写出程序代码。运行时:从键盘上输入字符:a输出结果为_,此结果代表着什么含义? 4已知直角三角形的两直角边长为a,b,求斜边长 的值,保留

6、一位小数。 【分析提示】 在这个题中计算 ,要用到一个数学函数sqrt(x),这个函数在math.h头文件中。写出程序代码。实验3 分支结构程序设计 一实验目的 掌握if语句的格式与应用,if语句的嵌套格式与应用,条件运算符的作用,Switch语句的格式与应用,Break、continue语句的格式与应用。二实给内容 1 完成下面的程序,在空白处填入a,b,c,取a,b,c中最大者赋给max。Aif(ab & ac) B. if (ab) max=_ if(ac) else max=_p;max=_实验4 循环结构程序设计一 一.实验目的 掌握循环结构的三种形式:当型循环结构(while)、直

7、到型循环结构(do_while)、次数型结构(for),以及三种形式的相互转换,掌握break语句、continue语句的格式、功能、作用。 二.实验内容与步骤 读程序,求结果 1 下面程序段输出结果是( ) Int x=3; Do printf(“%dn”,x-=2); While(!(-x); 2 x和y均为int型变量,执行循环语句后,y值为( ) For(y=1;x=1;y=10) break; if (x%2=1) x+=5;continue; x-=3; 编写下列程序,上机调试、验证。 1 键盘上输入10个数,求其平均值。 2 输出1100之间,其数的平方在150200之间的第一个

8、数,如找到,退出循环,输出该数的平方。反之,继续查找。 3 . 输入一正整数,按从低到高的顺序依次输出其各位数字的值,例如:输入8546输出8 5 4 6 【程序分析提示】关键是确定整数的各位数字是什么 4. 从键盘上输入若干正整数,求其中最大数和最小数。输入的数以0为中止标志。 【程序分析提示】 (1) 设第一个读取德数是当前最大数和最小数; (2) 若当前读取的整数不为0,则继续循环; (3) 若当前读取的数比最大数大,则记录;比最小数小,则记录; (4) 读取下一个整数。if(bc) else max=_ max=_ max=_else else max=_ if(bc) max=_ e

9、lse max=_2输入a,b,c三个整数,要求将绝对值最大者打印输出。【分析提示】 此题的关键是绝对值如何表示,x的绝对值也以表示成:abs(x)。可以用伪代码写出程序的算法。If abs(a)abs(b) 则x=a 否则x=b (这时说明x中存放着a、b中绝对值较大的一个数);如果 if abs(x)abs(c) 则绝对值较大的一个是x,否则绝对值较大的一个是c。 3输入一个整数,判断该数的奇偶性。(输出相应的标志even-偶数 odd-奇数,请记住这两个单词)【分析提示】 一个数除2若余数为0,则这个数一定是偶数,否则是奇数。C语言中的求余运算符为“%”,若输入的数为偶数则输出“even

10、”,若输入的数为奇数则输出“odd”。自已写出程序代码。 4给定一个正整数,判断它是否能同时被3、5、7整除。实验5 循环结构程序设计二 一.实验目的 掌握三种循环结构相互嵌套,多重循环结构的应用。 二.实验内容与步骤 编写下列程序,上机调试、验证。 1 输出100-999之间的全部素数。 2 编一个程序,输入10个整数,统计并输出其中正数、负数和零的个数。 3 . 打印下面的图案 * * * * * * * * * * * * * * * * 【程序分析提示】 这是一个用双层循环实现打印图案的问题。打印几行用外循环实现,每行打印多少个字符,用内循环实现。具体每行哪个位置打印字符,由内循环体的

11、if语句实现。 4. 求出所有各位数字的立方和等于1099的三位整数。 【程序分析提示】 可用三层循环实现。设最外层循环变量为i(表示百位);此外层循环变量设为j(表示十位);最内层循环变量为k(表示个位)。输出i j k的条件:所有个位数组的立方和等于1099,即:i*i*i+j*j*j+k*k*k=1099; 实验6 数组程序设计一 一.实验目的 掌握一维数组和二位数组的定义、初始化、输入、输出方法 二.实验内容与步骤 1. 填补空出的语句,以使程序完整,然后上机验证。 (1) 下面程序的功能是输出数组s中最大元素的下标。 main() int k,p; int s=1,-9,7,2,-1

12、0,3; for(p=0,k=p;psk)_; printf(“%dn”,k); 【程序分析提示】主要考虑最大元素下标k和循环变量p之间的关系。 (2) 下面程序的功能为求主、次对角线元素之和。 main() static int a3=9,7,5,3,1,2,4,6,8; int i,j,s1=0,s2=0; for(i=0;i3;i+) for(j=0;j3;j+) if(_)s1=s1+aij; if(_)s2=s2+aij; printf(“%dn%dn”,s1,s2); 【程序分析提示】主要考虑主对角线行、列之间有何关系?次对角线行、列之间的关系? 3 编写下列程序,上机调试、验证。

13、 (1)求2个33矩阵对应元素之和,并存入矩阵C中,然后输出矩阵C。 设计步骤: 定义3个33矩阵a,b,c; 设计用双重循环给矩阵a、b赋值; 用双重循环求矩阵a、b对应元素之和并赋给矩阵c; 用双重循环输出矩阵c对应的元素。 (2)输入单精度型一维数组a10,计算并输出a数组中所有元素的平均值。 设计步骤: 定义一个单精度型一维数组a10; 用单重循环给一维数组a10赋值; 用单重循环求一维数组a10所有元素之和; 在循环外求平均值并输出。 四.思考与练习 1 设a345是一个三维数组,在内存中紧位于a134之后的数组元素是谁?紧位于a010之前的数组元素是谁? 2 设a是一个M*N*L的

14、三维数组,给出aijk的地址计算公式。 3 设有数组定义int a510。问一维数组a的每个元素占多少字节?数组a2的每个元素占多少字节?假设int型数句占2个字节。 4 设有数组定义int a345。a,a0,a00都是数组的名字。问它们的第一个元素的地址各是什么?它们的第一个元素各占多少字节? 实验7 数组程序设计二 一.实验目的 掌握字符数组的定义、初始化,存放字符串的字符数组的定义、初始化、输入、输出方法,掌握常用字符串处理函数的格式、功能和使用方法; 二.实验内容与步骤 1填补空出的语句,以使程序完整,然后上机验证。 下面程序的功能是将一个字符串str的内容颠倒过来。 # inclu

15、de“string.h” main() int i,j,k; char str=“1234567”; for(i=0,j=strlen(str)_;ij;i+,j-) k=str(i);stri=strj;strj=k; 【程序分析提示】i和j对应字符数组的下标,通过循环实现i由前往后移动,j由后向前移动。分析字符数组最后元素的下标值和字符串长度之间的关系。 2编写下列程序,上机调试、验证。 (1)输入一个字符串,将其中所有大写字母改为小写字母,而所有小写字母全部改为大写字母,然后输出。 设计步骤 用gets输入字符串; 用循环判断字符串中的每个字符是大写还是小写,若是大写要转换成小写,是小写

16、要转换成大写:大写与小写字母的转换关系是“小写字母=大写字母+32” 用puts输出该字符串。 参考程序部分清单: (2)设某班50名学生的三科成绩表如下 课程一 课程二 课程三 编一个程序,输入这50个学生的三科成绩,计算并输出每科成绩的平均分。 设计步骤: 可先按3个学生3门课成绩设计,通过后再改成50个学生; 先将3个学生3门课的成绩通过scanf函数送入字符数组score; 求出3个学生每门课程的总成绩,放入s一维数组中; 求出每门课程的平均成绩并输出。 四.思考与练习 1读如下程序,找出其中的所有错误。 1)main() 2)int a,x10; 3)char s100; 4)dou

17、ble A,B,a,b; 5)for(i=0;i10;i+)scanf(“%c”,xi); 6)scanf(“%d%d”,&A,&B); 7) for(i=0;iB then a=b=1 else a=b=2; 9) printf(“%d,%dn”,x0=A+x10,B+x10); 10) printf(“s=%sn”,s); 2 函数调用“strcat(strcpy(str1,str2),str3)”的功能是什么? 语句“printf(“%dn”strlen(“atsno121”);”的输出结果是什么?实验8 函数程序设计一 一.实验目的 掌握自定义函数的概念、定义格式、调用方法;掌握函数的

18、形式参数、实际参数和函数的返回值;掌握函数程序设计的一般方法和应用。二.实验内容与步骤 1阅读下列程序,分析程序完成的功能,然后上机验证结果。 (1)main() void f(); float x,y ; scanf(“%f,%f”,&x,&y); f(x,y); void f(float a , float b) float c; if(ab) c=a+b; else c=a-b; printf(“%f”,c); 【程序分析提示】该程序通过函数f,对形式参数为a,b进行相应运算。通过该题目验证自定义函数的定义、调用、参数传递、返回值之间的关系。 【思考】如果将该函数定义为代返回值的类型,该

19、程序应该如何改变? 2编写下列程序(或程序段)。 (1)编写自定义函数,实现求两个实数最小值的功能。 (2)计算10名学生1门课成绩的平均分。(程序设计要求:用自定义函数来实现,注意自定义函数的形式及参数之间的传递,用主函数来调用自定义函数实现功能。) (3)定义二个整数(x、y)最小公倍数的函数。 (4)利用自定义函数编写程序,实现将一个十进制数转换成二进制数。 (5)利用自定义函数编写程序,求下面的式子: Y=1+1/2+1/3+1/n (n的数值自定) Y=123+234+9899100 实验9 函数程序设计二 一.实验目的 掌握函数与数组之间的关系和操作,熟悉数组作为参数传递应该注意的

20、问题;函数的嵌套、递归调用方法和应用;局部变量、全局变量的定义和使用;常用系统函数的使用; 二.实验内容与步骤 (1)main() void f(); float a10 ; int i; for(i=0;i10;i+) scanf(“%d”,&ai); f(a); void f(int b) float sum=0,aver; int i; for(i=0;i*pb) p=pa;pa=pb;pb=p; printf(“%d=%dn”,*pa,*pb); 【程序分析提示】该程序用if语句比较pa和pb指向的数,使pa指向小数,pb指向大数,在实现该程序中,使用了指针方式。 2输入15个整数存入

21、一维数组,再按逆序重新调整该数组中元素的顺序然后再输出。下面给出部分程序的内容,请同学将程序补充完整,然后上机调试。 部分程序清单如下: main() int a15,*p1,*p2,x; for(p1=a;p1a+15;p1+) scanf(“%d”,p1); for(p1=a,p2=a+14;p1a+7;p1+,p2-) x=*p1; *p1=*p2; *p2=x; 三.编写程序,然后上机调试结果 1 已知p,q指向两个int型变量,写两个复合语句,分别交换p,q的值和p,q所指变量的值,每个复合语句中只可以定义一个变量。 2 已知p,q指向数组的两个元素,写赋值语句,使r指向p和q的中点

22、。例如,若p,q分别指向a0和a2,则r指向a1。 实验11 指针结构程序设计二 一.实验目的 掌握指向二维数组和字符数组指针变量的使用方法;掌握指针数组的定义、指针数组元素的引用;掌握多级指针的定义和应用; 二.实验内容与步骤 1 main() int s44,i,j; for(i=0;i4;i+) for(j=0;j4;j+) *(*(s+i)+j)=i-j; for(j=0;j4;j+) for(i=0;i4;i+) printf(“%4d”,*(*(s+j)+i); printf(“n”); 2 #include “string.h” main() char a580,*p5,*q,*max; int i; for(i=0;i5;i+) pi=ai; for(i=0;i5;i+) gets(pi);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1