
1C语言入门经典
《C语言入门经典》例子简单生活化,而且每个例子分析很细。章节安排合理,章末的例子还特别注重思路的引导,而且分析起来特别有成就感。
这本书是自学过程的一本好书。
2C primer plus
这本书很适合希望系统学习C语言的读者,正如他的名字,是一本不错的入门和进阶的书。书中的每一个知识点都有很多生动简单的示例,并给出了相应的运行结果。总之,在看这本书的过程中,有一种一气呵成的感觉。
3C和指针
这本书和《专家编程》《C缺陷和陷阱》可以并称C语言(进阶书)三杰。本书的部分内容更适合有C基础的人看。如ADT、递归、指针和数组的部分,书中所述的思想是国内教材所缺乏的。看完本书,能得到一个正确的C语言观。
4C程序设计语言
难以置信的是,这样一本C语言的入门书籍,从hello world开始讲起,却在短小的篇幅里,手把手教你写了stdioh stdlibh stringh当中大部分例程,实现了二分查找、快速排序、二叉树、哈希表这些重要的数据结构和算法。这本书传递着一种简单、优雅、平实和闲适。
5C专家编程
新手初学者如何轻松学习C语言/C++编程
编程分享小辰 2018-03-25 22:32:53
C语言是面向过程的,而C++是面向对象的
C和C++的区别:
C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。
C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。
C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。
建议你看一些国外的经典教材,
《C和指针》
《C程序设计语言》
《C语言编程》
许多国产的教材都使用不标准的C或者是用已经过时很久的,如果不是应付考试,建议学C99标准的C,比较有用。
如果是应付学校考试就没办法只好学国产的教材,如果谭浩强的
《C程序设计》
#include<stdioh>
#include<stringh>
struct sale/商品名的定义/
{int number;<br>char name[20];<br>float price;<br>long count;<br>long time;<br>long date;};
/各个函数/
void input(struct sale s[7]);/输入函数/
void output(struct sale s[7]);/输出函数/
void seek(struct sale s[7]);/查找函数/
void row(struct sale s[7]);/排序函数/
void change(struct sale s[7]);/删除、修改、或插入/
void main()/主函数执行区域/
{struct sale s[7]={{2,"pen",05,200,20050604,20090102},{1,"milk",35,100,20050403,20090202},
{5,"coke",35,500,20060203,20070503},{6,"chewing",03,200,20060305,20080205},
{4,"eraser",04,20,20060304,20500607},{3,"pencil",09,100,20040607,20060709}};/定义初始值/;
/input(s);已付初始值暂不运行!!/
output(s);
seek(s);
row(s);
change(s);
}
/void input(struct sale s[7])注释:已付初始值,暂不运行!!
{int i;<br>printf("请分别输入产品编号、名称、单价、库存数量、入库时间、有效日期:\n");<br> for(i=0;i<7;i++)<br> scanf("%d%s%f%ld%ld%ld",&snumber,&sname,&sprice,&scount,&stime,&sdate);}/
void output(struct sale s[7])/定义输出/
{int i;<br>printf("编号\t名称\t单价\t库存数量\t入库时间\t\t有效日期\n");<br> for(i=0;i<7;i++)<br> printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",snumber,sname,sprice,scount,stime,sdate);}
void seek(struct sale s[7])/定义查找/
{int i;<br> int m;<br> int k;<br> k=1;<br> printf("请输入要查找的编号\n");<br> printf("m== ");<br> scanf("%d",&m);<br> for(i=0;i<7;i++)<br> {<br> if(m==snumber)<br> {printf("你想查找的物品是:\n");<br> printf("编号\t名称\t单价\t库存数量\t入库时间\t\t有效日期\n");<br> printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",snumber,sname,sprice,scount,stime,sdate);<br> k=m;}
}
if(k==1)
printf("没有此类商品!!!\n");
}
void row(struct sale s[7])/排序/
{
struct sale t;
int i,j;
int m,a;
printf("\n");
printf("输出已排好序的商品\n");
for(j=0;j<6;j++)
for(i=0;i<6-j;i++)
if(snumber>snumber)
{
t=s;
s=s;
s=t;
}
printf("重新排序后是; \n");
printf("编号\t名称\t单价\t库存数量\t入库时间\t\t有效日期\n");
for(a=0;a<7;a++)
printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",s[a]number,s[a]name,s[a]price,s[a]count,s[a]time,s[a]date);
}
void change(struct sale s[7])/删除、修改、或插入/
{
struct sale c;
int i,m,q,n,k;
k=0;
printf("请输入您要删除、修改或要插入的物品编号\n");/前奏/
scanf("%d",&m);
for(i=0;i<7;i++)
if(m==snumber)
{{printf("编号\t名称\t单价\t库存数量\t入库时间\t\t有效日期\n");<br> printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",snumber,sname,sprice,scount,stime,sdate);}
printf("你确实要删除它么???还是要修改??\n");
printf("如果想删除请输入1,如果要修改请输入2。\n");
printf("您要输入的是: ");
scanf("%d",&q);
if(q==1)/执行删除命令/
{printf("您删除后的结果是:\n");<br> for(i=0;i<7;i++)<br> if(m!=snumber)<br> {printf("编号\t名称\t单价\t库存数量\t入库时间\t\t有效日期\n");<br> printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",snumber,sname,sprice,scount,stime,sdate);}}
if(q==2)/执行修改命令/
{printf("输入你想修改的库存数量: ");<br> scanf("%d",&n);<br> s[m]count=n;<br> printf("修改后的商品信息为:\n");<br> printf("编号\t名称\t单价\t库存数量\t入库时间\t\t有效日期\n");<br> for(i=0;i<7;i++)<br> printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",snumber,sname,sprice,scount,stime,sdate);}
k=i;
}
if(k==0)/执行插入命令/
{printf("\n\n");<br> printf("由于插入语句没有要求,所以插入语句尚未完成,有些功能尚未完善,所以会有错误,请老师见谅。\n\n\n");<br> printf("此类商品不存在,请插入\n");<br> printf("请分别输入要插入产品的编号、名称、单价、库存数量、入库时间、有效日期:\n");<br> i=m-1; <br> scanf("%d%s%f%ld%ld%ld",&snumber,&sname,&sprice,&scount,&stime,&sdate);<br> printf("编号\t名称\t单价\t库存数量\t入库时间\t\t有效日期\n");<br> printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",snumber,sname,sprice,scount,stime,sdate);<br> for(i=0;i<7;i++)<br> printf("%d\t%s\t%2f\t%ld\t\t%ld\t\t%ld\n",snumber,sname,sprice,scount,stime,sdate);<br> <br> <br> row(s);<br> <br> <br> }}
这是我大一时候做的大作业,虽然不是图书管理系统,你只要改改就行了,原理都一样,呵呵
以上就是关于学习c语言哪个书比较好些全部的内容,包括:学习c语言哪个书比较好些、C语言入门书籍有哪些、用C语言编一个简单的图书管理系统(包括借阅查询还书三部分)(学生作业用)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)