文档库 最新最全的文档下载
当前位置:文档库 › 城市学院c语言实训题目求答案

城市学院c语言实训题目求答案

城市学院c语言实训题目求答案
城市学院c语言实训题目求答案

《C程序设计》题目

任务训练:

1、剪刀、石头、布游戏

【掌握编程的基本思路与方法。分析数据、算法(操作、控制)】

模拟该游戏的进行。要求有提示信息表征游戏进行和结果。

注意:

1)基本思路与方法。算法的设计。

2)重点在将生活中的问题如何建立计算机模型。

3)画出流程图。

2、简单计算器

【掌握编程的基本思路与方法。分析数据、算法(操作、控制)】

编写一个程序,从键盘上输入一个算术表达式,把计算的结果显示出来。

注意:

1)掌握操作符的优先级及结合性。

2)掌握字符的读取分析方法。

3)getchar() 函数使用问题。

功能说明:

按下列某个难度级别,对含有操作符和操作数的算术表达式进行分析和计算。

难度级别一:

操作符增加”﹡”、”/”和”%”,操作数增加非负浮点数(如2.0,816.73等)。

难度级别二:

在级别一的基础上,增加多次算术运算。甚至结合图形编程。

难度级别三:

在级别二的基础上,操作符增加”(”、”)”、正”+”和负”-”,操作数增加负数。

3、加油站加油问题

【掌握编程的基本思路与方法。分析数据、算法(操作、控制)】

某加油站有a,b,c三种汽油,售价分别为3.25,3.00,2.75(元/千克),也提供“自己加”或“协助加”两个服务等级,这样用户可以得到5%或10%的优惠。编程实现针对用户输入加油量x,汽油的品种y和服务的类型z,输出用户应付的金额。

提示:采用switch语句来实现不用选择的输出

4、猜数游戏

【掌握编程的基本思路与方法。】

计算机“想”一个数请人猜,如果猜对了,提示“Right!”,否则“Wrong!”,并告诉所猜的数是大还是小,直到猜对结束。

注意:

1)函数rand()、srand()、time()的学习。

2)scanf() 函数使用问题。

3)画出流程图。

5、万年历

【综合编程、结构控制】

打印出全年年历。输入四位数年份和该年元旦星期几。提示:一年12个月,计算第month 月的天数;输出第month月的年历。1)Max?Day有大小月、闰年之分2)输出年历。月份表头、星期表头、该月份第一天位置、输出日历

注意:

1)重点练习编程能力,熟悉掌握所有控制结构;

2)熟悉掌握break和continue语句的使用。

3)代码风格问题。

6、模拟ATM取款机输入界面

模拟取款机界面,为后面做程序系统设计打基础。A TM机操作界面,主要实现取款功能,在取款操作前用户要先输入密码,密码正确才可进行取款操作,取款时将显示取款金额及剩余金额,操作完毕退出程序。

【综合编程、结构控制。重点分析思路,界面合理性。】

7、学生成绩问题

某班多门考试科目,学号、各科分数、总分、平均分。统计并打印每门课的总分和平均分。

【综合编程、结构控制。二维数组。函数。指针。】

8、选票统计

任务说明:班级竞选班长,共有3个候选人,输入参加选举的人数及每个人选举的内容,输出3个候选人最终的得票数及无效选票数。

技术要点:这个任务是一个典型的一维数组应用,这里要说的一点就是C语言规定只能逐个引用数组元素,不能一次引用整个数组,这个任务提现了在对数组元素进行判断时只能通过for语句对数组中的元素一个一个的引用

【综合编程、结构控制。重点分析思路,界面合理性。】

项目分析:

读简易的系统项目源程序,包括管理类、图形设计类程序。

1、打字母游戏

要求进行代码分析和绘制出流程图。

在阅读程序基础上,自行增加相应功能。

加深对函数、模块等基本概念的理解。

2、时钟显示

加深C语言中,指针、结构体、文件的学习与使用。

讲解利用C语言进行图形设计、音乐设计等程序。

项目开发:

1、学生成绩管理

要求学生进行数据结构的设计、对函数进行模块化结构化设计、并灵活运用数组、结构体、指针、文件等多种数据类型设计开发系统。通过写程序,学生应掌握用计算机程序设计语言解决实际问题的方法、步骤。该系统由如下几大功能模块组成:

1)输入记录模块;

2)查询记录模块;

3)更新记录模块;

4)统计记录模块;

5)输出记录模块。

2、旅店管理

要求学生进行数据结构的设计、对函数进行模块化结构化设计、并灵活运用数组、结构体、指针、文件等多种数据类型设计开发系统。通过写程序,学生应掌握用计算机程序设计语言解决实际问题的方法、步骤。该系统由如下几大功能模块组成:

1)输入记录模块;

2)查询记录模块;

3)更新记录模块;

4)输出记录模块。

3、工资管理

4、宿舍管理

5、电话薄

6、飞机售票管理

c语言实训心得

C语言实践心得体会 在这个星期里,我们在专业老师的带领下进行了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。 由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。 学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。个人认为课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面: 1、加深对课堂讲授内容的理解 课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用c语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。 学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。 通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去"掩盖"程序中的错误,而不是尽可能多地发现程序中存在的问题。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发能力。 2、熟悉程序开发环境、学习计算机系统的操作方法 一个c语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓"环境"就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。 3、学习上机调试程序

