
首先:C语言入门相对比较简单,但如果想成为一个优秀的C程序岩碰员,需要很艰苦的训练,多读代码,多练习,多上机 *** 作,多思考,学习是一件辛苦的事情,要放弃很多东西,要坚持下来才可以,可以说C语言是基础,将来想学其他的C++,JAVA等,如果有C的基础,还是比较好入门的.
C语言的用处比较广泛,可以说任何精通计算机的人都掌握C语言了,我是本科计算机专业的,C被作为许多课程的先行课,没有了C语言基础,就不能学习数据结构, *** 作系统,编译原理或察,计算机网络等核心课程,所以说,想学习计算机的话无论想在哪个方向发展(软件,硬件,网络,应用,开发,设计等方向)都必须掌握C语言.
关于C语言的教材:我向你推荐几本:
最经典的:《C程序设计语言》第2版,机械工业出版社
这个是C语言的设计者和UNIX系统的设计者合作编写的最经典衫枣茄的C语言教材,原书名叫《The C Programming Language》当然,这本书不太适合0起点的人,看这本书之前最好把《C程序设计》(谭浩强,清华大学)看了,老谭的书销量突破700万册了,虽然比较旧了,也不太符合新标准(现在出第3版了,也还是)但是,入门还是不错的选择。
另外还有必看的是《C Primer Plus》这个是一个美国人写的,人民邮电出版社出了中文版了,第5版,比较厚,砖头书,60元。但是非常适合初学的人,非常详细。
还有《从问题到程序——程序设计与C语言引论》机械工业出版社,这本书也很不错。
看完这些,就可以看算法的书了,比如数据结构什么的,这方面的书很多。如果想在程序界发展,那么有部重量级的著作不得不看《The Art of computer programming》一共三卷,有翻译版《计算机程序设计的艺术》这三卷书非常深,比较难,盖茨说,谁如果把这上面的习题都做对了,直接可以到微软上班了。
另外学习C语言要养成良好的程序风格,这点一定要注意练习!
总结:书一定要多看,教材看个4-5遍,关键是里面的程序,要理解了,然后多上机练习,最好能多看几本C语言的书,我上面列出的,然后就是多做题了,做题能和上机联系起来就更完美了,坚持下来就没问题了
计算机科学与技术专业课程不完全解析1.计算机导论:
计算机科学的基础课程之一,其教学目的是概要性地对专业课程作介绍,是缓咐旅典型的面向专业新生的课程(即CS0型课程)。认真学习该课程有助于今后的学习,然而这门课程往往容易被新生们忽略……
(推荐教材:可使用学校配发的教材,但建议使用外版翻译教材。)
2.高级语言程序设计:
计算机科学的基础课程之一,教学目的是让本专业同学实际掌握一门程序设计语言并且习得一些程序设计的基本技能,目前的教学语言是C语言。个人认为课程名称可改为“高级程序设计语言”,因为课程对语言的强调远胜于对程序设计本质的讲解。建议在学习这门课程时配以《程序设计实践》一书,效果甚佳。
(推荐教材:
①《从问题到程序--程序设计与C语言引论》 机械工业出版社
②《程序设计实践》 机械工业出版社
③《程序设计语言--实践之路》 电子工业出版社 )
3.离散数学:
计算机科学基础课程之一,被誉为计算机科学的数学基础。其内容博大精深,从中派生出的图论(图算法)、数理逻辑、组合数学以及泛代数等多门专业课程是现代计算机科学和应用数学的主要研究领域。能否学好离散数学对进一步学习以后的专业课程有着非同一般的影响。
(推荐教材及参考书:
①《离散数学》(第四版) 清华大学出版社
②《离散数学导学》机械工业出版社
③《现代应用数学手册:离散数学卷》清华大学出版社 )
4.电路与电子技术:
电子产业有“朝阳产业”的美誉,被认为是信息时扰凳代的工业。这门电子与电路技术可谓是对电子学领域学习的敲门砖。虽然课程本身对计算机科学专业今后的学习影响不大,但掌握这项技能对于学生本身专业素养地提高是大有裨益的。同时,学习这门课程也能为今后学习数字逻辑和微机原理等系统底层方面的课程打好基础。
(推荐教材:《电子学基础:电路和元器件》(第四版)清华大学出版社)
5.面向对象程序设计:
如果说上世纪软件开发领域最伟大的突破是什么,面向对象程序设计(OOP)必为其中之一。目前主流的程序设计语言,如C++、Java、Python和Delphi等,几乎清一色支持面向对象。可以说,掌握的面向对象的精髓,便是掌握了我们这个行业的入门钥匙。我校此课程的教学语言采用的是C++,而就国内C++教学的糟糕现状来看,若想完整掌握面向对象思想,学生自己不努力是不行的。
(推荐教材及参考书:
①《C++ Primer中文版》(第四版) 人简信民邮电出版社
②《Essential C++ 中文版》华中科技大学出版社
③《Effective C++ 中文版》(第三版)电子工业出版社
④《Accelerated C++(影印版)》机械工业出版社
⑤《C++语言的设计与演化》机械工业出版社 )
6.数字逻辑:
计算机科学核心课程之一。计算机科学中有一个研究领域即系统设计领域,而本门课程即为这一领域研究的基础。正确认识与掌握数字逻辑及其设计,可以使那些有志于系统底层开发的学生获益匪浅。
(推荐教材:
①《数字基础(第八版)》清华大学出版社
②《逻辑与计算机设计基础》 中国电力出版社 )
7.数据结构:
计算机科学核心课程之一。对数据地有效组织是程序的主要任务之一,算法的主要 *** 作对象亦为数据结构。从简单的数组和链表,到各色高级的抽象数据类型(ADT),数据结构在程序设计中的地位不言而喻。学好数据结构,是进一步学习专业课的基本前提。可以这么说,一个不懂得如何组织和 *** 控数据的学生,根本就不配当我们计算机科学专业的学生,更不配当一名程序员!!!
(推荐教材:
①《C算法 第一卷(第三版)》人民邮电出版社
②《程序设计抽象思想--C语言描述》清华大学出版社
③《数据抽象与问题求解--C++语言描述(第四版)》清华大学出版社
④《数据结构与算法--Java语言描述》机械工业出版社 )
8.计算方法:内容不详,不敢妄作断言。 (推荐教材:待定)
// 转帖者:线性代数、微积分、微分方程等的计算机算法
9.计算机原理与汇编:
系统底层课程之一,亦为计算机科学核心课程。重点讲述计算机(微机)构造以及低级语言--汇编语言的基础知识。学习这门课程,对进一步学习编译原理等专业高级课程有很大帮助。
(推荐教材:
①《深入理解计算机系统》中国电力出版社
②《Intel汇编语言程序设计(影印版)》清华大学出版社
③《Windows环境下32位汇编语言程序设计(第二版)》电子工业出版社
④《汇编语言编程艺术》清华大学出版社 )
10. *** 作系统:
计算机科学的核心课程之一。课程全面讲述了 *** 作系统的原理与构造,各类上机实验更能让学生对 *** 作系统有深刻地理解。
(推荐教材:
①《 *** 作系统(第三版)》机械工业出版社
②《现代 *** 作系统(第二版)》机械工业出版社
③《Linux内核设计与实现(影印版)》机械工业出版社
④《UNIX系统编程》机械工业出版社
⑤《UNIX环境高级编程(第二版)》人民邮电出版社 )
11.软件工程:
计算机科学的核心课程之一。近年来,随着软件开发革命地进一步深化,批判软件工程及过程方法改进的著作日益丰富,我们也得以从不良的软件开放中解放。建议在学习本课程时,联系自己的实战,并阅读批判软件工程和改良软件工程的著作。
(推荐教材及参考书:
①《软件工程:实践者的研究方法(第五版)》机械工业出版社
②《程序设计心理学(银年纪念版)》清华大学出版社
③《人月神话(银年纪念版)》清华大学出版社
④《人件》清华大学出版社 )
12.数据库原理及应用:
计算机科学与信息学科的好像课程之一。课程讲述了数据库原理以及设计等方面的内容。对于那些注重实效的学生而言,学好这门课程,可以使今后的工作更为轻松。
(推荐教材:《数据库系统概念(第四版)》机械工业出版社)
13.运筹学及其算法:
此课程课作为计算机科学的辅助课程,向学生介绍了运筹学方面的算法,此类算法属于现代算法范畴,本人暂时还未涉猎,故恕难对此课程解析之…… (推荐教材:待定)
// 转帖者:线性规划、动态规划、排队论、决策分析等等
14.计算机网络:
计算机科学的核心课程之一。课程详细地介绍了计算机网络的发展、组成和协议方面的内容。对于自我要求较高的同学而言,学好这门课程义不容辞!
(推荐教材:
①《计算机网络(第四版)》清华大学出版社
②《TCP/IP协议族》清华大学出版社 )
15.软件开发管理:
应该是软件工程课的附属课程吧,不详。 (推荐教材:待定)
// 转帖者:对于工程,管理重于技术
16.数学建模:
可以说是本专业的相关课程,但其意义及作用目前在下还不甚了解。 (推荐教材:待定)
// 转帖者:既然学了数学,会用也很重要吧
17.J2EE体系结构:
J2EE是目前我们产业的两大工业平台之一,学习这门课程,可以为今后涉足企业级开发领域打下基础。但请注意,J2EE和Java语言本身都是在不断演进的,因而如果不能在课程结束后持续学习相关技术,恐怕还不等你出大学校门,这门课的内容就已经过时了…… (推荐教材:最新的国外相关教材。)
18.计算机图形学:
计算机科学的核心课程之一。有关计算机图形学在各个领域的应用不必在下一一说明了吧。无论是游戏开发,还是航空航天等前沿领域,到处都有计算机图形学的技术被应用。目前该课程主要用C语言和OpenGL图形库进行教学,效果应该还算不错。
(推荐教材及参考书:
①《计算机图形学原理与实践-C语言描述(第二版)》机械工业出版社
②《交互式计算机图形学--基于OpenGL的自顶向下的方法(第四版)》清华大学出版社
③《OpenGL超级宝典(第三版)》 人民邮电出版社 )
19.微型计算机技术:
计算机专业的核心课程之一。课程详细地分析了微型计算机(主要是单片机)技术,由于这方面资料奇缺,这门课程可不太受在下欢迎…… (推荐教材:待定)
// 转帖者:想搞嵌入式的要注意了
20.编译原理:
计算机科学核心课程之一。如果想要写出好的程序,编译原理的相关知识必不可少,因而这门课程是十分重点的一门课程。课程教材“龙书”、“虎书”和“鲸书”更是我们专业的经典著作。
(推荐教材:
①《编译原理》机械工业出版社
②《现代编译原理--C语言描述》人民邮电出版社
③《高级编译器设计与实现》机械工业出版社 )
21.Web系统开发:
目前主流的web开发主要集中在ASP.NET和JSP开发领域 ,当然,还有近来火爆异常的Ajax,以前的CGI和ASP已经不那么流行了。与J2EE一样,这是一门必须持续学习的课程,否则,你必将被其所抛弃! (推荐教材:最新国外相关书籍。)
22.嵌入式软件开发:
这个领域可谓是软件开发的前沿领域,也是未来软件业霸主的孕育地之一(另两个领域为Web开发和企业级开发)。目前的软件开发领域正蕴含着“泛嵌入式”的潜规则(《程序员》2006年7月刊)。认真并持续学习这门课程,对将来的工作会有莫大的帮助。 (推荐教材:《嵌入式系统开放大全》人民邮电出版社)
23.算法设计与分析:
计算机科学的核心课程之一。“程序是衣,算法为魂”(《程序员》2006年3月刊),这门课程是本专业学生所亟需掌握的,如果学不好这门课,那么,你就不是一名优秀的程序员!
(推荐教材:
①《数据结构与算法分析-C语言描述》机械工业出版社
②《C算法 第一卷 (第三版)》人民邮电出版社 )
24.情报检索与利用
#define File_init_size 1000#define OVERFLOW -1
#include"stdio.h"绝搏
#include"stdlib.h"
/*标准化处理*/
char sta(FILE *p)
{char *ch
int count,n,i=0
ch=(char*)malloc(File_init_size *sizeof(char))
if(!ch) exit(OVERFLOW)
while(!feof(p)) { ch[i]=fgetc(p)i++}
count=n=i
for(i=1i<=ni++){
if(ch[i]=' ')
switch(ch[i-1]){
case ' ':case',':case'祥键.':case'':
for(i<并宴祥ni++){ch[i]=ch[i+1]count--}break
default: break
i++}
}
for(i=0i<counti++)
return ch[i]
}
int main()
{
FILE *fp
if((fp=fopen("f.txt","r"))==NULL){
printf("File open error!\n")
exit(0)
}
fprintf(fp,"%s",sta(fp))
return 0
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)