c语言程序设计参考文献 c语言参考文献近三年
大家好,今天来为大家分享c语言程序设计参考文献的一些知识点,和c语言参考文献近三年的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
C语言程序设计现代方法的图书信息
作者:(美)金King著,吕秀锋译
ISBN:10位[7115 167079]13位[978711 5167071]
出版社:人民邮电出版社
出版日期:2007-11-1
定价:55.00元 King,世界知名的计算机程序设计教育家,佐治亚州立大学数学与计算机科学系副教授。耶鲁大学计算机科学硕士,加利福尼亚大学伯克利分校计算机科学博士,曾任教于佐治亚理工学院。除本书外,他还撰写了广受欢迎的教材JavaProgramming:FromtheBeginning,并在Dobb'sJournal等权威杂志上发表了许多论文。业余时间,King教授还在多部电影中扮演过角色。
吕秀锋,亚洲理工大学(AIT)计算机软件硕士,现为北京理工大学软件学院教师。多年来一直从事“计算机基础(双语)”、“C语言程序设计(双语)”以及“程序设计开发与实践”等本科生课程的教学工作,深受学生欢迎。她还译有《数据结构与算法:C#语言描述》一书。黄倩,中国科学院计算技术研究所工学博士,中国计算机学会会员。研究方向包括视频处理、视频监控等,已在知名的国际期刊和国际会议论文集上发表10篇论文。译有《编程珠玑(第2版)》一书,受到读者欢迎。第1章 C语言概述11.1 C语言的历史11.1.1起源11.1.2标准化11.1.3基于C的语言21.2 C语言的优缺点31.2.1 C语言的优点31.2.2 C语言的缺点31.2.3高效地使用C语言4问与答5第2章 C语言基本概念72.1编写一个简单的C程序7程序显示双关语72.1.1编译和链接82.1.2集成开发环境82.2简单程序的一般形式92.2.1指令92.2.2函数92.2.3语句102.2.4显示字符串102.3注释112.4变量和赋值122.4.1类型122.4.2声明132.4.3赋值132.4.4显示变量的值14程序计算箱子的空间重量142.4.5初始化152.4.6显示表达式的值162.5读入输入16程序计算箱子的空间重量(改进版)162.6定义常量的名字17程序华氏温度转换为摄氏温度172.7标识符182.8 C程序的书写规范19问与答21练习题23编程题24第3章格式化输入/输出263.1 printf函数263.1.1转换说明27程序用printf函数格式化数283.1.2转义序列283.2 scanf函数293.2.1 scanf函数的工作方法303.2.2格式串中的普通字符313.2.3易混淆的printf函数和scanf函数32程序分数相加32问与答33练习题34编程题35第4章表达式364.1算术运算符36程序计算通用产品代码的校验位384.2赋值运算符394.2.1简单赋值404.2.2左值414.2.3复合赋值414.3自增运算符和自减运算符424.4表达式求值434.5表达式语句45问与答45练习题47编程题49第5章选择语句505.1逻辑表达式505.1.1关系运算符505.1.2判等运算符515.1.3逻辑运算符515.2 if语句525.2.1复合语句535.2.2 else子句535.2.3级联式if语句54程序计算股票经纪人的佣金555.2.4“悬空else”的问题565.2.5条件表达式575.2.6 C89中的布尔值585.2.7 C99中的布尔值585.3 switch语句59程序显示法定格式的日期61问与答62练习题65编程题67第6章循环696.1 while语句69程序显示平方表71程序数列求和716.2 do语句72程序计算整数的位数736.3 for语句736.3.1 for语句的惯用法746.3.2在for语句中省略表达式756.3.3 C99中的for语句756.3.4逗号运算符76程序显示平方表(改进版)776.4退出循环786.4.1 break语句786.4.2 continue语句786.4.3 goto语句79程序账簿结算806.5空语句81问与答83练习题84编程题85第7章基本类型887.1整数类型887.1.1 C99中的整数类型907.1.2整数常量907.1.3 C99中的整数常量917.1.4整数溢出917.1.5读/写整数91程序数列求和(改进版)927.2浮点类型937.2.1浮点常量947.2.2读/写浮点数947.3字符类型947.3.1字符操作957.3.2有符号字符和无符号字符957.3.3算术类型967.3.4转义序列967.3.5字符处理函数977.3.6用scanf和printf读/写字符987.3.7用getchar和putchar读/写字符98程序确定消息的长度997.4类型转换1007.4.1常用算术转换1017.4.2赋值过程中的转换1027.4.3 C99中的隐式转换1037.4.4强制类型转换1037.5类型定义1057.5.1类型定义的优点1057.5.2类型定义和可移植性1057.6 sizeof运算符106问与答107练习题109编程题110第8章数组1138.1一维数组1138.1.1数组下标113程序数列反向1158.1.2数组初始化1158.1.3指定初始化式116程序检查数中重复出现的数字1168.1.4对数组使用sizeof运算符117程序计算利息1188.2多维数组1198.2.1多维数组初始化1208.2.2常量数组121程序发牌1218.3 C99中的变长数组122问与答123练习题124编程题125第9章函数1299.1函数的定义和调用129程序计算平均值129程序显示倒计数130程序显示双关语(改进版)1319.1.1函数定义1329.1.2函数调用133程序判定素数1349.2函数声明1359.3实际参数1369.3.1实际参数的转换1379.3.2数组型实际参数1389.3.3变长数组形式参数1409.3.4在数组参数声明中使用static1419.3.5复合字面量1419.4 return语句1429.5程序终止1439.6递归144程序快速排序146问与答147练习题150编程题153第10章程序结构15510.1局部变量15510.1.1静态局部变量15610.1.2形式参数15610.2外部变量15610.2.1示例:用外部变量实现栈15610.2.2外部变量的利与弊157程序猜数15810.3程序块16110.4作用域16210.5构建C程序163程序给一手牌分类163问与答169练习题169编程题170第11章指针17211.1指针变量17211.2取地址运算符和间接寻址运算符17311.2.1取地址运算符17311.2.2间接寻址运算符17411.3指针赋值17411.4指针作为参数176程序找出数组中的最大元素和最小元素17711.5指针作为返回值179问与答180练习题181编程题182第12章指针和数组18412.1指针的算术运算18412.1.1指针加上整数18512.1.2指针减去整数18512.1.3两个指针相减18612.1.4指针比较18612.1.5指向复合常量的指针18612.2指针用于数组处理18612.3用数组名作为指针188程序数列反向(改进版)18912.3.1数组型实际参数(改进版)18912.3.2用指针作为数组名19112.4指针和多维数组19112.4.1处理多维数组的元素19112.4.2处理多维数组的行19212.4.3处理多维数组的列19212.4.4用多维数组名作为指针19212.5 C99中的指针和变长数组193问与答194练习题195编程题197第13章字符串19813.1字符串字面量19813.1.1字符串字面量中的转义序列19813.1.2延续字符串字面量19913.1.3如何存储字符串字面量19913.1.4字符串字面量的操作20013.1.5字符串字面量与字符常量20013.2字符串变量20013.2.1初始化字符串变量20113.2.2字符数组与字符指针20213.3字符串的读和写20313.3.1用printf函数和puts函数写字符串20313.3.2用scanf函数和gets函数读字符串20313.3.3逐个字符读字符串20413.4访问字符串中的字符20513.5使用C语言的字符串库20613.5.1 strcpy函数20713.5.2 strlen函数20813.5.3 strcat函数20813.5.4 strcmp函数209程序显示一个月的提醒列表20913.6字符串惯用法21113.6.1搜索字符串的结尾21113.6.2复制字符串21313.7字符串数组214程序核对行星的名字217问与答218练习题220编程题222第14章预处理器22514.1预处理器的工作原理22514.2预处理指令22714.3宏定义22714.3.1简单的宏22714.3.2带参数的宏22914.3.3#运算符23114.3.4##运算符23114.3.5宏的通用属性23214.3.6宏定义中的圆括号23314.3.7创建较长的宏23314.3.8预定义宏23414.3.9 C99中新增的预定义宏23514.3.10空的宏参数23614.3.11参数个数可变的宏23614.3.12 __func__标识符23714.4条件编译23714.4.1#if指令和#endif指令23814.4.2 defined运算符23814.4.3#ifdef指令和#ifndef指令23914.4.4#elif指令和#else指令23914.4.5使用条件编译24014.5其他指令24014.5.1#error指令24014.5.2#line指令24114.5.3#pragma指令24214.5.4 _Pragma运算符242问与答243练习题245第15章编写大型程序24815.1源文件24815.2头文件24915.2.1#include指令24915.2.2共享宏定义和类型定义25015.2.3共享函数原型25115.2.4共享变量声明25215.2.5嵌套包含25315.2.6保护头文件25315.2.7头文件中的#error指令25415.3把程序划分成多个文件254程序文本格式化25515.4构建多文件程序26015.4.1 makefile26015.4.2链接期间的错误26215.4.3重新构建程序26215.4.4在程序外定义宏264问与答264练习题265编程题266第16章结构、联合和枚举26716.1结构变量26716.1.1结构变量的声明26716.1.2结构变量的初始化26916.1.3指定初始化26916.1.4对结构的操作27016.2结构类型27016.2.1结构标记的声明27116.2.2结构类型的定义27216.2.3结构作为参数和返回值27216.2.4复合字面量27316.3嵌套的数组和结构27416.3.1嵌套的结构27416.3.2结构数组27416.3.3结构数组的初始化275程序维护零件数据库27516.4联合28116.4.1用联合来节省空间28216.4.2用联合来构造混合的数据结构28416.4.3为联合添加“标记字段”28416.5枚举28516.5.1枚举标记和类型名28616.5.2枚举作为整数28616.5.3用枚举声明“标记字段”286问与答287练习题289编程题293第17章指针的高级应用29417.1动态存储分配29417.1.1内存分配函数29417.1.2空指针29517.2动态分配字符串296……第18章声明 327第19章程序设计 345第20章底层程序设计 363第21章标准库 377第22章输入/输出 384第23章库对数值和字符数据的支持 419第24章错误处理 446第25章国际化特性 456第26章其他库函数 482第27章 C99对数学计算的新增支持 503附录A C语言运算符 524附录B C99与C89的比较 525附录C C89与经典C的比较 529附录D标准库函数 532附录E ASCII字符集 569参考文献 570索引 573
c语言程序设计的图书目录
第1章 C语言基础知识
1.1 C语言概述
1.1.1 C程序的结构
1.1.2 C程序的上机步骤
1.2 C语言的基本数据类型
1.2.1标识符
1.2.2常量
1.2.3变量
1.3基本输入/输出函数
1.3.1格式化输出函数
1.3.2格式化输入函数
1.3.3字符输入/输出函数
1.4运算符和表达式
1.4.1算术运算符与算术表达式
1.4.2赋值运算符与赋值表达式
1.4.3逗号运算符与逗号表达式
1.4.4简单的位运算与位表达式
1.4.5运算符的优先级
1.5类型转换
1.5.1隐式类型转换
1.5.2显式类型转换
1.6 C程序展示
本章小结
习题
第2章算法
2.1算法的概念
2.2利用计算机求解问题的一般过程
2.3算法的描述
2.3.1用自然语言描述算法
2.3.2用流程图描述算法
2.3.3用N-S流程图描述算法
2.3.4用伪代码描述算法
2.3.5用计算机语言描述算法
2.4算法举例
本章小结
习题
第3章 C程序的控制结构
3.1分支结构
3.1.1关系表达式和逻辑表达式
3.1.2 if语句
3.1.3条件表达式
3.1.4 switch语句
3.2循环结构
3.2.1 while语句
3.2.2 do…while语句
3.2.3 for语句
3.2.4 break语句和continue语句
3.2.5循环的嵌套
3.3综合应用
本章小结
习题
第4章数组与指针
4.1数组
4.1.1一维数组
4.1.2二维数组
4.1.3字符数组
4.2指针
4.2.1指针变量的定义与相关运算
4.2.2指针与一维数组
4.2.3指针与二维数组
4.2.4指针数组
4.2.5指针与字符串
4.3动态内存分配
4.4数组与指针综合应用
4.4.1单词统计
4.4.2排序
4.4.3查找
4.4.4进制转换
4.4.5二维数组应用
本章小结
习题
第5章函数
5.1函数概述
5.1.1函数的定义
5.1.2函数的声明和调用
5.2函数参数的传递方式
5.2.1值传递方式
5.2.2地址传递方式
5.3函数的嵌套与递归
5.3.1函数的嵌套调用
5.3.2函数的递归调用
5.4变量的作用域与存储类型
5.4.1变量的作用域
5.4.2变量的存储类型
5.5内部函数和外部函数
5.5.1内部函数
5.5.2外部函数
5.6编译预处理
5.6.1宏定义
5.6.2文件包含
5.6.3条件编译
5.7标准函数简介
5.7.1字符串处理函数
5.7.2字符处理函数
5.7.3动态地址分配函数
5.7.4数学函数
5.7.5数据类型转换函数
5.7.6其他函数
5.8函数综合应用案例
5.8.1字符串处理函数应用
5.8.2函数指针应用
5.8.3递归算法应用
本章小结
习题
第6章结构体与共用体
6.1结构体类型
6.1.1结构体类型的定义和使用
6.1.2指向结构体类型数据的指针
6.2共用体与枚举类型
6.2.1共用体
6.2.2枚举类型
6.3链表
6.4结构体综合应用
6.4.1学生成绩查询
6.4.2个人通讯录
本章小结
习题
第7章文件操作
7.1文件概述
7.1.1文件的概念
7.1.2文件类型指针
7.1.3文件的操作
7.2文件的打开和关闭
7.2.1文件打开函数
7.2.2文件关闭函数
7.3文件的顺序读/写
7.3.1字符读/写函数
7.3.2字符串读/写函数
7.3.3格式化读/写函数
7.3.4二进制文件读/写函数
7.4文件的随机读/写
7.5文件状态检查函数
7.5.1文件读/写结束检查函数
7.5.2文件出错检查函数
7.5.3文件出错复位函数
本章小结
习题
第8章 C语言课程设计
8.1 C语言课程设计实施方案
8.2 C语言课程设计任务书1
8.3 C语言课程设计任务书2
8.4 C语言课程设计任务书3
8.5 C语言课程设计任务书4
8.6 C语言课程设计任务书5
附录A常用字符与ASCII(十进制)对照表
附录B C语言课程设计模板
参考文献
计算机专业C与C++程序设计研究论文
计算机专业C与C++程序设计研究论文
摘要:首先介绍了目前高校计算机学院C族语言相关程序设计课程的建设状况。然后从C族语言的相互衍生关系出发,提出了在高校计算机课程体系中去除C语言的基础课程,将其综合成一门C++程序设计课程来供学生学习,并对课程内容、参考教材和课时安排上给出了自己的建议。
关键词:C语言;C++语言;程序设计
高校的C族语言教学总是按照先学C语言,再学C++的顺序进行,这种学习顺序随着C++标准的不断升级改革后变得越来越不适用。早期的C++属于多面性语言,即可以像C一样进行模块化的面向过程的编程设计,也可以像Java一样进行抽象的面向对象程序设计。那时的教学者考虑的是学生应当从较为便于理解的面向过程的编程思路入门学习C语言编程,然后在熟练了面向过程的编程方式后再从C语言延伸到C++,转而学习面向对象的程序设计。可是随着面向对象的程序设计在应用市场上占领了绝对的主导地位后,再让学生从面向过程着手就等于是浪费学习时间。加上C++和C两门语言的初级语法思想是完全一致的,开设两门课程浪费了学时,也耽误后续更重要的核心课程的学习。
1程序设计语言C与C++的比较
1.1C与C++的共性。一般简要的介绍是把C++当作C的加强版,这种认知当然是错误的,C++语言的设计者在设计之初为了保障自家语言会受到开发者的关注,所以兼容了的C的语法,这就自然使得C++可以使用C的编程方式进行程序设计,所以也导致了很多人对这两种语言的关系产生了错误的认知。同时由于C语言本身设定上的优越性,所以C++在进行自我定义的时候也沿用了C语言很多优良的性质。基础数据结构一致,C与C++的基础数据类型都是以变量和常量作为基本属性划分,类型上有字符型、整型、长整型、单精度浮点型和双精度浮点型,不过C++额外增设了布尔型。复合型数据结构上也都同时具有数组、多维数组、结构体、枚举类型和共同体,但是C++增设了字符串类型以替代C语言中的字符数组,功能上更加强大,也更加便捷。在语法方面,声明、赋值、循环、选择的结构和实现都是一致的,并且C++虽然提倡使用类和对象的概念去设计程序结构,可也同样支持函数体结构的程序设计结构。并且C语言中函数的赋值都是间接调用,在使用C语言函数时总是会在指针上出现各种纰漏,但是C++的函数体可以使用引用参数,这就使得C++的函数体比之C的更加好用。总的说来就是,C++标准下用户可以完全使用C语法进行编程而不会出现任何BUG,同时C++自身的优越设定和标准使得其设计能力比C要强大数倍,是目前市场上大型程序开发的首选语言。
1.2C与C++的不同。上一节介绍了C++和C的.基础语法上的区别,这些区别都是C++的作者在C的基础之上修订而来的结果,是为了让C++标准下得面向过程的程序设计比之单纯的C更加便捷方便。但是C++的诞生伊始,就是一门向上使用面对对象的程序设计思想的高级编程语言。它的封装性、继承性、多态性和对象唯一性才是C++成为强大高级语言的重要原因,这些特性都是C语言不可能拥有的。所以C能够实现的程序,C++能够实现并且实现的更为方便,C不能实现的程序,C++同样可以实现。
1.3C++的特色。承接上一节,C++和C之间最大的不同,也是C++自身最值得夸耀的特性,就是面向对象程序设计思想。这种思想使得C++语言设计出来的程序,变成了类和对象的有机结合,这种结合的代码比之面向过程的函数体架构的代码更加易读,共同开发起来容易上手,后续的维护者也不用费更多的脑筋去理解前人的代码含义。而类和对象的设计思路,使得开发者合作时相互之间的工作变的更为独立,双方之间只需要知道对方所写的类实现的功能和包含的数据就行。这种特性我们称之为良好的封装性,开发者之间不需要去知道对方的代码是如何实现,甚至在此之上还可以保证良好的代码健壮性。因为类的引入,更先进的作用域机制也被引入进来,类的书写者往往会将自己类中的数据进行严格的作用域限定,防止其他合作者擅自去修改和使用自己类中的数据。合作者想要知道类中的数据或者使用类中的数据,只能通过类的书写者定义的带有检查机制的方法才行。这样会使得很多人合作开发的大型项目的稳定性和安全性比之用C语言开发时再上一个台阶。同时类的概念中还有一个先进的设定就是继承性,并且由这个继承性还延伸出了接口的概念。有了可以继承的接口和类,那么开发者在对程序进行迭代的瀑布开发流程时,就可以很好的使用自己曾经开发的源代码,或者借用其他项目的源代码,因为只要学会科学的使用继承机制,就不仅仅是节约程序员的代码时间,也减少了程序员在回顾曾经代码时发生的错误和歧义。而与继承机制配合使用的是多态性,曾经C语言中定义的函数,其灵活度非常差,特定的函数只能满足特定程序定义的需求,想要重用曾经的源代码是几乎不可能的事情。我们刚才提到的继承机制使得C++开发者复用源代码成为了一种习惯,但是复用时不可避免的修改问题又摆到了台面上,多态机制顺应而生了。多态机制使得类不仅可以继承其他类,将父类的数据和方法都在本类体中自如的使用,同时还可以用本类中新的定义和代码去覆盖父类中的数据定义和方法。这就让程序员变的更加自由,想用父类的数据和方法时就去继承,但是不想全部使用时就加上多态机制去覆盖。这样代码之间的重复利用率变得十分客观,节约了大量的开发时间和开发成本。
2程序设计语言C与C++开设建议
C++课程的内容应当如下安排:第一部分,教授C++的基础语法,让学生可以编写出在DOS命令行下输入输出的程序,了解编程的基本概念和思想。并且这时应当同时进行C和C++的双向语法教学,为日后学生进入高年级后的方向选择打下基础。此部分使用半个学期最为适宜,并且此时并不灌输学生何为面向对象何为面向过程,而主在让学生使用基础语法进行最基本的编程探索。第二部分,在学生有了基础编程知识后,将数据结构的内容放入课程中去,用半学期的时间教授学生用C++实现的各类常见数据结构。并且结合实际开发项目中的代码作为阅读补充,让学生明白数据结构的知识对程序开发的意义,然后将简化后的小项目作为课堂的主要内容,用实际的代码让学生去理解那些枯燥的数学定理和概念。而且在实现数据结构的过程中,必然会面对一些更为高级的C++语法和概念。总的来说,用大一上的一个学期让学生对于基础编程有了良好的认知和深入,是十分值得和有效的。第三部分,在学生有了数据结构的基础和C++的基本语法掌握后,应当面对一些实际的开发项目和问题。当然实际的问题还是需要老师进行简化,其主要目的是让学生掌握C++的高级特性和实际软件开发的过程与思路,并且想学生传授基础的算法。这一部分较为困难,应当使用一个学期让学生慢慢的掌握和熟悉。第四部分,在学生算是对C++语言和数据结构与算法都有了基础的入门后,再进行课堂教学意义就不大了,应当再大二上学期开设一门课程设计实验课,让学生完成几个难度从小到大的项目,循序渐进的掌握基本的实际开发技巧和思维。
参考文献
[1]罗莉.计算机程序设计的多应用型开发与实现[J].产业与科技论坛,2015(14):54-55.
[2]邓薇,何锫,钱俊彦,等.深度优先的多基因表达式程序设计[J].模式识别与人工智能,2013(9):819-828.
[3]宛西原,汪霞.非计算机本科专业计算机程序设计课程的改革思考[J].计算机工程与科学,2014(z1):56-59.
;
好了,关于c语言程序设计参考文献和c语言参考文献近三年的问题到这里结束啦,希望可以解决您的问题哈!