学习C语言用什么书,用什么软件,本人初学。
我学习了,刚过了全国计算机2级c语言。
入门最好的是C程序设计( 第三版)》谭浩强主编,清华大学出版社。
我最初用的是turbo。
c。
感觉他对初学者比较好用。
但不支持中文,不可以用鼠标,http://www.programfan.com/download.asp?softclass=4。
这里可以下载。
当然vc++6.0也比较好用,支持鼠标操作。
可以写汉字。
个人意见:其实C语言学会不是很难,难的是学通,需要经常敲写代码,多看书, 新书熟悉基本指令后,可以先抄写其他人现成的程序上机实验,多背些程序,为了记住指令的用法。
只要你坚持下去一定会很厉害的,学习编程需要耐得住寂寞。
加油!还有什么疑问可以留言。
学习C语言 必看的书籍
Brian W.Kernighan, Dennis M.Ritchie,《C程序设计语言》 清华影印版、习题集;机械译文版(新版、老版):习题集 这是迄今为止在所有程序设计语言书籍中最广受尊敬的一部经典,是任何一名C程序员的必读之作。
因为出自C语言的设计者Dennis M.Ritchie和著名的计算机科学家Brian W.Kernighan之手,它被昵称为“K&R C”。
是它首先引入了“Hello World!”程序,这个程序几乎成了后来任何一本入门性程序设计语言书籍中的第一个例子。
如同C语言本身简洁紧凑而极具威力一样,这本书轻薄短小而极富张力。
通过简洁的描述和典型的示例,它全面、系统、准确地讲述了C语言的各个特性以及C程序设计的基 法,内容涵盖基本概念、类型和表达式、控制流、函数与程序结构、指针与数组、结构、输入与输出、UNIX系统接口以及标准库等内容。
简洁清晰是这本书最大的特色。
这本小书可以教给你许多比它厚几倍的“大部头”的知识。
我认为那些动辄洋洋洒洒拼凑出好几百页乃至上千页的技术作者应该好好向K&R学一学。
对于中、高级程序员而言,如果希望迅速获得C语言的严肃知识而又不愿意多花费哪怕一丁点时间,这本书就是首选。
顺便说一句,这本书的索引制作非常出色,极具实用价值,这可能首先要归功于正文部分的简明扼要。
此外,尽管它看上去很像一本教程,但其实更是一本写给专业程序员的指南。
如果你不具备任何其他语言程序设计背景或基本的C语言知识,这本书也许并不适合用作你的C语言启蒙读物。
2. Perter Van Der LinDen,《C专家编程》 C专家编程 C语言是严肃的程序员语言,但这并不意味着C语言书籍必须板着面孔说教。
在这本被C程序员昵称为“鱼书”(封面上有一条“丑陋的”腔棘鱼)的著作中,作为SUN公司编译器和操作系统核心开发组成员之一,Peter淋漓尽致地展示了其深厚的技术沉淀、丰富的项目经验、高超的写作技巧以及招牌式的幽默。
在这部作品中,作者以流畅的文字、诙谐的笔法将逸闻典故、智慧和幽默自然地融入技术描述中,读来宛若一本小说,极富趣味。
本书讲述了C语言的历史、语言特性、声明、数组、指针、连接、运行时以及内存使用等知识,揭示了C语言中许多隐晦之处,尤其深入解析了声明、数组和指针、内存使用等方面的细节。
要想成为一名专家级C程序员,这些内容都是必须掌握的。
和其他满是抽象例子的C语言书籍不同,这本书充满了大量的来自真实世界的C程序设计实例,它们对C程序员具有很高的参照价值。
另外,每一章都以极富趣味的“轻松一下”收尾,而附录A“程序员工作面试的秘密”则是任何语言的程序员在应聘工作前增强自信的好材料。
我怀疑真正的C专家可能用不着看这本书 ——从内容到组织方式到行文风格都决定了这是一本轻松愉快的“从菜鸟到高手”的进阶读本,所以,它理应拥有更广泛的读者群。
初级程序员往往更需要热情的鼓励,在阅读这本书的过程中,你定会深深地被作者对编程的激情所感染。
世间并无完美。
我认为这本书的缺陷在于,和大多数平庸的C语言书籍一样,它画蛇添足地加入了一章关于C++的描述。
在今天看来,这个描述既不全面也有失公允。
不过,鉴于作者是在1994年从一名C程序员的角度去观察C++,这一点也就不足为奇了。
3. Samuel P. Harbison, Guy L. Steele,《C语言参考手册(第五版)》 影印版(机械工业出版社)、中文版(机械工业出版社) 在C语言参考手册类书籍里,Samuel P. Harbison 和Guy L. Steele合著的C: A Reference Manual是非常出色的一本。
这本手册的第五版新增了对C99标准的介绍,以便满足新时期C语言学习的需要。
全书共分为两大部分,第一部分专注于C语言特性,第二部分则全面讨论了C标准库。
本书涵盖C99、C89、传统的C、所有版本的C运行库以及编写与C++兼容的C代码等一切知识。
这本手册只是中等厚度,但它比“比它更厚”的其他参考手册更清晰地描述了C语言的现在和过去的方方面面。
整本手册技术细节描述精确,组织条理清楚,内容完备详尽而又简明扼要。
可以这么说,它在广度、深度和精度方面都是出类拔萃的。
对于中、高级C程序员而言,这本手册值得常备案头,它几乎肯定要比K&R的著作使用频率更高。
4. David Hanson,《C语言接口与实现:创建可重用软件的技术》,机械工业出版社 C语言接口与实现:创建可重用软件的技术 C语言能够历经三十多年而不衰,一个重要的原因在于它的适应能力。
在这“复用”、“面向对象”、“组件”、“异常处理”等先进机制漫天飞舞的年代,C语言仍然能够凭借它小而优雅的语言特性,在相当程度上满足现代软件体系架构提出的要求。
只不过,想要达到这个程度,必须要在C的应用功力上达到最高层次。
在嵌入式、系统软件以及对性能要求极高的系统开发中,开发人员必须达到这样的层次,熟练掌握C语言的高级特性,才能够同时满足效率和灵活性、复用性的要求。
可惜,虽然C语言技术图书汗牛充栋,但是关注这个峰顶之域的作品却是屈指可数。
David Hanson的C Interfaces and Implementations就是个中翘楚。
David Hanson是业内大名鼎鼎的...
用C语言编写一个简单的图书管理小程序
展开全部 #include #include #include #include #include #define STACK_INIT_SIZE 10 #define OK 1 #define TRUE 1 #define FALSE 0 #define ERROR 0 struct student /*定义学生类型,用于存放借出的书籍*/ { int carnum; char lendbook[10]; }student[1000]; struct employ /*定义职工类型*/ { int employnum; char employname[15]; int employage; char employsex[2]; char employleve[10]; long int employtage; }employ[50]; struct book /*定义书的类型*/ { int booknum; char bookname[10]; char bookcreat[10]; int turefalse; /*用于借书和还书模块判断一本书是否借出的条件*/ }book[1000]; struct car /*借书卡的数据类型*/ { int carnum; char studentname[10]; int studentclass; }car[100]; huanbook() /*还书函数*/ { FILE *fp,*fp2; /*定义两个文件指针,fp2用于修改数据时设立临时文件用,防止数据遭破坏*/ int i,n; int carnum; char lendbook[10]; printf("请你输入你的卡号\n"); scanf("%d",&carnum); fp=fopen("car.txt","r"); /*读取卡号记录*/ for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) /*for循环判断卡号是否存在*/ { if(car[i].carnum==carnum) /*卡号存在,进入下一循环*/ { n=i; fclose(fp); printf("请输入你要还的书的名字\n"); scanf("%s",lendbook); fp=fopen("record.txt","r"); for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) /*判断是否借阅了输入的书*/ { if(strcmp(student[i].lendbook,lendbook)==0) /*借阅了该书,进入下一循环,否则出错显示*/ { fclose(fp); fp=fopen("record.txt","r"); fp2=fopen("bookl.txt","w"); for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) { if(strcmp(student[i].lendbook,lendbook)==0) { continue; /*删除还掉的书的借书记录*/ } fwrite(&student[i],sizeof(struct student),1,fp2); /*写入原来没还的书的记录*/ } fclose(fp); fclose(fp2); fp=fopen("record.txt","w"); fp2=fopen("bookl.txt","r"); for(i=0;fread(&student[i],sizeof(struct student),1,fp2)!=0;i++) { fwrite(&student[i],sizeof(struct student),1,fp); /*将借书记录信息写回*/ } fclose(fp); fclose(fp2); fopen("bookl.txt","w"); /*清临时文件的记录*/ fclose(fp2); fp=fopen("book.txt","r"); fp2=fopen("bookl.txt","w"); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) /*将书的记录写入临时文件,防止因为修改信息破坏以前的记录*/ { if(i==n) { book[i].turefalse=1; fwrite(&book[i],sizeof(struct book),1,fp2); /*将还的书的原来状态设为无人借阅的*/ continue; } fwrite(&book[i],sizeof(struct book),1,fp2); } fclose(fp); fclose(fp2); fp=fopen("book.txt","w"); fp2=fopen("bookl.txt","r"); for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++) { fwrite(&book[i],sizeof(struct book),1,fp); /*将临时文件写回*/ } fclose(fp); fclose(fp2); fopen("bookl.txt","w"); /*清临时文件*/ fclose(fp2); printf("还书完毕,按任意键返回\n"); getch(); return 1; } } printf("你没有借这样的书,任意键返回\n"); /*出错提示*/ fclose(fp); getch(); return 0; } } printf("系统没这样的卡,和管理员联系,按任意键返回\n"); /*出错提示*/ fclose(fp); getch(); } findbook() { FILE *fp; char bookname[10]; int ture,i; fp=fopen("book.txt","r"); printf("请输入你要查找的书名\n"); scanf("%s",bookname); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) { if(strcmp(bookname,book[i].bookname)==0) { if(book[i].turefalse==1) { printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat); } else {printf("这本书已经有人借出\n");fclose(fp);return 0;} fclose(fp); return FALSE; } } printf("没有你要查询的书籍\n"); fclose(fp); return FALSE; } findbook1() { FILE *fp; char bookcreat[10]; int ture,i; fp=fopen("book.txt","r"); printf("请输入你要查找的作者名\n"); scanf("%s",bookcreat); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) { if(strcmp(bookcreat,book[i].bookcreat)==0) { if(book[i].turefalse==1) { printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat); } else {printf("这本书已经有人借出\n");fclose(fp);return 0;} fclose(fp); return FALSE; } } printf("没有你要查询的书籍\n"); fclose(fp); return FALSE; } lendcount() { FILE *fp; int i,n=0; fp=fopen("record.txt","r"); for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) { printf("卡号:%d 借出的书籍:%s \n",student[i].carnum,student[i].lendbook); n=n+1; } fclose(fp); printf("目前共有%d本书借出\...
初学c语言要买什么书籍? 要用软件吗 ?
我不是想复制,但确实想把如下的好书推荐给你,呵呵C 程序设计语言(特别版)---c 八大金刚----Bjarne Stroustrup“C 之父” C Primer (第3版)中文版----c 八大金刚---Stanley B.Lippman C Primer (第4版)中文版----c 八大金刚---Stanley B.Lippman C 标准程序库—自修教程与参考手册--c 八大金刚--Nicolai M.Josuttis C 语言的设计和演化-----c 八大金刚----Bjarne Stroustrup“C 之父” 深度探索C 对象模型---c 八大金刚----Stanley B.Lippman Essential C 中文版---c 八大金刚---Stanley B.Lippman Effective C 中文版 2nd Edition-----c 八大金刚------Scott Meyers More Effective C 中文版----c 八大金刚------Scott Meyers C 编程思想(第2版) 第1卷:标准C 导引--------Bruce Eckel C 编程思想(第2版)第2卷:实用编程技术 --------Bruce Eckel C 程序设计--------------------------谭浩强 C 程序设计教程(第2版)--------------钱能 C Primer Plus(第五版)中文版---Stephen Prata 广博如四库全书The c programming language、c Primer 深奥如山重水复Inside the c object model 程序库大全The c standard libray 工程经验之积累Effective c 、More Effective c 、Exceptional c c 八大金刚: 1、Essentital c ---lippman---C 之父,旁枝暂略,主攻核心,轻薄短小,初学者 2、The c programming language----C 之父,技术权威,用词深峻,思想深远,c 百科全书代表, 圣经。
3、c Primer----lippman---纵横书市十数年,c 最佳教本,c 百科全书代表。
4、Inside the c object model-----lippman----揭示c 底层,非常好,非常难。
5、Effective c -----通过50个编程实例,展示专家经验,行文有趣,深处浅出。
-------------------------------------------------------------------------------- 3 C 原创,超经典:为何要学编程?如何学编程?用什么语言最好?有 6.More Effective c ----通过35个编程实例,展示专家经验,行文有趣,深处浅出。
7.The c standard libray---c 标准库的百科全书。
8.设计模式:可复用面向对象软件的基础------good!
用C++讲完整的软件开发步骤的比较好的书有哪些
展开全部 MFC的前言”曾经辉煌一时的编程语言工具开发软件商Borland公司在今年4月份更名为Inprise公司,对于广大忠实的Borland追随者来说,这可不是一个好消息。
在Dos编程时代Turbo Pascal,Borland C++是最好的开发工具,Borland公司也曾名列美国五大软件公司之列,可到了Windows时代,微软凭借操作系统的优势终于占了统治地位,Borland的大批人员也跳槽加入了微软(Borland Delphi的主设计师成了Microsoft Visual J++的项目负责人),所以不用奇怪Microsoft的Visual C++汲取了各家技术之长,包括Borland,Phar-lap等著名公司,Visual C++成了Windows时代最流行的商用开发语言。
Windows的开发也走向成熟,早期Windows编程只能用C语言,需要一段一段地重复调用复杂的Windows API,写冗长的消息处理Switch语句,现在大部分开发人员都使用C++进行Windows编程,工具开发商也将Windows API和必要的资料封装到一个个C++类库之中,构成所谓“应用程序框架”(Application Framework),开发人员可以使用它更高效地进行编程,这好比登高楼时用上了电梯,而原来只能辛辛苦苦一步一步慢慢爬,现在用电梯可以上得更快,上得更高,上得更轻松。
Visual C++的“应用程序框架”类库是MFC(Microsoft Foundation Class),Borland公司提供的是OWL(Object Windows Library),OWL和MFC孰优孰劣,笔者不敢妄加评论,但现实是Borland的C++到5.02版就改出C++ Builder,类库改用Delphi的VCL(Visual Component Library)。
MFC功能十分强大,但要学好不容易。
Visual C++提供了各种Wizard和上千种C++类,如果不掌握面向对象编程OOP(Object Oriented Progamming)的技术,了解MFC的结构,很难设计出良好的程序。
很可惜,国内关于这方面有内容和深度的书籍出版太少,而国外的技术书籍在国内又不容易买到,不知道有没有这样的书店可以提供购买国外原版技术书籍的服务,最好还能再打一些折扣,技术书籍的版本更新太快,国外一般书籍较早版本的技术书折扣都很低。
“绝版〈Visual C++内幕〉”是一本关于MFC编程很不错的书籍,国外最新版是第五版,介绍Visual C++ 5.0版,国内中文版由清华大学出版社翻译出版,目前是第二版,介绍Visual C++ 2.0。
作者是David Kruglinski.这本书面向的读者是有C和C++基础,对Visual C++较为陌生的程序员,通过一个一个范例逐步深入介绍MFC编程的方法,而且对于编程中如何使用各种工具作了详细说明,包括按下哪个按钮,从列表框选择哪一项等,对于VC的新用户来说很方便的。
但这绝不是说这本书是一本入门手册,作者只是在需要的时候介绍,毕竟现在的软件使用越来越复杂了。
对于水平较高的读者这本书也有足够多的高级内容可供参考学习。
书中分了四个部分,首先快速介绍“应用程序框架”基本概念和各种工具如调试器,AppWizard,ClassWizard等,接着开始进入MFC编程话题,主要是视类(CView)的用法,通过一些简单程序如绘图,消息响应,图形滚动,对话框控制和OCX使用初步展示MFC编程的方法。
第三部分介绍文档-视结构(Document-View),这也是MFC的核心内容,当你掌握了如何联结文档和视结构后,你会发现相比以前现在实现文件操作和打印多么方便,MFC内部使用了几千行代码支持打印预览和各种打印机,Charles Petzold的著名的〈Windows程序设计〉一书花了60页的篇幅介绍如何支持各种打印机,但使用MFC实现只有几十行代码。
这部分还介绍了各种界面工具,窗口切分,帮助系统,多文档接口(MDI),动态连接库DLL等。
最后部分是高级话题,介绍OLE和资料库管理ODBC,不像一般书籍关于这个内容只是蜻蜓点水,这部分内容非常丰富而且有实用价值.新的英文版主要增加内容大致有三个方面,首先是介绍了VC 5.0的一些新特性,其次对OLE进行了更为深入全面的介绍,包括结构化存储,组件对象模式(COM),OLE自动化等,最后是关于目前最热门的Internet技术,TCP/IP协议,Winsock,WinInet API等,关于Internet的内容只是一个快速介绍,新版内容更充实,不知道清华出版社有没有计划出本书的新版。
英文书第五版的最后还刊登了一张作者的巨幅照片和一则令人伤感的消息,“David是一个作家,程序员,老师和户外活动者(Outdoorsman),热爱徒步旅行,爬山,滑翔伞.1997年4月17日David 死于一次跳伞意外,终年49岁。
” 到VC 5.0成为绝唱,但David的书籍影响了几十万程序员,而且他活得自由自在,人生至此,也就够了。
“VC书籍和MFC书籍”全面介绍MFC的书籍国内出版太少,但关于Visual C++的书籍却不少,真不知道这些人是如何选材的,MFC才是Visual C++的核心,不掌握好MFC ,怎么设计出好的VC程序。
机械工业出版社的一书介绍了很多MFC的应用实例,其实英文名是〈Visual C++ How TO〉,程序员进行编程时会碰到很多问题,这本书提供了很多技术解决方法,对于VC程序员颇具参考价值。
国外关于MFC的好书还有Jeff Prosise的,Alan R. Feuer的〈MFC Programming〉,Addison Wesley公司出版的以及台湾候...
有没有可以学习编c语言程序的书?急急急!
1. The C programming language《C程序设计语言》2. Pointers on C《C和指针》3. C traps and pitfalls《C陷阱与缺陷》4. Expert C Lanuage《专家C编程》5. Writing Clean Code-----Microsoft Techiniques for Developing Bug-free C Programs《编程精粹--Microsoft 编写优质无错C程序秘诀》6. Programming Embedded Systems in C and C++《嵌入式系统编程》7.《C语言嵌入式系统编程修炼》8.《高质量C++/C编程指南》林锐
转载请注明出处51数据库 » 用c编写的软件的书籍