程序设计基础C语言试验指导书.doc
《程序设计基础C语言试验指导书.doc》由会员分享,可在线阅读,更多相关《程序设计基础C语言试验指导书.doc(23页珍藏版)》请在咨信网上搜索。
《程序设计基础(C语言)》 目 录 第 1 章 概述 1 1.1 课程介绍 1 1.2 试验环境选择 1 第 2 章 试验要求 1 2.1 试验过程要求 1 2.2 考评及评分标准 1 第 3 章 试验内容 2 3.1 试验1 熟悉C语言运行环境 2 3.2 试验2 数据类型 3 3.3 试验3 运算符和表示式 4 3.4 试验4 次序结构及输入和输出 6 3.5 试验5 选择结构 7 3.6 试验6 循环结构 9 3.7 试验7 数组(1) 11 3.8 试验8 数组(2) 12 3.9 试验9 字符串及其操作 13 3.10 试验10 函数 14 3.11 试验11 结构体 15 3.12 试验12 指针 16 第 1 章 概述 1.1 课程介绍 《程序设计基础(C语言)》是软件工程各专业或其它相近专业学生公共职业基础课,是软件类各专业入门课程,直接影响学生后继职业技术课程学习及可连续发展能力培养。经过本书,学习基础程序设计概念和程序设计方法,学会使用C语言处理实际问题,进行初级程序设计。 1.2 试验环境选择 VC++6.0 第 2 章 试验要求 2.1 试验过程要求 本课程中,试验者必需服从指导老师和试验室工作人员安排,遵守纪律和试验制度,珍惜设备及卫生。在指定试验时间内,必需到机房内试验,其它时间可自行设计和分析。本课程所包含程序代码,全部要求有较高可读性和效率,多文件表示。 2.2 考评及评分标准 若试验者在指定上机时间三次不到课,取消考评资格。请假,必需提前出具正式假条,不接收事后假条。假如发觉剽窃、篡改、伪造试验数据,或试验汇报和设计汇报雷同,包含全部学生该课程成绩计为 0 分。本课程采取结构化评分,关键由指导老师灵活处理,能够是考勤等。 第 3 章 试验内容 3.1 试验1 熟悉C语言运行环境 一、 试验目标 1. 了解什么是C语言 2. 熟悉C语言程序开发环境 二、 试验内容和步骤 1. 大学生涯第一个程序 1) 运行Microsoft Visual Studio 或VC6.0 2) 创建项目,选择win32控制台应用程序或空项目,项目名为MyFirstApp 3) 新建项目,选择C++源文件,文件名为HelloWorld 4) 在程序编辑窗口,输入以下代码 #include <stdio.h> /* 主程序 */ void main() { printf("hello world\n"); } 5) 实施程序,Ctrl+F5 6) 观察输出结果,并统计 2. 修改程序 1) 增加语句,观察输出结果是否不一样 printf("hello world\n"); printf("world is me\n"); 2) 删除输出字符串中“\n”,观察输出结果是否不一样 printf("hello world\n"); 3) 进行换行输出,观察输出结果是否不一样 printf("hello, "); printf("world"); printf("\n"); 4) 将上个程序块中printf("\n");去掉,观察输出结果是否不一样 3. 用自己语言,描述下对C语言程序第一印象 4. 简单描述下,第二步骤中,输出结果相同和不一样原因;和“\n”用途 3.2 试验2 数据类型 一、 试验目标 1. 掌握变量命名规则和定义 2. 掌握C语言程序中多种数据类型并使用它们 二、 试验内容和步骤 1. 定义3个变量numInt、numFloat、charInfo,她们类型分别为整型,单精度类型,字符型;并分别初始化为2,2.0和‘A’,最终输出这三个变量值。(变量c输出两次) [输出格式要求以下]: numInt=2,numFloat=2.000000,charInfo=A,charInfo=65 2. 有三个数25、47、36,编写程序求整数200减去这三个数差。 3. 定义一个字符型变量a,将其初始化为‘b’,要求将a值改变为它所对应大写字母‘B’(不许可使用直接赋值a=‘B’方法),最终输出a值。 (提醒:大小写字母之间差32,如:AASCII码为65,aASCII码为97,她们之间差值为32) [输出格式要求以下]: a=B 4. 定义一个字符型变量charInfo,使用scanf语句将charInfo得到一个值,并输出该值。(做此题之前,请先看提供课件) 5. 用scanf 输入数据,圆半径r=1.5和圆柱高h=3,求圆周长、圆面积、圆球体积、圆柱体积。输出计算结果。 6. 由键盘输入底和高,求三角形面积。 7. 从键盘输入两个数为两个变量赋值,然后将两个变量值相互交换,再输出两个变量值。 3.3 试验3 运算符和表示式 一、 试验目标 1. 了解表示式概念 2. 掌握多种运算符和表示式应用 二、 试验内容和步骤 1. 以下程序不用第三个变量,实现将两个数进行对调操作,请填空。 #include <stdio.h> void main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a=a+b; b=a-b; a=____; printf("a=%d,b=%d\n",a,b); } 程序运行结果,如,输入3,4 ,输出: 2. 有程序运行结果以下: 其作用是将分钟数转换为对应小时数,不足一小时显示对应分钟。请将程序补充完整。 #include <stdio.h> void main() { int i=560,h,m; __________; /*计算小时数*/ __________; /*计算分钟数*/ printf("%d分钟<=>%d小时%d分钟\n",i,h,m); } 3. 先计算下面两题,再编程计算下面算术表示式值,并思索和自己计算结果是否一致 1) x + a %3 * (int) (x+y) % 2 / 4 设x=2.5,a=7,y=4.7 2) (float) (a + b ) / 2 + (int) x % (int) y 设a=2,b=3,x=3.5, y=2.5 4. 从键盘输入基础工资,并计算输出实领工资 1) 说明: a) 物价津贴为基础工资40% b) 房租津贴为基础工资25% c) 薪水为三者和 2) 运行结果以下: 请输入基础工资:3000 该职员工资细目为: 基础工资为:3000 物价津贴为:1200.0 房租津贴为:750.0 职员薪水为:4950.0 5. 幸运抽奖:商场推出幸运抽象活动,具体规则以下 1) 输入会员卡号,卡号为4位整数 2) 依据卡号,计算卡号各位数字之和 3) 提醒,采取“%”运算符进行分解数字 【运行结果】 请输入4位会员卡号:8349 会员卡号8349各位数字之和为:24 3.4 试验4 次序结构及输入和输出 一、 试验目标 1. 掌握次序结构程序设计 2. 熟练输入和输出应用 二、 试验内容和步骤 1. 从键盘输入直角三角形两条直角边a,b,编程序计算斜边c。 【算法提醒】 1) 输入a,b值,a,b为实型数据。 2) 依据公式c=sqrt(a*a+b*b),求出c; (程序开头还要使用#include <math.h>,因为程序中要使用求平方根sqrt函数,这个道理和要使用输入输出函数时需要使用#include <stdio.h>道理是一样) 3) 输出c。 2. 编写一个程序,实现功效以下: 在键盘上任意输入一个三位正整数,然后反向输出对应一个数。 比如,你在键盘中输入123,则应输出321。 【算法提醒】 1) 要求数据从键盘输入(scanf函数) 2) 使用以下方法分别得到个、十、百位上数据,再重新组合数据,实现反向输出对应数据(即个位作为百位,百位作成个位) 包含到基础算术符号 中/ 和 %使用 (比如,假设数据为123,要分别取它个、十、百位,再重新组合。参考以下使用方法:123/100=1,123/10=12,123%100=23,123%10=3) 3. 调试下列程序,使之能正确输出3个整数之和及3个整数之积。 #include <stdio.h> main( ) { int a,b,c; printf("Please enter 3 numbers:"); scanf("%d,%d,%d",&a,&b,&c); ab=a+b; ac=a*c; printf("a+b+c=%d\n",a+b+c); printf("a*b*c=%d\n",a+c*b); } 4. 编写一个程序,实现功效以下: 从键盘中输入秒数,将它按小时、分钟、秒形式来输出。比如输入7278秒,则输出2小时1分18秒; 5. 编写程序,输入四个数,并求它们平均值 3.5 试验5 选择结构 一、 试验目标 1. 熟练if语句使用 2. 熟练switch语句使用 二、 试验内容和步骤 以下题目,采取if语句。 1. 编写程序,使之含有以下功效:输入a、b、c三个整数,求最小值。 2. 编写程序,求解下列分段函数: 3. 某托儿所收2岁到6岁孩子,2岁、3岁孩子进小班(Lower class);4岁孩子进中班(Middle class);5岁、6岁孩子进大班(Higher class)。编写程序(用switch语句),输入孩子年纪,输出年纪及进入班号。 如:输入:3 输出:age:3,enter Lower class。 以下题目,采取switch语句。 4. 编写程序,求解下列分段函数:有一函数 以下题目,分别采取if和switch二者语句完成 5. 使用if语句编写“显示某年某月天数”程序: 【分析】:一月、三月、五月、七月、八月、十月、十二月,均为31天。四月、六月、九月、十一月,均为30天。二月,闰年为29天,不是闰年为28天。该题可用switch语句求解,但碰到两个矛盾需处理:怎样表示一月、三月、五月、七月、八月、十月、十二月均为31天?这是第一个矛盾。闰年怎样判定?这是第二个矛盾。 能看到以下运行结果(“, 2”是用户键盘输入,“ 年2 月是 28 天”是程序运行后显示): Please enter year and month : , 2<回车> 2 is 28 days 6. 输入四个数,要求按由小到大次序输出。得到正确结果后,修改程序使之按从大到小次序输出。 7. 给出一个百分制成绩,要求输出成绩等级A,B,C,D,E。90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E 3) 要求分别用if语句和switch语句编程实现,并检验结果是否正确 4) 再运行一次程序,输入分数为负数(如-70),这显然是输入时犯错,不应该出等级。修改程序,使之能正确处理任何数据。当输入数据大于100或小于0时,通知用户“输入数据错”,程序结束。 3.6 试验6 循环结构 一、 试验目标 1. 熟练while语句使用 2. 熟练do…while语句使用 3. 熟练for语句使用 二、 试验内容和步骤 1. 输入一个正整数,将该数逆序输出。 2. 编写程序,求100~200之间全部素数,及其个数。\ 3. 编写程序,输出以下图案: * * * * * * * * * * * * * * * * * * * * * * * * * 4. 编写程序,输出以下图案: * *** ***** ******* ***** *** * 5. (用do-while语句实现)编写程序: 从键盘上输入10个整数,求其平均值。 【注意】 1) 用循环条件设置控制输入个数 2) 整数/整数=整数,如10/4=2,而不是2.5; 【继续思索“由人为控制输入数据个数,你想求多个数平均数就求多个数平均数”,怎样编程 】 6. (用while语句实现)编写程序: 输入不一样半径,输出其所对应圆面积程序,输入半径为负数时结束整个程序运行。 7. (用for语句实现)编写程序: 求1~100之间素数,将每个素数全部打印出来,而且要求每行只显示5个数。 8. 用循环语句编写程序。 9. 实现功效“显示乘法口诀表” The multiplication table ===================== | 1 2 3 4 5 6 7 8 9 横向表头 ------------------------------------------------------------- 1 | 1 2 | 2 4 3 | 3 6 9 4 | 4 8 12 16 5 | 5 10 15 20 25 6 | 6 12 18 24 30 36 7 | 7 14 21 28 35 42 49 8 | 8 16 24 32 40 48 56 64 9 | 9 18 27 36 45 54 63 72 81 纵向表头 积 10. 编写程序实现输入整数n,输出以下所表示由数字组成菱形。(图中n=4) 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 2 1 1 2 1 1 3.7 试验7 数组(1) 一、 试验目标 1. 掌握数组应用 2. 熟悉二维数组应用 二、 试验内容和步骤 1. 以表格形式输入5笔购物金额,最终输出各笔信息和总金额 【运行结果】 请输入第1笔购物金额:123.6 请输入第2笔购物金额:45.7 请输入第3笔购物金额:325.7 请输入第4笔购物金额:99.0 请输入第5笔购物金额:128.0 序号 金额(元) 1: 123.6 2: 45.7 3: 325.7 4: 99.0 5: 128.0 总金额 722.0 2. 编写一个程序输入4×4数组,编写程序实现: 1) 求出对角线上各元素和; 2) 求出对角线上行、列下标均为偶数各元素积; 3) 找出对角线上其值最大元素和它在数组中位置。 3.8 试验8 数组(2) 一、 试验目标 1. 掌握数组冒泡排序和插入排序 2. 熟悉数组折半查找 二、 试验内容和步骤 1. 编写程序(采取冒泡排序和插入排序两种方法实现),任意输入10个整数数列,先将整数根据从大到小次序进行排序,然后输入一个整数插入到数列中,使数列保持从大到小次序。 2. 利用上题排序好数组,进行折半查找一个数组具体位置。 3.9 试验9 字符串及其操作 一、 试验目标 1. 了解字符串和数组关系 2. 掌握字符串函数使用 二、 试验内容和步骤 1. 编写一个程序,对给定一串字符串s="Iamastudent",取得该字符串从索引3到7子串,并将结果显示出来。 2. 程序要求以下: 给定字符串:this is java for you,java is good for programming! 编写代码:完成以下要求: 5) 打印这个字符串长度。 6) 打印第一次出现字符a位置。 7) 打印最终一次出现字符串"for"位置 3. 将字符串全部转为大写并打印。 3.10 试验10 函数 一、 试验目标 1. 掌握函数定义 2. 熟悉函数调用 3. 了解实参和形参区分 二、 试验内容和步骤 1. 编写一个求水仙花数函数,求3位正整数全部水仙花数中次大值。所谓水仙花数是指三位整数各位上数字立方和等于该整数本身。比如:153就是一个水仙花数:153 = 13 + 53 + 33 2. 任意输入一个4位自然数,调用函数输出该自然数各位数字组成最大数。 3. 编写一个函数,对输入整数k输出它全部素数因子。 比如:当k=126时,素数因子为:2,3,3,7。 要求按以下格式输出:126 = 2 * 3 * 3 * 7。 3.11 试验11 结构体 一、 试验目标 1. 掌握结构体定义 2. 熟悉结构体初始化 二、 试验内容和步骤 1. 有5个学生,每个学生数据包含学号、姓名、三门课成绩,从键盘输入5个学生数据,要求打印出三门课总平均成绩,和三门课总分最高学生数据(包含学号、姓名、三门课成绩、平均分数)。要求用一个input函数输入5个学生数据;用一个average函数求总平均分;用max函数找出最高分学生数据;总平均分和最高分学生数据全部在主函数中输出。 3.12 试验12 指针 一、 试验目标 1. 了解指针意义 2. 掌握指针变量和指针运算符使用 二、 试验内容和步骤 1. 在主函数中任意输入10个数存入一个数组,然后根据从小到大次序输出这10个数,要求数组中元素根据输入时次序不能改变位置。 2. 请编程读入一个字符串,并检验其是否为回文(即正读和反读全部是一样)。 比如:读入:MADA M I M ADAM. 输出:YES 读入:ABCDBA. 输出:NO 3. 自己编写一个比较两个字符串s和t大小函数strcomp(s,t),要求s小于t时返回-1,s等于t时返回0,s大于t时返回1。在主函数中任意输入4个字符串,利用该函数求最小字符串。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 基础 语言 试验 指导书
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文