c语言试题及答案

1、以下正确的说法是( B ) (A) 用户若需要调用标准库函数,调用前必须重新定义 (B) 用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C) 系统根本不允许用户重新定义标准库函数 (D) 用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是( A ) (A) double fun(int x, int y) (B) double fun(int x; int y) (C) double fun(int x, int y); (D) double fun(int x,y); 3、以下正确的函数形式是( D ) (A) double fun(int x, int y) { z=x+y; return z;} (B) fun(int x,y) { int z; return z;} (C) fun(x,y) { int x,y; double z; z=x+y; return z;} (D) double fun(int x, int y) { double z; z=x+y; return z;} 4、以下正确的说法是( A ) 在C语言中 (A) 实参和与其对应的形参各占用独立的存储单元 (B) 实参和与其对应的形参共占用一个存储单元 (C) 只有当实参和与其对应的形参同名时才共占用存储单元 (D) 形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是( A ) 该函数 (A) 没有返回值 (B) 返回若干个系统默认值 (C) 能返回一个用户所希望的函数值 (D) 返回一个不确定的值 6、以下不正确的说法是( B ) C语言规定 (A) 实参可以是常量、变量和表达式 (B) 形参可以是常量、变量和表达式 (C) 实参可以为任意类型 (D) 形参应与其对应的实参类型一致 7、以下正确的说法是( C ) (A) 定义函数时,形参的类型说明可以放在函数体内 (B) return后边的值不能为表达式 (C) 如果函数值的类型与返回值类型不一致,以函数值类型为准 (D) 如果形参与实参的类型不一致,以实参类型为准 8、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是( B ) (A) 地址传递 (B) 单向值传递 (C) 由实参传给形参,再由形参传回给实参 (D) 由用户指定传递方式

C语言实训作业1

《C语言通识教育》实训指导书 (第一次) (2学时) 何天成 2016年月日

前言 C 语言是现代最流行的通用程序设计语言之一,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点,既可以用来编写系统程序,又可以用来编写应用程序。因此,C 语言正在被迅速地推广和普及。上机实验是该课程教学的一个重要环节,因此要求学生做一定数量的上机实验。本指导书可增强同学上机实验的针对性。整个教学和实验中,采用VC++6.0 作为实验环境,强调学生切实培养动手实践能力,掌握调试程序的方法,通过调试理解C语言程序运行的过程以及C 语言的语法规则,为后续的课程设计,计算机等级考试及其他应用做好充分的准备。 本实验指导书通过大量的实例,循序渐进地引导学生做好各章的实验。共计约14次实训课,其中每一讲内容分1、2两次上课。每个实验内容结构如下: (1)实验学时 (2)实验目的 (2)预习要求 (4)实验内容 (5)实验注意事项 (6)思考题 其中思考题属于扩展应用部分,学生可以根据自己的学习情况选择完成。 在实验之前,要求学生对实验作好预习工作。在实验中,学生根据实验指导中的内容进行验证与总结,然后再去完成实验内容中安排的任务。一般要求准备好相关代码,实验课中最好以调试和讨论为主。 实验结束后,应及时先以电子版的形式填写实验报告,然后再以A4纸打印。第3次实训课上交前2次实训报告,要求源程序要以标准格式打印实验报告上都必须粘贴上每个程序的运行结果截图,并在每个程序的输出截图中添加上自己的姓名/学号/专业等信息,以表示程序执行结果确是自己调试,而不是copy 别人的运行结果。通报告具体内容可根据实验内容和实验要求进行增删。实验报告一般要求包含:(1)实验题目 (2)设计思路或算法分析 (3)流程图 (4)程序源代码 (5)程序运行结果及分析

C语言实训题目及要求2020

C语言实训题目 第一题、每组从下面的5个题目中选择一个完成。 1、猜数游戏 涉及知识点:循环、随机数操作。 计算机“想”一个数([1,100])请人猜,如果猜对了,提示正确信息;否则告诉所猜的数是大还是小,同时提示下一次猜数的范围,直到猜对结束,最后给出游戏者猜测的次数。要求,程序以菜单方式工作。 2、显示万年历 涉及知识点:循环、格式化输出。 设计一个程序实现万年历的显示,要求: (1)输入一个年份(1900-2040),在屏幕上输出该年的日历。 (2)输出年历时,以月份和星期做表头。 (3)系统以菜单方式工作。 3、显示月历 涉及知识点:循环、格式化输出。 设计一个程序实现月历的显示,要求: (1)输入年月信息,在屏幕上输出该月的日历。 (2)输出日历时,以月份和星期做表头。 (3)系统以菜单方式工作。 4、英文单词统计助手 涉及知识点:循环、字符串数组(二维字符数组)、一维字符数组、数组元素的排序。 设计一个程序实现英文短文单词的统计任务,要求: (1)输入若干行英文,语句之间用逗号,句点分隔,单词之间用空格分隔。 (2)统计并输出单词的总数。 (3)统计各英文字符出现的次数(标点符号及空格不统计),并按出现的次数降序输出。(4)系统以菜单方式工作。 5、简单文本编辑器 涉及知识点:循环、字符串数组(二维字符数组)、一维字符数组、字符串处理函数。 设计一个程序实现英文文本的编辑,要求: (1)输入若干行英文,语句之间用逗号,句点分隔,单词之间用空格分隔。 (2)单词的查找:输入一个单词,查找该单词在短文中出现的次数及所在的行数和列数。(3)单词的替换:输入一个单词,在文中查找该单词,并将其替换为新单词。 (4)大小写转换:将文中的所有单词转换为大写或小写。 (5)系统以菜单方式工作。 第二题、每组从下面的4个题目中选择一个完成。(每个题目最多限选3次) 6、简单数学测验 涉及知识点:循环、文本文件操作、格式化读写文件、随机数、全局变量。

