
重点推荐C语言四大圣经:《C语言程序设计》、《C和指针》、《C陷阱与缺陷》、《C作家编程》。其中C语言的发明者K&R的《C程序设计语言》更是重中之重,此书是C语言的第一秘典。所有优秀程序员的必经之路。
四大圣经及其他优秀书籍的信息:
1《C语言程序设计》
K&R
清华大学出版社
2《C和指针》
POINTERS ON C Kenneth AReek、
徐波 人民邮电出版社
3《C陷阱与缺陷》
Andrew Koenig、 高巍
人民邮电出版社
4《C专家编程》
Expert C Programming Deep C Secrets Peter Van
Der Linden 人民邮电出版社 (2008-02出版)
5《清华大学计算机系列教材•数据结构(C语言版)(附光盘1张)》
吴伟民、 严蔚敏
清华大学出版社
6《计算机算法设计与分析(第3版)》
王晓东
电子工业出版社
7《算法艺术与信息学竞赛•算法竞赛入门经典》
刘汝佳
清华大学出版社
8《算法导论(原书第2版)》
科曼(Cormen TH)、等、 潘金贵
机械工业出版社 (2006-09出版)
9《编程之美:微软技术面试心得 》
《编程之美》小组
电子工业出版社
10《编程珠玑(第2版)》
Jon Bentley、黄倩、 钱丽艳
人民邮电出版社
11《算法艺术与信息学竞赛》
刘汝佳
清华大学出版社
12《程序员面试宝典(第3版)》
欧立奇、刘洋、 段韬
电子工业出版社
13《数学之美》
(《浪潮之巅》作者吴军最新力作,李开复作序推荐,Google黑板报百万点击)
最好的莫过于《计算机编程艺术》
这是从专业角度研究程序设计的方法,计算机领域的许多经典算法的或其雏形就来源于此具体内容设计除了算法外,还有数据结构用一句话来解释,那就是:程序=算法+数据结构你可以由此体会这个系列的书的价值KNUTH是最早研究算法和数据结构问题的专业人士典型问题,比如数据的排序过程,比如信息的检索动作,如何速度更快,耗费的空间更少,相信冒泡排序等算法你是听过的你自己可以尝试了看能否比这些算法更好,更有效率。
据我所知作者因为这么本书而得了图灵奖;还有就是比尔盖茨曾说过:要是你能看懂这书的三卷,就给我发一份你的简历。
附:我把这书下了一下,脑袋到现在都在晕
#include<stdioh>
void main()
{int s=0,n=1;
do
{s=s+n;n++;}
while(s<=1000);
s=s-n; /当s最接近1000时会再加一个n,所以要减去最后一个n/
n=n-1;
printf("s=%d\n n=%d\n",s,n);
}
热情高是好事,建议阅读顺序:C和指针、C Primer Plus(第五版)、c陷阱与缺陷 、C专家编程
,我的第一本入门书是 谭浩强的C语言的程序设计,你选的这几本书都是外国著作,和中国人的思维有点不太一样,而且有些地方可能会翻译的晦涩难懂;不过我还是很推荐外国著名教材,看完过后就会深有体会外国的思维和中国的思维的不同点
我这是源代码已经调试过了,在VC++上运行成功了。
#include "stdioh" /I/O函数/
#include "stdlibh" /其它说明/
#include "stringh" /字符串函数/
#include "conioh" /屏幕 *** 作函数/
#include "memh" /内存 *** 作函数/
#include "ctypeh" /字符 *** 作函数/
#include "alloch" /动态地址分配函数/
struct score
{
int mingci;
char xuehao[8];
char mingzi[20];
float score[6];
}data,info[1000];
int i,j,k=0;
char temp[20],ch;
FILE fp,fp1;
void shuru()
{
if((fp=fopen("s_scoretxt","ab+"))==NULL)
{
printf("cannot open this file\n");
getch();exit(0);
}
for(i=0;i<=1000;i++)
{
printf("\nPlease shuru xuehao:");
gets(dataxuehao);
printf("Please shuru mingzi:");
gets(datamingzi);
printf("Please shuru yuwen score:");
gets(temp);datascore[0]=atof(temp);
printf("Please shuru shuxue score:");
gets(temp);datascore[1]=atof(temp);
printf("Please input yingyu score:");
gets(temp);datascore[2]=atof(temp);
printf("Please shuru wuli score:");
gets(temp);datascore[3]=atof(temp);
printf("Please shur huaxue score:");
gets(temp);datascore[4]=atof(temp);
datascore[5]=datascore[0]+datascore[1]+datascore[2]+datascore[3]+datascore[4];
fwrite(&data,sizeof(data),1,fp);
printf("anothery/n");
ch=getch();
if(ch=='n'||ch=='N')
break;
} fclose(fp);
}
void xianshi()
{
float s;int n;
if((fp=fopen("s_scoretxt","rb+"))==NULL)
{
printf("Cannot reading this file\n");
exit(0);
}
for(i=0;i<=1000;i++)
{
if((fread(&info[i],sizeof(info[i]),1,fp))!=1)
break;
}
printf("\nxuehao mingzi yuwen shuxue yingyu wuli huauxue zhongfen\n");
for(j=0,k=1;j<i;j++,k++)
{
info[j]mingci=k;
printf("%6s %8s %31f %31f %31f %31f %31f %31f\n",info[j]xuehao,info[j]mingzi,info[j]score[0],info[j]score[1],info[j]score[2],info[j]score[3],info[j]score[4],
info[j]score[5]);
}
getch();
fclose(fp);
}
void xiugai()
{
if((fp=fopen("s_scoretxt","rb+"))==NULL||(fp1=fopen("temptxt","wb+"))==NULL)
{
printf("Cannot open this file\n");
exit(0);
}
printf("\nPLease shuru xiugai xuehao:");
scanf("%d",&i); getchar();
while((fread(&data,sizeof(data),1,fp))==1)
{
j=atoi(dataxuehao);
if(j==i)
{
printf("xuehao:%s\nmingzi:%s\n",dataxuehao,datamingzi);
printf("Please shuru mingzi:");
gets(datamingzi);
printf("Please shuru yuwen score:");
gets(temp);datascore[0]=atof(temp);
printf("Please shuru shuxue score:");
gets(temp);datascore[1]=atof(temp);
printf("Please input yingyu score:");
gets(temp);datascore[2]=atof(temp);
printf("Please input wuli score:");
gets(temp);datascore[3]=atof(temp);
printf("Please input huaxue score:");
gets(temp);datascore[4]=atof(temp);
datascore[5]=datascore[0]+datascore[1]+datascore[2]+datascore[3]+datascore[4];
} fwrite(&data,sizeof(data),1,fp1);
}
fseek(fp,0L,0);
fseek(fp1,0L,0);
while((fread(&data,sizeof(data),1,fp1))==1)
{
fwrite(&data,sizeof(data),1,fp);
}
fclose(fp);
fclose(fp1);
}
void chazhao()
{
if((fp=fopen("s_scoretxt","rb"))==NULL)
{
printf("\nCannot open this file\n");
exit(0);
}
printf("\nPLease shuru xuehao chakan:");
scanf("%d",&i);
while(fread(&data,sizeof(data),1,fp)==1)
{
j=atoi(dataxuehao);
if(i==j)
{
printf("xuehao:%s mingzi:%s\nyuwen:%f\n shuxue:%f\n yingyu:%f\n wuli:%f\n huaxue:%f\n ",dataxuehao,datamingzi,datascore[0],datascore[1],datascore[2],datascore[3],datascore[4],datascore[5]);
}getch();
}
}
void shanchu()
{
if((fp=fopen("s_scoretxt","rb+"))==NULL||(fp1=fopen("temptxt","wb+"))==NULL)
{
printf("\nopen scoretxt was failed!");
getch();
exit(0);
}
printf("\nPlease input ID which you want to del:");
scanf("%d",&i);getchar();
while((fread(&data,sizeof(data),1,fp))==1)
{
j=atoi(dataxuehao);
if(j==i)
{
printf("Anykey will delet it\n");
getch();
continue;
}
fwrite(&data,sizeof(data),1,fp1);
}
fclose(fp);
fclose(fp1);
remove("s_scoretxt");
rename("temptxt","s_scoretxt");
printf("Data delet was succesful!\n");
printf("Anykey will return to main");
getch();
}
main()
{
while(1)
{
clrscr(); /清屏幕/
gotoxy(1,1); /移动光标/
textcolor(YELLOW); /设置文本显示颜色为**/
textbackground(BLUE); /设置背景颜色为蓝色/
window(1,1,99,99); / 制作显示菜单的窗口,大小根据菜单条数设计/
clrscr();
printf("welcome to use student manage\n");
printf("menu\n");
printf(" ========================================================= \n");
printf(" 1>shuru 2>xiugai \n");
printf(" 3>shanchu 4>chazhao \n");
printf(" 5>xianshi 6>exit \n");
printf(" \n");
printf(" --------------------------------------------------------- \n");
printf(" Please input which you want(1-6):");
ch=getch();
switch(ch)
{
case '1':shuru();break;
case '2':xiugai(); break;
case '3':shanchu(); break;
case '4':chazhao(); break;
case '5':xianshi(); break;
case '6':exit(0);
default: continue;
}
}
以上就是关于C语言高级编程看什么书好全部的内容,包括:C语言高级编程看什么书好、关于c语言算法的书籍有哪些啊 哪一本最好知道的麻烦告知小弟一下 谢谢了、C语言 程序设计等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)