当前位置:首页 » 编程语言 » c程序设计语言教材习题
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c程序设计语言教材习题

发布时间: 2022-05-09 03:02:33

㈠ C程序设计语言 K&R 第二版 课后习题算难的吗今天在做第一章最后几道题目的时候,想象起来都觉得不难

你问的第一个问题,算是所有初学者都会有的问题。
譬如给你一堆工人,一张设计图(或没有),让你去设计一栋大楼。
不妨可以设身处地的设想下,你会感觉,你对于楼房什么样子的,概念都是有的,华丽的、庄严的、威武的,基本上已经美滋滋的出现在你脑子里了。
现在开始做,用不了两天,各式各样的问题出现了,譬如,有的你能想到的,它实现不了;譬如有的能实现,你不是按照你预先设想的那个样。
然后,或许中途而非,或许出来一个你完全没有想到的丑陋的房子。
为什么这样?很容易想通,因为建造大楼的基本知识,你没有,或者有而基础不牢固。
写C是不是也这种感觉呢?
变量类型,不少;方法定义方式,不少;同一个问题,实现的方式,不少;各种精妙的部署方式也不少。
可唯独少的,就是你对他们的了解,因为一无所知,所以,不知道该在什么时候用什么东西,来较为完美的完成自己的设想。
所以,对于这个初学者的问题,你只是缺扎实的基础。
第二个问题,我还算不上什么老手,不过,我能明显的感觉到自己很明显的成长。
我的解决思路是这样的。
一开始学C: 想实现一个工程,先在脑子里大概把它分解为比较小的单元,然后挨个实现。实现完 毕后,发现很多东西,可以改善(比如有时候switch的使用,而后发现,有些地方,for + if 更能高校解决问题<这里的高效,仅仅指的是代码精简>),这样,积累了最初的经验,也算是对所有的C设计的比较基础的问题,齐齐的摸索了一便,走了不少弯路,也积累了很多经验。
后来熟悉后用C: 想实现一个工程,先思维工程主体思路是什么,用流程图勾勒出来完整的流程,大概流程出炉后,在考虑各个流程中如何实现;思考一圈,就会发现有些地方,思路实现的问题性很重,就这样不停的改,等得出一个较为合理的思路后,编写代码,测试运行。常常在运行的时候,就会发现自己很多问题没考虑到,相对一开始写C效率上来了很多,经验积累也快了许多。
现在用C:方式和上边的相差不大,不过,简单了不少,很多要实现的东西,一知道后,立刻脑子里就有相对应的几种方式。然后,考虑运行速率,占用内存情况,内存溢出等常常不小心就会出现的问题是否都考虑周全,如果有同事,讨论下,参考是否有更好的解决办法,然后动手。
总之,不论学什么语言,一开始,扎实的基础,永远是最重要的。这个,等你有一年代码经验,你就会很深刻的体会到。当然,写代码的时候,最好一开始就注意代码规范,推荐一个 华为的C代码规范,你可以网络下。养成一个良好的习惯,伴随一个扎实的基础,没什么你会感觉到解决不了的。

㈡ 求谭浩强第四版c语言程序设计 课后习题答案 必采纳

第1章程序设计和C 语言1

1.1什么是计算机程序1

1.2什么是计算机语言1

1.3C 语言的发展及其特点3

1.4最简单的C 语言程序5

1.4.1最简单的C 语言程序举例6

1.4.2C 语言程序的结构10

1.5运行C 程序的步骤与方法12

1.6程序设计的任务14

1-5 #include <stdio.h>

㈢ C语言程序设计有哪些好点的书籍和习题

谭浩强的 c语言程序设计 比较基础 对于初学的你来说还是可以的了 视频上网看曾仪的吧 挺好的

㈣ 《C程序设计语言》里的练习题对于初学者来讲算难吗大家对学这本书有什么建议看完了这本该看什么

学了汇编后,再学c语言,肯定容易,因为汇编比c语言难学,这就是先难而后易,而且两者是互补的,即先会汇编,再学学c语言非常容易,虽不能说一马平川,但也是畅通无阻的。但你先学c语言,再学汇编的话,甚难,因为思维无法转变过来。尤其学汇编耗时,只会汇编的话,找工作不好找。许多人学了汇编,之所以还不精通,因为没有弄懂计算机原理,所以要学计算机体系,但学了还是懵懵懂懂,因为还要学电路基础等,最好能制作个发电机。所以,按照这个路子,耗时,没有10的恒心,只能半途而废,但这条路子坚持下来了,中国的公司随便你挑选,尤其今后的it肯定软硬结合,你可以轻而易举转到单片机上,那些只学c语言的可就麻烦了,只会软件,不懂硬件。
《算法导论》还有离散数学啥,牛人也是必须学的,包括物理、英语,也要跟得上,我指的是牛人,世界的公司随便你挑的那种,一般的话,这些可以不学,照样可以学c语言的。