C语言试卷及答案

一、选择题(每题 1 分,共 20 分) 1. C 语言程序的三种基本结构是顺序结构、选择结构和结构。 A、循环 B、递归 C、转移 D、嵌套 2. 下列标识符中,合法的是_______ 。 A) unsigned B) 5ab C) INT# D)_num2 3. 若float x ;x = 10/4 ;x的值是。 A、2.5 B、2.0 C、3 D、 2 4. 表达式!x 等价于。 A、x==0 B、x==1 C、x != 0 D、x != 1 5. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为。 A、算术运算、赋值运算、关系运算 B、关系运算、赋值运算、算术运算 C、算术运算、关系运算、赋值运算 D、关系运算、算术运算、赋值运算 6. 能将高级语言编写的源程序转换为目标程序的是。 A、链接程序 B、解释程序 C、编译程序 D、编辑程序 7. 下列语句定义pf为指向float类型变量f的指针,是正确的。 A、float f, *pf = f; B、float f, *pf = &f; C、float *pf = &f, f; D、float f, pf = f; 8. 一个C程序的执行是从。 A、本程序的main函数开始,到main函数结束 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C、本程序的main函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 9. 能正确表示“当x的取值在[1,10]或[[200,210]范围内为真,否则为假”的表达式是________。 A、(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B、(x>=1)||(x<=10)||(x>=200)||(x<=210) C、(x>=1)&&(x<=10)||(x>=200)&&(x<=210) D、(x>=1)||(x<=10)&&(x>=200)||(x<=210) 10. 对两个数组a和b进行如下初始化 char a[]=“ABCDEF”;char b[]={ …A?,?B?,?C?,?D?,?E?,?F?}; 则以下叙述正确的是。 A、a和b数组完全相同 B、a和b长度相同 C、a和b中都存放字符串 D、a数组比b数组长度长 11. 是不正确的字符常量。 A、'\n' B、'1' C、"a" D、'\101' 12. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和等价。 A、k=(a>b)?1:0; B、k=a>b; C、k=a<=b; D、a<=b ? 0 : 1; 13. 设变量定义为“int x, *p=&x;”,则&*p相当于。 A、p B、*p C、x D、*&x 14. 有两个字符数组a、b,则以下正确的输入语句是。 A)gets(a,b); B) scanf(“%s%s”,a,b); C) scanf(“%s%s”,&a,&b); D) gets(“a”),gets(“b”); 15. C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是。 A、地址传递 B、单向值传递

C语言实训

C语言实训 《C语言程序设计》实训 一. 实训目的: 1.熟悉编程环境; 2.练习输入输出函数; 3.学生成绩管理系统的设计。 二. 实训要求: 1.完成对学生成绩管理系统控制菜单的设计。完成管理菜单的界面; 2.输入:运用输入函数把10个学生的语文、英语、数学、体育、计算机5门课程的成绩放在一个数组,成绩由键盘输入;

3.计算:计算生成5门课程的平均成绩及10个学生的平均成绩,分别放在对应的数组中; 4.查找:查找并输出最高分数所对应的学生及课程; 5.计算:计算生成学生平均分方差; 6.main调用所有函数,实现全部函数功能。 三.实训内容: 1.流程图:

2.程序: #include #include int main() { printf("********************************************\n"); printf("* ==================== *\n"); printf("* 学生成绩统计系统*\n"); printf("* ==================== *\n"); printf("* *\n"); printf("* 1.输入学生成绩*\n"); printf("* 2.计算平均成绩*\n"); printf("* 3.查找最高成绩*\n"); printf("* 4.计算平均分方差*\n"); printf("* 5.退出系统*\n"); printf("* *\n"); printf("********************************************\n"); printf("请输入选项(1--5):\n"); int n; while (scanf("%d",&n)) { int a[10][5],i,j; int num[5]={0}; float subject[5],student[10],s; float sum=0,aver; switch(n) { case 1: //输入学生成绩printf("请输入成绩\n"); for(i=0; i<10; i++) { printf("学生%d\n",i+1); for(j=0;j<5;j++) { printf("科目%d: ",j+1); while(scanf("%d",&a[i][j]) != 1) //误输入判断 {

C语言实训报告

C语言程序设计 实训报告 题目:红外避障机器人 院(系):信息工程系 专业:通信工程 学生姓名:韦嘉宝 学号: 24 指导教师:朱震周斌王旬全刘辉 2016 年10月8 日 目录 摘要 (1) 设计要求 (2) 设计步骤 (3) 代码编写 (4) 心得体会 (5) 参考文献 (6)

