C语言上机实验例题.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 上机 实验 例题
- 资源描述:
-
实验一 C语言的运行环境、运行过程和表达式的使用 一、目的与要求 1、了解Dos、Windows环境下C语言的运行环境,了解所用的计算机系统的基本操作方法,学会独立使用该系统。 2、了解在该系统上如何编辑、编译、连接和运行一个C程序。 3、通过运行简单的C程序,初步了解C源程序的特点。 4、掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以与对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。 5、学会使用C的有关算术运算符,以与包含这些运算符的表达式 二、实验例题 [例1]编程实现在屏幕上显示如下三行文字 Hello, world ! Wolcome to the C language world! Everyone has been waiting for. 在Turbo C的集成环境下,键入如下源文件。敲Alt+F组合键打开File菜单,File菜单中Write to或save as选项可将默认noname.c文件名改为任意文件名。程序example.c如下: main() { printf("Hello,World!\n"); printf("Wolcome to the C language world!\n"); printf("Everyone has been waiting for.\n"); } 然后用Ctrl+F9执行example.c,用Alt+F5查看结果,即在屏幕上显示题目要求的三行文字。按回车键重新返回Turbo C的编辑环境。注意,在运行程序之前最好先存盘。 [例2]输入并运行程序,写出运行结果。 main() { int a,b,sum; a=123;b=456; sum=a+b; printf(“sum is %d\n”,sum); } 运行方法同上,最后结果为:sum is 579。 [例3] 输入并运行程序,写出运行结果。 main() { int a,b,c; int max(int,int); scanf(“%d,%d”,&a,&b); c=max(a,b); printf(“max=%d”,c); } int max(int x,int y) { int z; if (x>y) z=x; else z=y; return(z); } 这个程序的功能是对于任意输入的两个整数,输出较大的那个数。所以程序运行之后,光标将停留在用户屏幕上,等待用户输入两个整数,比如输入“3,5”,回车,在用户屏幕上就会输出“max=5”。 [例4]输入并运行下程序,写出运行结果。 mian() { char c1 , c2; c1=97; c2=98; printf(“%c %c”, c1, c2); } 在此基础上 1)加一个printf语句,并运行之。 printf(“%d,%d”, c1, c2 ); 2)再将第二行改为: int c1, c2; 再使之运行。 3)再将第三行改为: c1=300; c2=400; 再使之运行,分析其运行结果。 在该程序中,说明了字符型数据在特定情况下可作为整型数据处理,整型数据有时也可以作为字符型数据处理。 [例5]分析下面程序,写出运行结果,再输入计算机运行,将得到的结果与你分析得到的结果比较对照。 main() { char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’\116’; printf(“a%c b%c\tc%c\tabc\n”,c1,c2,c3); printf(“\t%c %c”,c4,c5); } 在该程序中,主要考查对转义字符的掌握情况。 [例6] 分析下面程序,写出运行结果,再输入计算机运行,将得到的结果与你分析得到的结果比较对照。 main() { int i , j , m , n ; i=8; j=10; m=++i; n=j++; printf(“%d,%d,%d,%d”,i,j,m,n); } 分别作以下改动之后,先分析再运行: 1)将第四行改为: m=i++; n= ++j; 2)程序改为: main() { int i , j ; i=8; j=10; printf(“%d,%d”, i++, j++); } 3)在2)的基础上,将printf语句改为: printf(“%d,%d”, ++ i, ++ j ); 4)再将printf语句改为: printf(“%d,%d,%d,%d”,i,j,i++,j++); 5)程序改为: main() { int i , j , m=0 , n=0 ; i=8; j=10; m+= i ++; n -= --j; printf(“i=%d,j=%d,m=%d,n=%d”,i,j,m,n); } 此程序主要考查自加、自减运算符以与复合运算符的用法。 三、上机容 1.用turbo c输入并运行前面6道例题中程序,记下运行结果,熟悉调试C程序的方法与步骤。 2.参照例题,编写一个C程序,输出以下信息: **************************** Hello,World! **************************** 四、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 实验二 顺序结构与选择结构程序设计 一、实验目的与要求 1. 理解C语言程序的顺序结构; 2. 掌握常用的C语言语句,熟练应用赋值、输入、输出语句; 3. 了解C语句表示逻辑量的方法(以0代表“假”以1代表“真”); 4. 学会正确使用逻辑运算符和逻辑表达式; 5. 熟练掌握if语句和switch语句。 二、实验容 1、已知圆半径r=1.5,圆柱高h=3, 求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积。 2、输入一个华氏温度,要求输出摄氏温度。公式为c=5/9*(f-32)。 3、有3个整数a、b、c,由键盘输入,编程序按从小到大的顺序将它们排序并输出。 4、编程序计算下面的函数: e-1 0<x<1 y= |x|+2 3≤x≤4 sin(x2) 当x取其他值时 5、输入一个整数m,判断它能否被7、11、17整除,如果能被以上三个数之一整除,则输出它能被整除的信息,否则输出m不能被7、11、17整除的信息。 6、电文加密的算法是:将字母A变成字母G,a变成g,B变成H,b变成h,依此类推,并且U变成A,V变成B,等等。从键盘输入一个电文字符,输出其相应的密码。 7、企业发放的奖金根据利润提成。若利润I≤10万元,奖金可提10%;若10万<I≤20万时,则低于等于10万元的部分按10%提成,高于10万元部分,可提成7.5%;若20万<I≤40万时,低于等于20万元的部分仍按上述办法提成,高于20万元部分按5%提成;按类似的办法,若40万<I≤60万元时,高于40万元部分按3%提成;若60万<I≤100万元时,高于60万元的部分按1.5%提成;若I>100万时,超过100万元部分按1%提成。从键盘输入当月利润I,求应发奖金总数。 三、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 实验三 循环结构程序设计 一、实验目的与要求 1.熟练掌握while、do—while和for三种循环语句的应用。 2.掌握基本的编程算法。 二、实验容 1、利用公式 sinx=x-x3/3!+x5/5!-x7/7!+x9/9!-…+(-1)(n-1)·x(2n-1) /(2n-1)! 编程计算sinx的值。设x=0.5,n=9。 2、编写程序求: 3、输入20个有符号整数,统计正整数、零、负整数的个数。 4、输入m个数,求其最大数、最小数和平均值。 5、在100和1000之间,有多少个其数字之和等于9而且该数可被5整除的整数? 6、一位同学问老师和老师夫人的年龄是多少,老师说:“我年龄的平方加上我夫人的年龄恰好等于1053,而我夫人年龄的平方加上我的年龄等于873。”试计算老师和其夫人的年龄。 7、打印下列图案 * *** ***** *** * 三、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 实验四、数组程序设计 一、实验目的与要求 1.掌握一维、二维数组的定义、赋值和输入输出的方法; 2.掌握字符数组的使用; 3.掌握与数组有关的算法(例如排序算法)。 二、实验容 1、给整型二维数组 b[3][4]输入12个数据,计算并输出数组中所有正数之和、所有负数之和。 2、青年歌手参加歌曲大奖赛,有10个评委进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。 分析:这道题的核心是排序。将评委所打的10个分数利用数组按增序(或降序)排列,计算数组中除第一个和最后一个分数以外的数的平均分。 3、设二维数组 b[5][4]中有鞍点,即b[i][j]元素值在第i行中最小,且在第j列中最大,试编写一程序找出所有的鞍点,并输出其下标值。也可能没有。 4、从键盘输入一数,然后在一个整型一维数组a[20]中,用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则打印”No found”。 5、编程打印如下图形: * * * * * * * * 6、有一电文,已按下列规律译成译码: A→Z a→z B→Y b→y C→X c→x 即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。编写一个程序将密码译成原文,并输出密码和原文。 三、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 实验五 函数程序设计 一、目的与要求 1、掌握C语言函数的定义方法、函数的声明与函数的调用方法。 2、了解主调函数和被调函数之间的参数传递方式。 二、实验容 1、分别编写求圆面积和圆周长的函数,另编写一主函数调用之, 要求主函数能输入多个圆半径,且显示相应的圆面积和周长。 2、编写一程序,把M×N矩阵a的元素逐列按降序排列。假设M、N不超过10。分别编写求一维数组元素值最大和元素值最小的函数,主函数中初始化一个二维数组a[10][10],调用定义的两函数输出每行、每列的最大值和最小值。 3、编写一判别素数的函数,在主函数中输入一个整数,输出该数是否为素数的信息。 4、编写一个将两个字符串连接起来函数(即实现strcat函数的功能),两个字符串由主函数输入, 连接后的字符串也由主函数输出。 5、编写计算最小公倍数的函数,试由主函数输入两个正整数a和b调用之。计算最小 公倍数的公式为: lcm(u,v)=u*v/gcd(u,v) (u,v≥0) 其中,gcd(u,v)是u、v的最大公约数。lcm(u,v)是u、v的最小公倍数。 三、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 实验六 指针程序设计 一、目的与要求 1、通过实验进一步掌握指针的概念,会定义和使用指针变量; 2、能正确使用数组的指针和指向数组的指针变量; 3、能正确使用字符串的指针和指向字符串的指针变量; 4、能正确使用指向函数的指针变量; 5、了解指向指针的指针的概念与其使用方法。 二、实验容 1、编写子函数,对传送过来的三个数按由小到大的顺序排列,并通过形参传回调用函数。 2、编写函数int find(int *p,int n,int x),在指针p所指的数组中查找整型数x,如果x在数组中,则该函数返回1,否则返回0。n为数组的大小。 3、(选做)有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前m个数(如下图所示)。写一函数实现以上功能,在主函数中输入n个整数和输出调整后的n个整数。 4、(选做)在主函数中输入10个不等长的字符串。用另一个函数对它们按升序排序,然后在主函数中输出这10个已排序的字符串。 5、(选做)用指针型指针对五个字符串进行排序,并将排序后的结果按顺序输出。 6、(选做)编写一程序,统计从键盘输入的命令行中第二个参数所包含的英文字符个数。 三、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 实验七 结构体、共用体程序设计 一、目的与要求 1、掌握结构体类型变量的定义和使用; 2、掌握结构体类型数组的概念和使用; 4、了解共用体的概念与使用。 二、实验容 编程序,然后上机调试运行下列程序。 1. 有10个学生,每个学生的数据包括学号、、3门课的成绩,从键盘输入10个学生数据,要求打印出3门课总平均成绩,以与最高分的学生的数据(包括学号、、3门课的成绩、平均分数)。 要求用input函数输入10个学生数据;用average函数求总平均分;用max函数找出最高分的学生数据;总平均分和最高分学生的数据都在主函数中输出。 2. 设有两个人员的数据,一个学生,一个教师。学生的数据中包括:学号、、班级,、教师的数据中包括:工号、、职称。现将两人的数据放在同一表格中,要求输入两人的数据,再将输入的容输出。 提示:参考教材例11.12(P311) 三、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 实验八 文件程序设计 一、目的与要求 1、掌握文件和文件指针的概念以与文件的定义方法。 2、了解文件打开和关闭的概念和方法。 3、掌握有关文件的函数。 二、实验容 1、有 5个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,,三门课成绩),计算出平均成绩,将原始数据和计算出的平均分数存放在磁盘文件“stud”中。 2、将上题“stud”文件中的学生数据,按平均分进行排序处理,将已排序的学生数据存入一个新文件“stu_sort”中。 三、实验结果分析 对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。 9 / 9展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




C语言上机实验例题.doc



实名认证













自信AI助手![[1小时学会C语言51单片机]C语言入门教程.doc](/Images/s.gif)
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/4708680.html