《c语言学习心得c语言程序设计心得C语言程序设计心得体会(八篇).docx》由会员分享,可在线阅读,更多相关《c语言学习心得c语言程序设计心得C语言程序设计心得体会(八篇).docx(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 c语言学习心得c语言程序设计心得C语言程序设计心得体会(八篇)精选c语言学习心得c语言程序设计心得(推举)一 在这个星期里,我们专业的学生在专业教师的带着下进展了c语言程序实践学习。在这之前,我们已经对c语言这门课程学习了一个学期,对其有了肯定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很生疏,更多的在运用起来的时候还是感到很麻烦,究竟,万事开头难嘛。 由于时间的关系,我们的这次实践课程教师并没有给我们具体的介绍,只是给我们简洁的介绍了几个比拟重要的实际操作。包括了程序模块处理。简洁界面程序。高级界面程序。程序的添加修改。用程序做一元线性回归处理以及用c语言程序来画粒度分布图等
2、这几样比拟重要的时间操作。 上机试验是学习程序设计语言必不行少的实践环节,特殊是c语言敏捷、简洁,更需要通过编程的实践来真正把握它。对于程序设计语言的学习目的,可以概括为学习语法规定、把握程序设计方法、提高程序开发力量,这些都必需通过充分的实际上机操作才能完成。 学习c程序设计语言除了课堂讲授以外,必需保证有不少于课堂讲授学时的上机时间。由于学时所限,课程不能安排过多的统一上机试验,所以盼望学生有效地利用课程上机试验的时机,尽快把握用c语言开发程序的力量,为今后的连续学习打下一个良好的基矗为此,我们结合课堂讲授的内容和进度,安排了12次上机试验。课程上机试验的目的,不仅仅是验证教材和讲课的内容
3、、检查自己所编的程序是否正确,课程安排的上机试验的目的可以概括为如下几个方面: 1.加深对课堂讲授内容的理解 课堂上要讲授很多关于c语言的语法规章,听起来非常枯燥无味,也不简单记住,死记硬背是不行取的。然而要使用c语言这个工具解决实际问题,又必需把握它。通过屡次上机练习,对于语法学问有了感性的熟悉,加深对它的理解,在理解的根底上就会自然而然地把握c语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发觉原来(转载自第。)理解的偏差,这是由于大局部学生是初次接触程序设计,缺乏程序设计的实践所致。 学习c语言不能停留在学习它的语法规章,而是利用学到的学问编写c语言程序,解决实际问题。
4、即把c语言作为工具,描述解决实际问题的步骤,由计算机帮忙我们解题。只有通过上机才能检验自己是否把握c语言、自己编写的程序是否能够正确地解题。 通过上机试验来验证自己编制的程序是否正确,唯恐是大多数同学在完成教师作业时的心态。但是在程序设计领域里这是肯定要克制的传统的、错误的想法。由于在这种思想支配下,可能你会想方法去“掩盖“程序中的错误,而不是尽可能多地发觉程序中存在的问题。自己编好程序上机调试运行时,可能有许多你想不到的状况发生,通过解决这些问题,可以逐步提高自己对c语言的理解和程序开发力量。 2.熟识程序开发环境、学习计算机系统的操作方法 一个c语言程序从编辑、编译、连接到运行,都要在肯定
5、的外部操作环境下才能进展。所谓“环境“就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进展程序开发工作。通过上机试验,娴熟地把握c语言开发环境,为以后真正编写计算机程序解决实际问题打下基矗同时,在今后遇到其它开发环境时就会触类旁通,很快把握新系统的使用。 3.学习上机调试程序 完成程序的编写,决不意味着万事大吉。你认为万无一失的程序,实际上机运行时可能不断消失麻烦。如编译程序检测出一大堆错误。有时程序本身不存在语法错误,也能够顺当运行,但是运行结果明显是错误的。开发环境所供应的编译系统无法发觉这种程序规律错误,只能靠自己的上机阅历分析推断错误所在。程序的调试是一个技巧性很强的工作
6、,对于初学者来说,尽快把握程序调试方法是特别重要的。有时候一个消耗你几个小时时间的小小错误,调试高手一眼就看出错误所在。 通过这次为数不多的几天计算机实践学习,我们了解了一些关于c语言的学问,理解稳固了我们c语言的理论学问,着对我们将来到社会工作将会有莫大的帮忙。同时它让我知道,只要你努力,任何东西都不会太难。 精选c语言学习心得c语言程序设计心得(推举)二 最近一个星期将从图书馆借的visual c# 20xx step by step英文版 看完了,是microsoft press 的,很权威。 由于是英文版,所以读起来很流畅,丝毫没有中文翻译书籍蹩脚的感觉。下面说说我读这本书的感受,和我
7、个人对c#的一点看法。 这本书是一本入门书籍,读这本书根本不需要什么根底学问,对编程一点都不懂的人也可以看,适合入门用。但假如有肯定的编程根底,特殊是面对对象,或以前具有window native编程阅历,或web编程阅历,sql server阅历,读起来就很快, 我用了一个星期的时间,便读完了,将书中的练习都在自己的机器上实现了一遍。对书中的内容不能说100%,至少90%都有了肯定的了解。 下面说一下我之前的 阅历: 由于我之前有肯定的c语言编程阅历(谭浩强的c语言那本书,全部题目都拿下) c+阅历(c+primer把握大局部内容,并把握了c+的高级内容,比方模板库,泛型编程,抽象类,虚函数
8、,多重继承,自己实现过一些简单的类,比方大数类,计算1万的阶乘等) 肯定的算法和编程阅历(学习了简洁的算法,在oj上ac过肯定数量的题目(约100多题) java阅历(约一个月,主要通过视频教学学习了一些内容) web编程阅历(了解html, css, xml ,ajax,php,tomcat,可以写一些简洁的php页面,jsp页面等) 访问数据库(了解sql语言(特地看完了head first sql英文版,对于高级查询,合并查询等比拟高级的sql内容有肯定的了解) 有一些vc阅历(编写过简洁的图像处理程序,变色,腐蚀,膨胀算法),对mfc的框架初步了解。 win32 阅历(可以直接调用wi
9、n32 sdk写一些简洁的程序) 肯定的英文阅历(cet6,读过一些英文原版的技术书籍和文献) 之前对c#有肯定的了解,用c#写过一些win form。 之所以总结自己的阅历,是由于有人可能不信任我能一个星期读完这本厚厚的英文技术书籍,并完成里面的练习。虽然没有任何根底也可以学习,但学习的快慢很明显,假如你的根底很好,你可以用几天就把握一门全新的语言,为什么?由于全部的技术都不是横空出世的,都是基于原有的技术之上,对原有的技术消失的问题,进展改良,假如你以前学过c语言,再学c+就很简单,学了c+再学c#就更简单了, 再学java也是一样的道理。 前两天听了一个msdn的webcaste的讲座,
10、讲师说不要对技术进展比拟,由于技术的目的是为了 解决问题,而不是为了比拟优劣,不要认为你使用c+, 就比使用纯c的高超,不要认为你会使用 mvc架构网站,就比使用asp架构网站的人高超,技术只要能帮忙你解决你的问题,这个技术就是好的。 下面言归正传,说一下这本英文书的架构。 主要有6个局部组成。 第一局部对c#语言和vs20xx做了个简洁的介绍,开发工具如何使用等,介绍了c#的语法,变量声明,错误处理等,这局部假如你学过c语言,可以很快把握,估量1天就能过。 其次局部介绍了c#的高级内容,类和对象,引用和传递,枚举,数组,继承,抽象类等,假如你学过c+语言,并对它的面对对象局部很熟识,这局部也
11、可以一天搞定。 第三局部介绍了如何利用c#构建组件,c是面对过程的,c+是面对对象的,c#可以说是面对组件的,这局部主要介绍了属性,索引,泛型,操作符重载等,有一些特性是c#独占的,另一局部在c+中也具有。这局部假如有c+的根底,还是很快能把握的。 第四局部介绍了编写wpf应用程序,以前版本的c#是编写winform程序,现在c#支持一种比拟新的模型wpf, 假如你以前用vc写过win32程序,这局部很简单理解,假如用过c#或vb等,再具有一些html的阅历就更好了。 由于wpf的表示层与html很像,都是描述型语言,描述了各个控件的属性,位置。总结一下,编写wpf或winform程序主要两部
12、,第一局部是设计界面,就是拖控件,设置好各个空间的位置属性等,然后为每个控件的大事编写处理程序。之后介绍了菜单的使用和数据校验的使用。 第五局部就是访问数据库的局部,假如你之前具有使用数据库的阅历,看起来很简单,主要介绍了假如与数据库建立连接,如何将数据库和控件绑定。说实话,微软把数据库操作封装得很好,只要调用对象就可以访问数据库了, 但对于开发人员深入理解数据库不是件好事。 第六局部就是程序设计,由于c#主要是用来开发web应用程序的,(虽然也可以开发native程序,但效率不高,native还是c+的天下)。介绍了如何构建简洁的 网站,如何访问数据库,如何构建一个web效劳等。 这本书看完
13、,感觉思路很清楚(英文原版数据的特点是技术清楚,简单理解,前提是你至少cet4的水平),对整个的c#编程有了肯定的了解,假如想深入了解某一方面的技术,还可以深入学习,数据库编程,编程,web效劳编程(推举看wcf(windows communication foundation step by step). 总体感受: 技术都不是独立的,是相互关联的,假如你的根底足够扎实,你就不需要惧怕任何的新技术,只要看一下最新的技术文档,你就会了解新的技术不过是对旧的技术的一种改进,你能从里买你找到许多旧技术的影子。 可以说目前自己对c#有了肯定的了解,接下来就是工程阅历了,可以自己先设想两个工程自己练习
14、,里面要设计到一些主流的技术,比方数据库访问,多线程优化,数据库调优等,究竟这些技术光靠看书是学不来的,肯定要自己做过才行。 最终,建议学计算机的网友,尽量多看一些原版的英文书籍,假如买不到或借不到,可以从网上下载,现在网上好的英文书籍和源代码一大堆,不过能好好利用的人太少。 再就是打好自己的根底,有了好的根底(主要是计算机本科的专业课程,c语言,数据构造,算法分析,数据库理论,编译原理等,由于这些东西不会过时),再学新的技术就很简单。 最终祝各位学习顺当。 精选c语言学习心得c语言程序设计心得(推举)三 通过本次课程设计,对图的概念有了一个新的熟悉,在学习离散数学的时候,总觉得图是很抽象的东
15、西,但是在学习了数据构造与算法这门课程之后,我渐渐地体会到了其中的微妙,图能够在计算机中存在,首先要捕获他有哪些详细化、数字化的信息,比方说权值、顶点个数等,这也就说明白想要把生活中的信息转化到计算机中必需用数字来完整的构成一个信息库,而图的存在,又涉及到了顶点之间的联系。图分为有向图和无向图,而无向图又是有向图在权值双向相等下的一种特例,如何能在计算机中表示一个双向权值不同的图,这就是一件很奇妙的事情,经过了思索和教师同学的帮忙,我用edgesij=up和edgesji=up就能实现了一个双向图信息的存储。 对整个程序而言,dijkstra算法始终都是核心内容,其实这个算法在实际思索中并不难
16、,或许我们谁都知道找一个路径最短的方法,及从顶点一步一步找最近的路线并与其直接距离相比拟,但是,在计算机中实现这么一个很简洁的想法就需要涉及到许多专业学问,为了完成设计,在前期工作中,根本都是以学习c语言为主,所以铺张了许多时间,比方说在程序中,删除顶点和增加顶点的模块中都有和建图模块相互重复的函数,但是由于技术的缘由,只能做一些很累赘的函数,可见在调用学问点,我没有把握好。 不过,有了这次课程设计的阅历和教训,我能够很清晰的对自己定一个适宜的水平,而且在这次课程设计中我学会了运用两个新的函数sprintf和包涵在#include头文件中的输入函数。由于课程设计的题目是求最短路径,原来是想通过
17、算法的实现把这个程序与交通状况相连,但是由于来不及查找各地的信息,所以,这个规划就没有实现,我信任在以后有更长时间的状况下,我会做出来的。 1、稳固和加深了对数据构造的理解,提高综合运用本课程所学学问的力量。 2、培育了我选用参考书,查阅手册及文献资料的力量。培育独立思索,深入讨论,分析问题、解决问题的力量。 3、通过实际编译系统的分析设计、编程调试,把握应用软件的分析方法和工程设计方法。 4、通过课程设计,培育了我严厉仔细的工作作风,逐步建立正确的生产观念、经济观念和全局观念。 依据我在实习中遇到得问题,我将在以后的学习过程中留意以下几点: 1、仔细上好专业试验课,多在实践中熬炼自己。 2、
18、写程序的过程中要考虑周到,严密。 3、在做设计的时候要有信念,有急躁,切勿急躁。 4、仔细的学习课本学问,把握课本中的学问点,并在此根底上学会敏捷运用。 5、在课余时间里多写程序,娴熟把握在调试程序的过程中所遇到的常见错误,以便能节约调试程序的时间。 这是一门纯属于设计的科目,它需用把理论变为上机调试。在学习科目的第一节课起,李教师就为我们阐述了它的重要性。它对我们来说具有肯定的难度。它是其它编程语言的一门根本学科。 刚开头学的时候的确有许多地方我很不理解,每次上课时教师都会给我们出不同的设计题目,对于我们一个初学者来说,无疑是一个具大的挑战,撞了几次壁之后,我打算静下心来,认真去写程序。教师
19、会给我们需要编程的内容一些讲解,顺着教师的思路,来完成自己的设计,我们可以开头运行自己的程序,可是好多处的错误让人看的可怕,还看不出究竟是哪里消失了错误,但是程序还是得连续下去,我屡次请教了教师和同学,渐渐能自己找出错误,并加以改正。 tc里检查错误都是用英文来显示出来的,经过了这次课程设计,现在已经可以了解许多错误在英文里的提示,这对我来说是一个突破性的进步,眼看着一个个错误通过自己的努力在我眼前消逝,觉得很是快乐。此次的程序设计能够胜利,是我和我的同学三个人共同努力作用的结果。在这一段努力学习的过程中,我们的编程设计有了明显的提高。 其实现在想起来,收获还真是不少,虽然说以前特别不懂这门语
20、言,在它上面花费了好多心血,觉得它很难,是需用花费了大量的时间编写出来的。现在真正的明白了一些代码的应用,每个程序都有一些共同点,通用的构造,相像的格式。只要努力去学习,就会敏捷的去应用它。 精选c语言学习心得c语言程序设计心得(推举)四 刚开头学c语言的时候,很迷茫,在此之前从没有接触过c语言,有点摸不着头脑。可是在上机过后,我觉得编程是很好玩的一件事。我知道要学好c语言不简单,可是我打算完成这件不简单的事。 要学好c语言就要先懂得最根本的语法学问,看课本是必需的。我觉得看不懂也没关系,尽力去理解就好了,在对学问有了一个大致的了解过后,就要上机实践。学习c语言肯定要动手,只看不做,眼高手低是
21、不行的。 最开头可以打书上的例题,熟识程序,渐渐的开头试着编程。在编程时要理清自己的思路,然后再转换成c语言中的语言,这个时候就更要动手了,只有通过上机操作才能验证自己程序的正确性。执行程序,不要可怕错误,其实,我觉得错误是好的,知道了自己所学学问的缺乏,并依据提示改 正程序中发生的错误,一种成就感油然而生,觉得自己的付出都是值得的。 良好的编程习惯是学好c语言的重要因素,只有勤动手,多动脑才能学好c语言,光说不练是不行的。 在学习的时候,不会的肯定要问明白,可以求助于教师,同学,不要自己一个人钻牛角尖,铺张时间又学不到东西。 上课的时候肯定要仔细听,教师讲的确定是最重要的,错过了就是一大笔损
22、失,仔细听讲才可以提高学习效率。 我觉得在编程之前,要把自己的想法写在纸上,假如是简洁一点的程序不需要这样,假如程序比拟简单,就写下来,这样可以让思路更加清楚。 输入程序时肯定要仔细,不要把“,”与“;”混淆,用scanf的时候不要遗忘“”,用“switch”要记得“break”,用if,while的时候留意不要加“;”,“”“()”肯定要配对,不要多也不要少一半,“=”与“=”的区分要清晰,要勤查优先级,要记住一些根本的,例如两个值之间的调换怎么写等等。 在编程时除了要仔细慎重之外,更重要的是把握根本的学问,例如if语句与switch语句的区分,它们都是条件语句,用来执行推断功能,但是什么时
23、候用if什么时侯用switch应当弄清晰:若条件分支多但是条件的值是一个确定的值时就用switch。反之,在大多数状况下就用if。又如各种循环的应用,及循环之间的嵌套都要能敏捷应用。还要留意一些细小的琐碎的学问,如c语言规定的标识符,大小写字母间的ascii代码值相差32,强制类型转换符,自增自减运算符,符合运算符,逗号运算符等。 学习c语言需要的是坚持下去的毅力,仔细对待每次错误的急躁,还有孜孜不倦的努力。拥有一个良好的心态,信任自己,你就会发觉学好c语言不再困难! 精选c语言学习心得c语言程序设计心得(推举)五 c 语言是目前大多数职业学校及大专院校开设的一门计算机根底课。对于刚接触计算机
24、语言的职业学生,它具有较强的抽象性且构造化程序设计语言,对初学者来说比拟难于承受,也简单消失一些问题。现针对本学期教学中的工作进展总结,以便更好的进展下学期的工作。 本学期教学工作,归纳起来主要有一下几点。 在c语言教学中我们不仅要使得学生把握语法学问,重要的是通过课程教学,培育学生抽象思维和规律推理力量,把握程序设计的思想和方法。教学过程中我们有选择地使用多媒体教学,可以将语言语法中的浅显理论和规律推理的内容(如数据类型、运算符、语句及局部语法规章)运用多媒体教学直观形象地讲授给学生。加深学生对问题的理解。这样的多媒体教学,收到了将抽象问题形象化,枯燥问题生动化的效果。它使得相关的教学手段、
25、教学方法、教学观念、教学形式、教学构造以致教育思想与教学理论都发生了相应的变革。 但是,在详细使用多媒体的课堂教学中,应依据教学的需要,依据不同的教学目标,教学内容合理适当地组合使用各种教学媒体,多媒体教学肯定要实事求是,从学科教学的需要和效果动身,进展系统科学的设计,这样才能更好地为课堂教学效劳,提高课堂教学效果。相反,假如盲目刻意追求现代化教学手段,不遵循教育教学的规律,一味的使用多媒体也将产生副作用(如学生将留意力只集中在投影效果上而无视教师的语言表达)。因此,多媒 体不是万能的,它还不能代替教师独立完成教学活动,只能作为教学手段的补充和提高。 计算机语言课是一门实践性很强的课。教学过程
26、中除了教师的课堂讲解外,主要靠学生的上机实践来培育学生的操作力量和敏捷运用力量。我们提倡“精讲多练”,详细措施为: (1)压缩讲授课时,加强上机训练,使学生能有更多的时间进展上机实践。 (2)布置与现实生活学习严密联系的上机题目,培育学生编写程序解决问题的力量与兴趣。 (3)教师起引导作用。 (4)提倡上机实践互帮互助,使每个学生的优点都能得到熬炼。 (1)以实例为引导,讲解语法规章。c语言程序设计中许多学问比拟抽象、枯燥,不简单被学生承受和理解,教师在课堂教学中应当巧用生活中的实例化繁为简,将浅显的理论讲得通俗易懂。例如,对于几种构造的理解,我们可以在讲解根本概念的同时,可以以通俗易懂的例子
27、为引导逐步引出各个相关学问点和概念,然后以总结的形式讲解语法要点,避开纯粹学习语法的单调枯燥。这既简单激发学生的学习兴趣,又利于学生快速把握抽象的概念。 (2) 从输入/输出函数入手逐步熟悉c语言程序。学生在学习c语言时,首先遇到的问题就是不知从何处人手,即使在课堂上听懂了教师所叙述的例题,但在上机输人这些程序后,编译时还会消失各种问题,加之学生的英语根底较差,看不懂message窗口中的英文提示信息,导致大多数学生面对机器不知所措,而这种情形又降低了他 们学好这门课的信念以及学习这门课的主动性。因此,教师要做的就是找到一种好的方法使学生少消失这种问题。要做到这一点,就必需要求学生对c语言学问
28、进展积存, 从经典的小程序人手,一步步的实践和学习,其中学会使用输人/输出函数是很关键的一步。常用的输人/输出函数很具有代表性,特殊是printf()和scanf()这两个格式输入/输出函数。通过运用这两个函数编写一些程序上机练习。对于学生而言,这样的程序既具有数据输入,又具有数据输出,具有较强的直观性。通过这些小程序不仅能提高学生对c语言程序构造化的熟悉。而且也能提高学生学好这门课程的信念。 (3)将算法教学融入到语言教学中。c语言学习过程中,学生感到困难的一般不是在于语法,而是如何用相关语法的语句实现编制程序,也就是依据算法编写程序问题。由于c语言语法的规律性较强、构造性要求较高,学生刚接
29、触的时候简单考虑不全。因此在算法教学中可以通过实例进展,从最简洁的例子入手使学生在解决其体问题的过程中学习一些根本规律构造和语句。同时让学生知道依据同一个问题可以提出不同的从易于理解到精简的算法,从而比拟这些算法之间的优劣。了解算法的优化。通过对算法的优化练习,可以在无形中提高学生写算法的水平。使得学生真正了解到算法是程序的灵魂。 在 c 语言的教学过程中,我们可以采纳工程教学法。工程教学法,是师生通过共同实施一个完整的工程工作而进展的教学活动。通过对完整的工程的系统分析,培育学生良好的编程习惯,擅长猎取他人阅历的力量以及把握综合运用所 学学问的力量,从而完全了解工程流程,真正提高编程水平。如
30、让学生编写一个简洁的学生信息治理系统,这不但使得学生把握了所学的c语言学问,同时也使得学生了解了数据字典、流程图等其它软件工程方面的内容。这种教学方法,不但提高了学生的实践力量,同时也激发了学生的学习兴趣。 以上是本人在本学期c语言教学中遇到的几个问题作的简洁争论,在实际教学当中,还有其它一些详细问题,鉴于篇幅问题,我们在这里不作更深的争论。盼望以上思索能对实际的教学和学习有所帮忙。 精选c语言学习心得c语言程序设计心得(推举)六 一 选择题(7分,每题0.5分) 1.c语言源程序的根本单位是( )。 a 过程 b 函数 c 子程序 d 标识符 2、以下程序的输出结果是( )。 main( )
31、 int a=7,b=5; printf(“%d“,b=b/a); a 5 b 1 c 0 d不确定值 3、假设变量a,b均为整型,表达式(a=5,b=2,ab?a+:b+,a+b)的值是( )。 a 7 b 8 c 9 d 2 4、设a为int型变量,执行以下赋值语句后,a的取值分别是( )。 a=125.534; a=(int)125.521%4; a=52; a 125,31,1 b 125,1,20 c 125,31,20 d 125.534,2,20 5、设有如下程序段,下面描述中正确的选项是 ( )。 int k=10; while(k=0) k=k-1; a 循环执行一次 b循环
32、是无限循环 c循环体语句一次也不执行 d循环体语句执行一次 6、以下程序的输出结果为( )。 int i; void prt( ) for(i=5;i8;i+) printf(“%c“,*); printf(“ “); main( ) for(i=5;i=8;i+) prt( ); a * b * * * * c * * d * * * 7、在c语言程序中,以下说法正确的选项是()。 a函数的定义可以嵌套,但函数的调用不行以嵌套 b函数的定义不行以嵌套,但函数的调用可以嵌套 c函数的定义和函数的调用都不行以嵌套 d函数的定义和函数的调用都可以嵌套 8、以下函数调用语句中含有( )个实参。 fu
33、nc(e1,e2),(e3,e4,e5)); a 2 b 3 c 5 d 语法错误 9、以下程序的输出结果为( )。 #define add(x) x*x main( ) int a=4,b=6,c=7,d=add(a+b)*c; printf(“d=%d“,d); a d=70 b d=80 c d=140 d d=700 10、已知职工记录描述如下,在turbo c中,系统为变量w安排( )字节的空间。 struct worker int no; char name20; char sex; union int day; int month; int year;birth; w; a 29
34、 b 20 c 25 d 6 11、设有以下定义,值为5的枚举常量是( )。 enum weeksun,mon=4,tue,wed,thu,fri,sat w; a tue b sat c fri d thu 12、下面选项中正确的赋值语句是(设 char a5,*p=a;)( )。 a p=“abcd“; b a=“abcd“; c *p=“abcd“; d *a=“abcd“; 13、设有以下程序段,则值为6的表达式是( )。 struct st int n; struct st *next;; static struct st a3=5,a1,7,a2,9,0 ,*p; p=a0; a
35、p+-n b +p-n c p-n+ d (*p)。n+ 14.c语言中的文件类型只有( )。 a 索引文件和文本文件两种 b 文本文件一种 c 二进制文件一种 d ascii码文件和二进制文件两种 二 推断对错,对的划“”,错的划“”(5分,每题0.5分) 1、在turbo c中,整型数据在内存中占2个字节。( ) i=20;switch(i/10)case 2:printf(“a“);case 1:printf(“b“);的输出结果为a。( ) 语句用在循环体中,可完毕本层循环,continue语句用在循环体中,可完毕本次循环。( ) 4、函数的递归调用不过是一个函数直接或间接地调用它自身
36、。( ) 5、函数strlen(“asdfg“)的值是7。( ) 6、通过return语句,函数可以带回一个或一个以上的返回值。( ) 7、构造体类型只有一种。 ( ) *p=“girl“;的含义是定义字符型指针变量p,p的值是字符串“girl“。( ) 9、若有定义:char *p(char a10);则p是函数名。( ) 10、用fopen(“file“,“r+“);翻开的文件“file“可以进展修改。 ( ) 三 写出以下程序的运行结果(10分,每题2分) average (float array10) int i; float aver,sum=array0; for (i=1;i10
37、;i+) sum=sum+arrayi; aver=sum/10; return(aver); main( ) float score10=89,67.5,78,91,56,82.5,65,70,79,88,aver; int i; aver=average (score); printf (“average score is %5.2f”,aver); ( ) char a5=a,b,c,d,e,*p=a,*pa; for(p=0;pa+5;p+) p=“ printf(“%2c”,*p); printf(“”); printf(“%2c”,*(pa=p); ( ) int a,b,s=0;
38、 for(a=1,b=1;a=100;a+) if(b=20) break; if(b%3=1) b+=3; continue; b-=5; printf(“a=%d b=%d”,a,b); () printf(“main( ) :%d”,fact(5)); fact(-5); fact(int value) int f; if(value0) printf(“arg error“); return(-1); else if(value=1|value=0) f=1; else f=value*fact(value-1)+1; printf(“this called value=%d”,f);
39、 return f; ( ) int a=012,b=0x12,k=12; char c=102,d=; printf(“a=%d b=%d k=%d”,a,b,k); printf(“c=%c,d=%c%o”,c,d,a); a=a; c=49; printf(“a=%d c=%c”,a,c); 四 阅读以下程序,在 处填入适当内容,使程序完整(8分,每个空1分) 1、有一个3*4矩阵,求其中的最大元素。 max_value( (1) ) int i,j,max; max=array00; for(i=0;i3;i+) for(j=0;j4;j+) if(arrayijmax) max=ar
40、rayij; (2) ; main( ) int a34, i,j; for(i=0;i3;i+) for(j=0;j4;j+) (3) ; printf(“max value is %d”,max_value(a); 2、输入x、y两个整数,按先大后小的挨次输出x、y。 #include “stdio.h” main( ) int x,y, *px,*py, (4) ; scanf(“%d%d”,x,y); (5) ; (6) ; if(xy) p=“ p=px; px=py; py=p; printf(“x=%d,y=%d”,x,y); printf(“max=%d,min=%d”,*px
41、,*py); 3、用选择排序法对任意10个整数根据由小到大排序。 main() int a11,i,j,k,t; printf(“please input 10 numbers:“); for(i=1;i11;i+) scanf(“%d“,ai); printf(“); for(i=1;i=9;i+) (7) ; for(j=i+1; (8) ;j+) if(ajak) k=j; if(k!=i) t=ak; ak=ai; ai=t; printf(“the sorted numbers:“); for(i=1;i11;i+) printf(“%d “,ai); 答案 一 选择题(7分,每题0
42、.5分) 1、 b 2. c 3. b 4. b 5. c 6、 a 7. b 8. a 9. a 10. c 11、 a 12. a 13. b 14. d 二 推断对错,对的划“”,错的划“”(5分,每题0.5分) 1、 2. 3. 4. 5. 6、 7. 8. 9. 10. 三 写出以下程序的运行结果(10分,每题2分) 1、 2. 3. 4、 5. 四 阅读以下程序,在 处填入适当内容,使程序完整(8分,每个空1分) 1、(1)int array34(int array4) (2)return(max) (3)scanf(“%d”,aij) 2、(4)*p (5)px=x(py=y) (6)py=y(px=x) 3、(7) (8) 2023c语言试题3 一 选择题(24分,每题2分) 1、已知函数fread的调用形式为fread(buffer,size,count,fp),其中buffer代表的是( )。 a 存放读入数据项的存储区 b 存放读入数据的地址或指向此地址的指针 c 一个指向所读文件的文件指针 d 一个整形变量,代表要读入的数据项总数 2、以下程序的输出结果为( )。 main( ) int i=010,j=10; printf(“%d,%d“,i+,j-); a 11,9 b 9,10 c 8,10 d 9,9 3、设a