许多机器人使用雷达(RADAR)或者声纳(SONAR)来探测物体而不需要同物体接触。本文的方法是使用红外光来照射机器人前进的路线,然后确定何时有光线从被探测目标反射回来,通过检测反射回来的红外光就可以确定前方是否有物体。由于红外遥控技术的发展,现在红外线发射器和接收器已经很普及并且价格很便宜。 随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器、并行和串行接口、看门狗、前置放大器、A/D转换器、D/A转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。这种技术促使机器人技术也有了突飞猛进的发展,目前人们已经完全可以设计并制造出具有某些特殊功能的简易智能小车。 机器人使用红外线二极管LED 作为前灯,如图6-1 所示。红外线二极管发射红外光线,如果机器人前面有障碍物,红外线从物体反射回来,相当于机器人眼睛的红外检测(接收)器,检测到反射回的红外光线,并发出信号来表明检测到从物体反射回红外线。机器人的大脑——单片机A T89S52 基于这个传感器的输入控制伺服电机。红外线(IR)接收/检测器有内置的光滤波器,除了需要检测的980 nm 波长的红外线外,它几乎不允许其他光通过。红外检测器还有一个电子滤波器,它只允许大约38.5 kHz 的电信号通过。换句话说,检测器只寻找每秒闪烁38500 次的红外光。这就防止了普通光源像太阳光和室内光对IR 的干涉。太阳光是直流干涉(0Hz)源,而室内光依赖于所在区域的主电源,闪烁频率接近100 Hz 或120 Hz。由于120 Hz 在电子滤波器的38.5 kHz 通带频率之外,它完全被IR 探测器忽略。 本任务将搭建并测试红外线发射和检测器对。本讲需要用到的新部件如下: 元件清单 (1)红外检测器,2 个。 (2)IR LED(带套筒),2 个。 (3)470? 电阻,2 个。 (4)连接线,若干。 二、设计要求 (1)小车能够完成前进、后退、左转、右转等动作。 (2)机器人能够读出传感器电平变化,并作相应的动作变化。 (3)利用机器人所装配的两个探测器,探测和避开障碍物。 三、设计步骤

C语言实训题目

2011秋季C语言实训题目 1.学生成绩管理系统 功能要求: (1)可以从文件导入或录入多名学生的多门课程的学习成绩; (2)完成按姓名查找学生记录,并显示; (3)排序功能:按学生平均成绩进行排序; (4)插入功能:按平均成绩高低插入一条学生记录; (5)要求使用结构体,录入结果存放到文件; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 2.个人通讯录 功能需求: (1)可以对多名人物的信息进行输入; (2)显示所有的记录信息,若无记录,则给出提示信息; (3)可以按姓名查询该记录的有关信息; (4)可以按姓名对任意一种记录信息进行删除; (5)可以任意修改记录信息 (6)通过文件储存所输入的记录; (7)可以通过一个文件读入已有的通信录记录; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 3. 火车订票系统 功能要求: (1)列车原始信息从文件导入或从控制台录入,包括车次、票数等; (2)可以按车次进行列车信息查询; (3)客户对某一天订票,订票成功后,当日的票数需要被更改; (4)客户退票; (5)要求使用结构体; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 4、万年历系统 功能要求: (1)从2000年开始,用户输入年份与月份,将显示出该年该月份的日历,对应的星期。

(2)注意闰年情况 显示格式要求如下: (1)第一行显示月份(中英文都可以) (2)下一行显示星期,从周日到周六,中英文都可以 (3)下一行开始显示日期从1号开始,并按其是星期几实际情况与上面的星期数垂直对齐(4)程序输出菜单,用户按照提示操作,最终得到计算结果。 5、积分的实现 功能要求: (1)使用复合梯形公式求解函数f=1+x2、f=log(1+x)以及f=1/(1+x2)三个函数的定积分。(2)积分上下限及步长由C语言函数参数传递。 (3)用户输入函数编号,上下限和步长,程序输入结果。 显示要求: 程序输出菜单,用户按照提示操作,最终得到计算结果。 6、矩阵的运算 功能要求: 使用三个C语言函数分别实现两个矩阵的加、减和相乘功能。结果存放在第三个矩阵中。并编写程序验证三个函数功能。 每个函数的参数可选择(1):二位数组名,行数,列数 (2)指针变量名,行数,列数 返回值:用户自定义的运算状态,正常或其他异常情况。 显示要求: 程序输出菜单,用户按照提示操作,最终得到计算结果。 7. 链表的实现 编制一个程序,实现下面的要求 1. 程序启动后显示主菜单,包括下面的选项: 1. 链表查看 2. 插入节点 3. 删除节点 4. 链表存盘 5. 从文件调入 6. 退出 按下相应的数字键后进入各自的子功能 2. 每个子功能执行完毕后,返回并显示主菜单 3. 功能说明: 1. 链表查看:从头结点向后依次显示各结点中保存的数据 2. 插入节点:创建一个结点,输入新结点的数据,以及要插入的位置,将新结点插 入到链表中。 3. 删除节点:输入要删除的数据,从头结点依次查找,找到拥有该数据的结点后,

