本书是一本优秀的C程序设计语言教材,完整描述了ANSIC语言及其语法特性,并对C语言的高级特性和应用作了深入阐述,介绍了从C到C++和Java过渡的相关知识。本书的一个鲜明特色就是结合大量示例描述c语言的重要特征,并对很多工作代码给出了逐步的分析,以这种独特的教学方法向读者解释新接触的编程元素及一些惯用法。
本书系统、完整,可作为C语言的参考手册,也非常适合作为学习C语言的入门和高级课程教材。从这里,你会爱上编程·
书名
c语言教程
装帧
平装
开本
16
页数
342
书 名: C语言教程
作 者:凯利(Kelley(Pohl) (美)波尔A.)(美)I.
出版社: 机械工业
出版时间: 2007
ISBN: 9787111202134
开本: 16
定价: 45.00 元
本书是一本优秀的C程序设计语言教材,完整描述了ANSIC语言及其语法特性,并对C语言的高级特性和应用作了深入阐述,介绍了从C到C++和Java过渡的相关知识。本书的一个鲜明特色就是结合大量示例描述c语言的重要特征,并对很多工作代码给出了逐步的分析,以这种独特的教学方法向读者解释新接触的编程元素及一些惯用法。
本书系统、完整,可作为C语言的参考手册,也非常适合作为学习C语言的入门和高级课程教材。从这里,你会爱上编程.
IraPohl是美国加州大学圣克鲁兹分校计算机科学技术系教授,具有20多年和C++语言有关的经典著作(其中,《C++精碎》和《C语言解析教程》已经由机械工业出版社翻译出版)。他曾为多家机构提供技术咨询服务,包括DFC公司、苹果公司、斯坦福线形加速器研究中心、Xylin和Gupta公司等。
函数的递归调用
Turbo C2.0允许函数自己调用自己,即函数的递归调用,递归调用可以使程序简洁、代码紧凑,但要牺牲内存空间作处理时的堆栈。
如要求一个n!(n的阶乘)的值可用下面递归调用:
例8:
#include<stdio.h>
unsigned ling mul(int n);
int main()
{
int m;
puts("Calculate n! n=?\n");
scanf("%d", &m); /*键盘输入数据*/
printf("%d!=%ld\n", m, mul(m));/*调用子程序计算并输出*/
getch();
retun 0;
}
unsigned long mul(int n)
{
unsigned long p;
if(n>1)
p=n*mul(n-1); /*递归调用计算n!*/
else
p=1L;
return(p); /*返回结果*/
}
运行结果:
calculate n! n=?
输入5时结果为:
5!=120