㈤ C语言程序设计教程(第三版)课后习题10.3


#include<iostream>
usingnamespacestd;
#defineN10
voidinput(inta[N]){
inti;
printf("shuru ");
for(i=0;i<N;i++){
scanf("%d",&a[i]);
}
}
voidexchange(inta[N]){
intt,m=0,n=0;
inti;
intt1=a[0],t2=a[0];
for(i=0;i<10;i++){
if(a[i]>t1){
t1=a[i];
m=i;
}
if(a[i]<t2){
t2=a[i];
n=i;
}
}
t=a[0];a[0]=a[n];a[n]=t;
t=a[9];a[9]=a[m];a[m]=t;
}


void___exchange(inta[N]){
// intt,m=0,n=0;
inti;
intt1,t2;//t1=max.t2=min;
t1=t2=a[0];
//max=num[0];
for(i=0;i<10;i++){

if(t1<a[i])
t1=a[i];
if(t2>a[i])
t2=a[i];
}
a[0]=t1;
a[9]=t2;
// returna;

}voidoutput(inta[]){
inti;
printf("dayin ");
for(i=0;i<N;i++)
printf("%d",a[i]);
printf(" ");
}
intmain(){
inta[N];
input(a);
___exchange(a);
output(a);
return1;
}

先mark~~看看你的代码先~~

之前的OK了~~就是一个比较~~遍历比较~~

㈥ c语言程序设计第三版课后习题答案

习 题 1

1.1 填空题

1.函数

2.主函数main();主函数main()

3.主函数main()

4.函数首部;函数体

5.{;}

6.顺序结构;选择结构;循环结构

7..c;.obj;.exe

1.2 思考题

1.答:结构化程序设计是指,为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。顺序结构,选择结构,循环结构

2.答:算法是对具体问题求解步骤的一

㈦ 介绍几本c语言的代码练习书

C程序设计之四书五经
荣耀/文
引言 自从Dennis M.Ritchie于1973年设计并实现C语言以来,计算机程序设计领域已经发生了巨 大的变化。以C语言为根基的C++、Java和C#等面向对象语言相继诞生,并在各自领域大获成 功。今天,C及其后裔几乎统治了计算机程序设计世界。可以这么说,C语言的诞生是现代程序 语言革命的起点,它改变了程序设计语言发展的轨迹,是程序设计语言发展史中的一个里程碑。 然而,C并不仅仅是其他语言的起点和基础,否则它早已成为程序设计语言发展过程中又 一个被遗弃者。和当初发明时一样,C语言今天依然至关重要。它的表达力、效率、简练、紧 凑、对机器的最终控制以及跨平台的高度移植性,使其在系统编程、嵌入式编程等领域一直占 据着统治地位,而C99标准的制订则再一次使C语言焕发出新的活力。下文介绍C程序设计领域 中的几本好书,其中一些堪称经典。
1. 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语言的严肃知识而又不愿意多花费哪怕一丁点时间, 这本书就是首选。四书五经:CSDN《程序员》四书五经专栏历年文章汇总 顺便说一句,这本书的索引制作非常出色,极具实用价值,这可能首先要归功于正文部分 的简明扼要。此外,尽管它看上去很像一本教程,但其实更是一本写给专业程序员的指南。如 果你不具备任何其他语言程序设计背景或基本的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语言参考手册(第五版)》四书五经:CSDN《程序员》四书五经专栏历年文章汇总 影印版(机械工业出版社)、中文版(机械工业出版社) 在C语言参考手册类书籍里,Samuel P. Harbison 和Guy L. Steele合着的C: AReference 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是业内大名鼎鼎的自由编译器lcc的合作者。在这个项目中,他负责提供高度四书五经:CSDN《程序员》四书五经专栏历年文章汇总 可复用的基础架构。在不断的实践中,他完全使用ANSI C形成了一整套可复用组件库。这套组 件库架构清晰,性能优异,而且提供了很多高级的特性,比如类Win32 SEH的异常处理机制、 可移植的线程库、高性能的内存池、丰富的可复用数据结构组件。David Hanson把他在创作这 些组件的过程中所积累的心得以及对其源码的精致剖析原原本本地写在了这本书里。这样的着 作,当然堪称C语言领域里的铭心绝品。难怪已故着名技术作家Richard Stevens对此书赞不绝 口,他说:“这本书中的技术,对于大部分C程序员来说,已经遗忘得太久了。”对于希望能在C 语言应用上达到最高层次的核心程序员而言,这本书是难得的必读之作。
其他 除了以上四本书以外,我还乐意推荐Andrew Koenig的着作《C陷阱和缺陷》(人民邮电出 版社)和Deitel父子合着的C How to Program两本书。 C陷阱和缺陷 Andrew Koenig是世界上屈指可数的C++专家,他的这本书可能是最薄的一本C语言经典。 它简明扼要地讲述了C程序设计中的陷阱和缺陷,包括词法陷阱、语法陷阱、语义陷阱、连接、 库函数、预处理器以及可移植性缺陷等,最后一章还给出了关于如何减少程序错误的建议以及 前面各章问题的参考答案。尽管这个小册子成书于C89标准制定之前,然而,即使到了C99早 已颁布的今天,书中提到的大多数陷阱和缺陷一如十五年前那样使我们警醒。 C程序设计教程 Deitel父子合着的C How to Program一直是非常好的C语言入门教程,我手头的中译本名为 《C程序设计教程》(机械工业出版社出版,原书第二版)。除了对技术的正规描述(辅以许 多简明扼要的例子)外,每一章后面都带有小结、术语、常见的程序设计错误、良好的程序设四书五经:CSDN《程序员》四书五经专栏历年文章汇总 计习惯、性能忠告、可移植性忠告、软件工程评述、自我测验练习及答案等。整书内容清晰, 组织良好,易于阅读和理解。值得一提的是,有许多入门书读完一遍即可扔掉,而这一本是个 例外。 结语 以上这几本书很大程度上局限于描述C语言及标准库本身,如果希望学习更专业的、领域 相关的C程序设计技术,你可以在选择阅读这几本书的基础上继续查阅专门书籍。此外,在C语 言书籍领域,水平不相上下的作品有很多,这几本只是根据我自身的阅读体验而做出的推荐。 我并不是一名C程序员,我的大多数时间都花在C的后裔语言尤其是C++身上了。然而,正 如你知道的那样,C++并不全是类和模板,不全是面向对象和泛型编程,在较低的层面,C++ 的各个实现一如既往在很大程度上兼容C。C++和C的亲密关系决定了每一本C语言经典都应该 是C++程序员的读物。 这世界变化得真是太快。各色新事物层出不穷,让人眼花缭乱、目不暇接。人们也很容易 被那些五光十色的花哨玩意儿所吸引,常常会忘记构筑过去、现在和未来的坚实基础。C语言 就是这样的基础之一。今天,世界上有许多我们看不见的重要软件是用C语言(以及C++等)编 写而成的,正是它们在默默地支撑着这个信息世界的运转。