C语言全部题目及答案

C语言全部题目及答案 SANY GROUP system office room 【SANYUA16H-

C语言全部题目及答案 Exercise 1: Programming Environment and Basic Input/Output 1.Write a program that prints “This is my first program!” on the screen. (a)Save this program onto your own disk with the name of e2-1a; (b)Run this program without opening Turbo C; (c)Modify this program to print “This is my second program!”, then save it as e2-1b. Please do not overwrite the first program. 2.Write a program that prints the number 1 to 4 on the same line. Write the program using the following methods: (a)Using four “printf” statements. (b)Using one “printf” statement with no conversion specifier(i.e. no ‘%’). (c)Using one “printf” statement with four conversion specifiers 3.(a) Write a program that calculates and displays the number of minutes in 15 days. (b) Write a program that calculates and displays how many hours 180 minutes equal to. (c) (Optional) How about 174 minutes?

C语言实训项目分析及源码

防灾科技学院 实习报告书 防灾科技学院灾害信息工程系 2015年制

项目一C语言实习 一、实习目的 本课程是网络工程专业的一门专业必修课程,是学生学习完C语言程序设计专业基础课程后,进一步学习其他专业课程前必须完成的一项实践教学环节。 本次实习通过1个综合性强、实用性强、趣味性强的应用实例,使学生进一步巩固C语言基本知识,掌握应用程序设计语言描述问题、分析问题和解决问题的方法和思想,为后继的面向对象程序设计、数据结构、Web应用技术、网络工程专业实习、网络工程生产实习、网络工程毕业实习课程等课程打下基础。 通过本课程的学习,使学生进一步明确学习目标、增强学习动力、培养学习兴趣。 二、实习任务概述 任务一:员工工资管理系统的设计与实现 本系统基于C语言,实现了一个小型的信息管理系统,主要包括以下功能: 1.信息的录入: a)首次进入系统,可以添加职工的工号、姓名、基 本工资、津贴、员工奖金等数据录入操作。 b)系统再次登录,可以从文件导入信息,也可以对 文件内容进行修改,保存退出。 2.删除操作:对离职的员工信息要从系统里删除。 3.显示操作:将结构体中职工信息输出到屏幕上。 4.查询与修改操作:分别按职工工号和职工姓名查询,修改职工信息并保存。 5.统计与排序操作:分别统计所有员工的总工资,实现对总工资的排序。 三、实习所用软件简介 VC++6.0是Microsoft公司推出的一个基于Windows系统平台、可视化的集成开发环境,它的源程序按C++语言的要求编写,并加入了微软提供的功能强大的MFC(Microsoft Foundation Class)类库。使用VC++提供的高度可视化的应用程序开发工具和MFC类库,可使应用程序开发变得简单。 使用VC++提供的高度可视化的应用程序开发工具和MFC类库,可使应用

C语言专业技能实训专题报告

实训专题报告 题目:贪吃蛇游戏控制台应用及proteus 仿真的实现 实训名称:专业技能实训 班级: 学号: 学生姓名: 指导教师: 哈尔滨工程大学 2016年02月10日

哈尔滨工程大学本科生专业技能实训专题报告 摘要 随着计算机及通讯技术的迅猛发展,人们对小游戏的追求也越来越频繁,所以就有了本文的产生:编写C语言程序实现贪吃蛇游戏。 贪吃蛇游戏是一个深受人们喜爱的游戏,一条蛇在密闭的围墙内,在围墙内随机出现一个食物,通过按键盘上的四个光标键控制蛇向上下左右四个方向移动,蛇头撞到食物,则表示食物被蛇吃掉,这时蛇的身体长一节,同时计10分,接着又出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁或身体交叉蛇头撞到自己的身体游戏结束。 作为一个完整的程序,必须考虑人机交流与用户体验。游戏的界面不能太丑,更不能连个简单的界面都没有。游戏应该有个比较漂亮的界面,在有必要硬件支持和软件的支持下,游戏开发者必须最大限度的使游戏美观。游戏的美观是一方面,游戏的内在素质是另一方面。一个游戏的优劣,最终由玩家决定。在游戏与玩家见面之前,游戏开发者要设计一种让玩家投入的游戏模式,并且在一定的游戏规则下进行。 在实现C语言部分的设计后,我们也完成了在proteus的环境中实现仿真,将程序进行迁移扩展,来达到通过仿真也能实现在单片机模拟环境中进行游戏。使得游戏更具有趣味性和新鲜感。 关键词:贪吃蛇;C语言;proteus仿真

哈尔滨工程大学本科生专业技能实训专题报告 1系统设计与算法分析 1.1需求分析与系统总体设计 根据课题所在项目的要求,需要开发出一款贪吃蛇小游戏,既能实现在控制台进行操作,同时也能将代码迁移到指定环境(protues仿真)中并实现相应的功能。这个游戏是人们生活中不可或缺的,从小到大,真正伴随我们成长的东西,游戏占有着很重要的地位.不论是一个玩具,还是一个能和伙伴一起开心的小游戏,都是能给我们留下很多美好的回忆.所以不论是什么样的游戏,只要它能迎合人们内心的某种需求,它的市场总会是好的,而贪吃蛇就是这样一个深受人们喜爱的游戏。一条蛇在密闭的围墙内,在围墙内随机出现一个食物,通过按键上的四个光标键控制向上下左右四个方向移动,蛇头撞到食物,则表示食物被吃掉,这时蛇身体长一节,同时计10分,接着又会随机的出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁或身体交叉蛇头撞到自己的身体则游戏结束。结合以上分析,我们可以得到整个游戏的系统流程图,如图1.1。 1

c语言期中考试试题及答案

《C语言程序设计》期中考试试卷 课程编号:03402513试卷类型:A卷考试形式:笔试考试日期: 注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。4.草稿纸用试卷的背面。 一、单项选择题(1空1分,共20分) 1、C语言程序的基本结构是(【1】) 。 【1】A) 函数B) 语句C) 字符D) 程序行 2、一个C程序的执行是(【2】) 。 【2】A) 从本程序的主函数开始,到本程序的主函数结束 B)从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是(【3】) 。 【3】A) 一个C源程序必须有且只能有一个主函数 B) 一个C源程序可以含一个或多个子函数 C) 在C源程序中注释说明必须位于语句之后 D) C源程序的基本结构是函数 4、下面不属于C语言保留字的是(【4】) 。 【4】A) short B) ELSE C) extern D) for 5、下列四个叙述中,正确的是(【5】) 。 【5】A) 库函数也是C语言本身的组成部分 B) C语言中的输入输出操作是由相应语句完成的 C) 库函数是C编译系统提供的功能函数 D) 标题文件(头文件)可以在程序的函数内部调用 6、下列四组数据类型中,C语言允许的一组是(【6】)。 【6】A) 整型、实型、逻辑型B) 整型、实型、字符型 C) 整型、双精度型、布尔型D) 整型、实型、复型 7、在C语言中不同数据类型的的长度是(【7】)。 【7】A) 固定的B) 由用户自己定义的 C) 任意的D) 与机器字长有关

C语言实训总结

(表D.0.2)---绿化(子单位)工程质量竣工验收报告表29804 实训总结报告 为期两周的项目工作就这样轻轻的落下了帷幕,在为期两周的时间中,我们同组的同学共同的感受是:C语言实训和平时上课所接触的程序是有很大不同的,所经受的考验和克服的困难是平时所无法比拟的。好在同组的搭档们精诚合作,分工明确,有问题共同解决,攻克了C语言实训的复杂程序。在这里,我作为其中的参与者,回想起这之间的点点滴滴,我感触良多。 在这次实训中,我对对C语言有了一个更深的了解认识,也对以前大一学的知识得到巩固。尝试运行编程中,每次运行程序成功,让我对下面的项目就充满信心。通过自己与同学合作编写程序,最终把最初的理论知识转化基本技能。这次的实训,使我对C语言的学习产生浓厚的兴趣。 这次实训,最令人激动的就是合作做项目,虽然那只是一个很小的项目。每天大家来得很早,大家在一起学习,取长补短,我们很好的在实训中长知识,提高我们的学习热情。实训中深切体会到了千哥认真负责的伟大精神和热情为同学指导的促学方式,虽然对有些时候老师没给我们指出解决问题的方法有些小抱怨,但是到了结束时才知道,这种教学方式让我们自己学会了自学,学会了去看懂别人的代码。更多是老师给的感动,每天在我们来之前就到了教室,在讲课中还给我们分享他在公司上班的一些心得和体会,还有那些我们应该注意的事项,这些是平时上课时无法学到的,是更深层次的巨大收获。 通过这次实训,也使我们发现了许多问题。我认识到自己还有很多的知识没学好,基础知识没理清,而且许多东西还要去翻书,去上网搜索。而且遇到一些小错误运行不出来,就会烦躁不安,觉得有些自暴自弃或者抱怨项目的态度,以后要克服,尽量保持一颗良好的心态,学好C语言,也学好用C语言编写一个按要求的系统。还有就是对于未来,我觉得我还有许多方面需要提高。首先我要继续学习好C语言的基础知识,然后能在电脑上熟练的运用。然后每天都能写一些程序,上网时候多看一些优秀的教程和优秀的代码。遇到问题时多和同学讨论,并且多弄出几套方案,多锻炼自己结局问题的能力和与同学合作的能力。 总之,这一切都成为我记忆里面的一个篇章,更是在学习C语言编程上的一个里程碑。世上没有一件工作不辛苦,没有一处人事不复杂。不要随意发脾气,谁都不欠你的 c1

C语言实训题目

2011秋季 1.学生成绩管理系统 功能要求: (1)可以从文件导入或录入多名学生的多门课程的学习成绩;(2)完成按姓名查找学生记录,并显示; (3)排序功能: 按学生平均成绩进行排序; (4)插入功能: 按平均成绩高低插入一条学生记录; (5)要求使用结构体,录入结果存放到文件; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 2.个人通讯录 功能需求: (1)可以对多名人物的信息进行输入; (2)显示所有的记录信息,若无记录,则给出提示信息;(3)可以按姓名查询该记录的有关信息; (4)可以按姓名对任意一种记录信息进行删除; (5)可以任意修改记录信息 (6)通过文件储存所输入的记录; (7)可以通过一个文件读入已有的通信录记录;