㈧ c语言程序设计课后习题解答与实验指导

#include<stdio.h>
int max(int x,int y,int z)
{
int t;
t=x>y?x:y;
t=t>z?t:z;
return(t);
}
int min(int x ,int y,int z)
{
int t;
t=x<y?x:y;
t=t<z?t:z;
return(t);
}
int aver(int x ,int y,int z)
{
int t;
t=(x+y+z)/3;
return(t);
}
void main()
{ int x,y,z,a,b,c;
scanf("%d,%d,%d",&x,&y,&z);
a=(*max)(x,y,z);
b=(*min)(x,y,z);
c=(*aver)(x,y,z);
printf("%d,%d,%d\n",a,b,c);
}
建议改成:
#include<stdio.h>
int max(int x,int y,int z)
{
int t;
t=x>y?x:y;
t=t>z?t:z;
return(t);
}
int min(int x ,int y,int z)
{
int t;
t=x<y?x:y;
t=t<z?t:z;
return(t);
}
float aver(int x ,int y,int z)
{
int t;
t=(float)((x+y+z)/3.0);
return(t);
}
void main()
{ int x,y,z,a,b;float c;
scanf("%d,%d,%d",&x,&y,&z);
a=(*max)(x,y,z);
b=(*min)(x,y,z);
c=(*aver)(x,y,z);
printf("max=%d\nmin=%d\naver=%g\n",a,b,c);
}

㈨ 请高手推荐几本 C语言的习题书

有个,那里高手很多。我学C第一本是C 语言宝典(电子工业出版社),讲的是很详细,从C的基础到进阶篇到高级篇,再到底层开发,最后是最后给出了三个应用实例,配备光盘里有配套代码,个别处有小的 错误,很少,看只了三四遍,更应该是操作。
要是想学C,重点就是指针了,后面的文件处理我倒还不清楚要不要掌握,因为现在数据的处理大都用数据库了,但我认为学好C还是有必要学学的,还有C的屏幕键盘操作、系统调用等,再说一点,C主要就是用在嵌入式开发,若要重点发展它,还要了解更多的东西。
还有一个资源, 是我最近才发现的,就如鹏网,C语言也能干大事,进去后也能学到很多知识,也有视频VC,.NET等的讲解。
别的也不多说了,感觉没帮上你什么大忙,对C想要些什么资源,在网上搜搜,本人也愿意提供些帮组给你。我邮箱[email protected]以后想再联系,可用Q