显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 3.火车订票系统 功能要求: (1)列车原始信息从文件导入或从控制台录入,包括车次、票数等; (2)可以按车次进行列车信息查询; (3)客户对某一天订票,订票成功后,当日的票数需要被更改; (4)客户退票; (5)要求使用结构体; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 4、万年历系统 功能要求: (1)从2000年开始,用户输入年份与月份,将显示出该年该月份的日历,对应的星期。 (2)注意闰年情况 显示格式要求如下: (1)第一行显示月份(中英文都可以) (2)下一行显示星期,从周日到周六,中英文都可以 (3)下一行开始显示日期从1号开始,并按其是星期几实际情况与上面的星期数垂直对齐

(4)程序输出菜单,用户按照提示操作,最终得到计算结果。 5、积分的实现 功能要求: (1)使用复合梯形公式求解函数f=1+x 2、f=log(1+x)以及f=1/(1+x2)三个函数的定积分。 (2)积分上下限及步长由C语言函数参数传递。 (3)用户输入函数编号,上下限和步长,程序输入结果。 显示要求: 程序输出菜单,用户按照提示操作,最终得到计算结果。 6、矩阵的运算 功能要求: 使用三个C语言函数分别实现两个矩阵的加、减和相乘功能。结果存放在第三个矩阵中。 并编写程序验证三个函数功能。 每个函数的参数可选择 (1): 二位数组名,行数,列数 (2)指针变量名,行数,列数 返回值: 用户自定义的运算状态,正常或其他异常情况。 显示要求:

c语言试题及答案 ()

第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由

主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 37 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。

C语言实训方案

编程训练方案 1、训练意义和目的 使学生综合使用所学过的C语言程序设计知识,掌握结构化程序设计的基本思路和方法,利用所学的基本知识和技能,发挥自学能力和查找资料的能力,解决稍微复杂的结构化程序设计问题,加深对所学知识的理解与掌握,增强学生利用自己所学知识解决实际问题的能力,为以后的程序开发打下基础。 目的和要求: ◆使学生巩固和加强《C语言程序设计》课程的理论知识。 ◆使学生掌握C语言的基本概念、语法、语义和数据类型的使用特点。 ◆使学生掌握C语言程序设计的方法及编程技巧,能正确使用C语言编写程 序。 ◆进一步理解和运用结构化程设计的思想和方法;学会利用流程图或N-S图 表示算法。 ◆使学生掌握调试程序的基本方法及上机操作方法。 ◆掌握书写程设计开发文档的能力,使学生学会撰写课程设计总结报告。课 程设计的思想和方法还可以作为学生做毕业论文时的参考资料。 ◆通过查阅手册和文献资料,培养学生独立分析问题和解决问题的能力。为 学生做毕业设计打好基础。 ◆初步掌握开发一个小型实用系统的基本方法:结合实际应用的要求,使课 程设计既覆盖知识点,又接近工程实际需要。通过激发学习兴趣,调动学生主动学习的积极性,并引导他们根据实际编程要求,训练自己实际分析问题的能力及编程能力,并养成良好的编程习惯。 ◆培养学生的创新能力和创新思维。学生可以根据指导书和相关文献上的参 考算法,自己设计出相应的应用程序。 ◆培养学生良好的程序设计风格。在实际编程中,为了提高编程质量,对空 行、空格和注释均有要求。学生在课程设计书写代码时,应该严格按要求处理,以便建立良好的程序设计风格。

2、训练目标及要求 参加训练的学生,应当认真完成设计的全部过程。并以最终设计成果来证明其独立完成各种实际任务的能力。从而,反映出理解和运用本课程知识的水平和能力。 A、分析问题。各种简单的与计算机有关的案例中所需要的输出结果,把大问题分解成小问题,使用自顶向下或类似设计方法给出模块化或计划。 B、提出算法执行特定任务。模块表示为算法,使用自顶向下或伪代码等设计手段将模块细化成更详细的成分,清楚地表明顺序、选择和重复等到控制结构。 C、把一个算法变为用C语言编写的结构化程序。 D、用合适的测试方法检查程序是否符合最初的要求,为不合适数据设计错误陷阱,并提供错误信息来帮助用户。 E、写出清晰的用户文档,确保用户或者通过遵循程序中的指示或者使用程序设计者编写的文档能成功地运行程序。 F、写出技术文档,对程序中主要标示符的含义或作用加以说明,并提供一个完整的程序流程图。 G、调试程序、测试数据过程成功。 3、训练内容及安排 3.1设计环境 硬件:PC机,目前机房都已具备开发C语言程序的条件 软件:操作系统为Windows系列,设计语言为Visual C++6.0。 3.2基本要求 ◆设计可采取每人一题,可任选一题进行设计,至少包含五个功能模块。或者 每组(不超过4人)完成一个课题,每组成员分工合作完成一个课程设计,每个人的任务不同; ◆可以选择老师提供的参考选题,也可以自选,如果自选,需要将自选题目的 详细内容以及实现要求提供给老师,老师批准后方可采用。 ◆要求利用结构化程序设计方法以及C的编程思想来完成系统的设计; ◆要求有欢迎界面、菜单、文件操作,数据使用数组、结构体、链表等均可,

C语言课程实训题目

1.学生学籍管理 问题描述: 已知程序要求管理的学生信息包括:学号,姓名,系别、班级,年龄,性别,入学时间。设计一程序,完成以下功能: 1)能从键盘输入学生的信息 2)能从指定的文件中读入学生的信息 3)能学号查询学生的基本信息 4)能删除指定学号的学生信息 5)能修改指定学号的学生信息 6)能将学生信息保存在指定的文件中 2.通讯录管理 问题描述: 已知程序要求通讯录的信息为:姓名、性别、电话号码、类别、电子邮件,设计一程序,完成以下功能: 1)能从键盘输入通讯录的信息 2)能从指定的文件中读入通讯录的信息 3)能按姓名查询通讯录的信息 4)能按分类查询通讯录的信息 5)能删除指定姓名的通讯录的信息 6)能修改指定姓名的通讯录信息 7)能将通讯录信息保存在指定的文件中 3.酒店房间登记管理 问题描述: 已知在酒店中有10个房间,设计一程序,完成以下功能: 1)能从文件导入旅客入住信息 2)能从键盘输入客户的入住信息(包括:客户姓名,身份证号,开始入住时间、退房时间、 入住房间号) 3)能根据房间号查询住宿信息 4)能根据身份证号查询住宿信息 5)能根据身份证号、住宿时间修改入住信息

6)能根据身份证号、住宿时间删除入住信息 7)能将住宿信息导入到指定的文件中 4.职工信息管理 问题描述: 已知职工信息包括职工号、姓名、性别、出生日期、学历、职称、住址、电话等。设计一程序,完成以下功能: 1)能从键盘输入职工的信息 2)能从指定的文件中导入职工的信息 3)能按职工号查询职工的信息 4)能根据职工号删除职工信息 5)能根据职工号修改职工信息 6)能将职工信息保存在指定的文件中 5.销售管理 问题描述: 已知一公司某公司有4个销售员(编号、姓名、性别),负责销售5种产品(产品代号、产品名称,销售价格)。设计一程序,完成以下功能: 1)从键盘输入销售信息:销售员编号、产品编号、销售日期、销售数量。 2)能从指定文件导入销售信息 3)能根据销售员、产品、销售日期修改销售信息 4)能根据销售员、产品、销售日期删除销售信息 5)能输出指定时间段内的销售统计报表,格式如下: 销售统计报表 产品代号销售之和销售员代号 1 2 3 4 5 1 2 3 4 每种产品之和总和 6)根据销售员编号查询销售历史情况

C语言试题及答案

一、单项选择题 1. 软件危机具有下列表现( d )。 I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住 III. 软件常常不可维护IV. 软件成本逐年上升 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。 A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段 3. 下列属于软件的特点的是(D )。 A. 软件是一种逻辑实体,具有抽象性 ~ B. 软件在使用过程中没有磨损、老化的问题 C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高 D. 以上都正确 4. 软件工程的出现是由于(D )。 A. 软件危机的出现 B. 计算机硬件技术的发展 C. 软件社会化的需要 D. 计算机软件技术的发展 5. 软件开发技术不包含( d )。 A. 软件开发方法学 B. 软件工程环境 C. 软件工具 D. 软件质量度度量 6. 软件工程的课程特点( D )。 【 I. 学科理论及其知识应用的多维性 II. 工程化 III. 浓厚的方法学色彩 IV. 实践性、指导性强 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 7. 下列属于应用软件的是( b )。 I. 计算机辅助教学软件II. 软件测试工具 III. 办公自动化软件IV. 工程与科学计算软件

A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 8. 需求分析阶段最重要的技术文档是( b )。 - A. 设计说明书 B. 需求规格说明书 C. 可行性分析报告 D. 用户手册 9. 以下关于数据流图的说法错误的是( c )。 A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储 B. 数据流图是用作结构化分析的一种工具 C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成 D. 数据流图的绘制采用自上向下、逐层分解的方法 10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( c )。 A. 数据库设计 B. 数据通信 C. 数据定义 D. 数据维护 11. 需求分析阶段的研究对象是( b )。 ¥ A. 系统分析员要求 B. 用户要求 C. 软硬件要求 D. 系统要求 12. 结构化方法的基本原则是( b )。 A. 模块化 B. 抽象与分解 C. 信息隐蔽 D. 逐步求精 13. 耦合度最高的是(b)耦合。 A. 环境 B. 内容 C. 控制 D. 数据 14. 内聚程度较低的是( a )内聚。 A. 偶然 B. 通讯 C. 顺序 D. 时间 15. 对一个程序来说,组成系统的模块数目( b ),则开发成本越小。 A. 越多 B. 越少 C. 顺序 D. 时间> 16. 画软件结构图时应注意调用关系只能是(B )。 A. 从下到上 B. 从上到下 C. 从左到右 D. 从右到左 17. 程序流程图中的箭头代表( b )。 A. 数据流 B. 控制流 C. 顺序流 D. 调用 18. 软件测试是软件质量保证的重要手段,下述( B )是软件测试的最基础环节。

相关文档