`
caoruntao
  • 浏览: 480954 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

谭浩强<<C程序设计>>

阅读更多

输入与输出

putchar 函数

    输出单个字符,

 

getchar函数

1)       getchar函数只能接受单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。

2)       使用本函数前必须包含文件“stdio.h

 

printf函数(格式输出函数)

 

scanf函数(格式输入函数)

1)       scanf函数中没有精度控制,如:scanf("%5.2f",&a);是非法的。不能企图用此语句输入小数为2位的实数。

2)       scanf中要求给出变量地址,如给出变量名则会出错。如 scanf("%d",a);是非法的,应改为scnaf("%d",&a);才是合法的。

3)       在输入多个数值数据时,若格式控制串中没有非格式字符作输入数据之间的间隔则可用空格,TAB或回车作间隔。C编译在碰到空格,TAB,回车或非法数据(如对%d输入12A时,A即为非法数据)时即认为该数据结束。

4)       在输入字符数据时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符。

 

语句

switch(表达式),表达式可以是整型、字符型以及枚举类型。

 

字符串处理函数

puts: 字符串输出函数

gets:字符串输入函数

strcat:字符串连接函数

strcpy:字符串拷贝函数

strcmp:字符串比较函数

strlen:测字符串长度函数,测字符串的实际长度(不含字符串结束标志\0) 并作为函数返值。

 

用宏定义表示数据类型和用typedef定义数据说明符的区别

宏定义只是简单的字符串代换,是在预处理完成的,而typedef是在编译时处理的,它不是作简单的代换,而是对类型说明符重新命名。被命名的标识符具有类型定义说明的功能。

请看下面的例子:

    #define PIN1 int *

    typedef (int *) PIN2;

从形式上看这两者相似, 但在实际使用中却不相同。

下面用PIN1,PIN2说明变量时就可以看出它们的区别:

PIN1 a,b;在宏代换后变成:

    int *a,b;

表示a是指向整型的指针变量,而b是整型变量。

然而:

    PIN2 a,b;

表示 a,b都是指向整型的指针变量。因为PIN2是一个类型说明符。由这个例子可见,宏定义虽然也可表示数据类型,但毕竟是作字符代换。在使用时要分外小心,以避出错。

 

带参的宏和带参函数区别

     带参的宏和带参函数很相似,但有本质上的不同,除上面已谈到的各点外,把同一表达式用函数处理与用宏处理两者的结果有可能是不同的。

 

数组作函数参数

归纳起来,如果有一个实参数组,想在函数中改变此数组的元素的值,实参与形参的对应关系有以下4种:

1)       形参和实参都是数组名。

main()

{int a[10];

  ……

 f(a,10)

  ……

f(int x[],int n)

{

 ……

}


}

a和x指的是同一组数组。

2)       实用数组,形参用指针变量。

main()

{int a[10];

  ……

 f(a,10)

  ……

f(int *x,int n)

{

 ……

}


 

}

3)       实参、型参都用指针变量。

4)       实参为指针变量,型参为数组名。

 

字符数组和字符串指针变量的区别

用字符数组和字符串指针变量都可实现字符串的存储和运算。但是两者是有区别的。在使用时应注意以下几个问题:

1.     字符串指针变量本身是一个变量,用于存放字符串的首地址。而字符串本身是存放在以该首地址为首的一块连续的内存空间中并以‘\0作为串的结束。字符数组是由于若干个数组元素组成的,它可用来存放整个字符串。

2.     对字符串指针方式

char *ps="C Language";

可以写为:

    char *ps;

ps="C Language";

而对数组方式:

    static char st[]={"C Language"};

不能写为:

    char st[20];

    st={"C Language"};

而只能对字符数组的各元素逐个赋值。

     从以上几点可以看出字符串指针变量与字符数组在使用时的区别,同时也可看出使用指针变量更加方便。

前面说过,当一个指针变量在未取得确定地址前使用是危险的,容易引起错误。但是对指针变量直接赋值是可以的。因为C系统对指针变量赋值时要给以确定的地址。

因此,

    char *ps="C Langage";

或者

    char *ps;

    ps="C Language";

都是合法的。

 

 

使用本函数前必须要用文件包含命令:#include<stdio.h>。

 

 

 

 

 

有关指针的数据类型的小结

定义

   

int i;

定义整型变量i

int *p

p为指向整型数据的指针变量

int a[n];

定义整型数组a,它有n个元素

int *p[n];

定义指针数组p,它由n个指向整型数据的指针元素组成

int (*p)[n];

p为指向含n个元素的一维数组的指针变量

int f();

f为带回整型函数值的函数

int *p();

p为带回一个指针的函数,该指针指向整型数据

int (*p)();

p为指向函数的指针,该函数返回一个整型值

int **p;

P是一个指针变量,它指向一个指向整型数据的指针变量

 

 

 动态存储分配

1. 分配内存空间函数malloc

2. 分配内存空间函数 calloc

3.     释放内存空间函数free

 

文件操作

文件的打开(fopen函数)

文件指针名=fopen(文件名,使用文件方式);

 FILE *fp;

fp=("file a","r");

 

文件关闭函数(fclose函数)

fclose(文件指针);

fclose(fp);

文件的读写

对文件的读和写是最常用的文件操作。在C语言中提供了多种文件读写的函数:

字符读写函数  :fgetc和fputc

    字符串读写函数:fgets和fputs

    数据块读写函数:freed和fwrite

格式化读写函数:fscanf和fprinf

下面分别予以介绍。使用以上函数都要求包含头文件stdio.h。

1.     分配内存空间函数malloc

2.       分配内存空间函数 calloc

文件的随机读写

移动文件内部位置指针的函数主要有两个,即 rewind 函数和fseek函数。

文件检测函数

文件结束检测函数feof函数:feof(文件指针)

读写文件出错检测函数:ferror(文件指针)

文件出错标志和文件结束标志置0函数:clearerr(文件指针)

1. C系统把文件当作一个“流”,按字节进行处理。
2. C文件按编码方式分为二进制文件和ASCII文件。

分享到:
评论

相关推荐

    [C语言程序设计(第四版)].谭浩强.高清_C语言程序设计第四版_

    《C语言程序设计(第四版)》是谭浩强教授的经典著作,对于初学者来说,是一本极佳的入门教材。这本书深入浅出地讲解了C语言的基础知识和编程技巧,帮助读者掌握这一强大而灵活的编程语言。下面将详细阐述书中涉及的...

    谭浩强 C 语言程序设计(PDF)文档

    根据提供的信息,我们可以了解到这本书是谭浩强编写的《C语言程序设计》,并被誉为初学者学习C语言的最佳书籍之一。接下来,我们将详细探讨与该书相关的几个重要知识点。 ### C语言简介 C语言是一种结构化的高级...

    《C语言程序设计》教案(清华谭浩强).docx

    ### 《C语言程序设计》教案知识点概览 #### 一、C语言简介与特点 - **起源与发展**:C语言是由AT&T贝尔实验室的Dennis Ritchie在1972年发明的一种通用编程语言。它最初是为UNIX操作系统开发的,并在此基础上不断...

    C语言程序设计(第四版) 谭浩强著 高清晰版.PDF

    《C语言程序设计(第四版)》是谭浩强先生的经典著作,这本教材自出版以来,一直受到广大计算机学习者的热烈欢迎。本书是C语言学习的重要参考资料,它以其深入浅出、实例丰富的特点,帮助无数初学者迈入了编程的大门...

    C语言程序设计教程 第三版 谭浩强ppt zip

    《C语言程序设计教程》是谭浩强先生的经典著作,第三版更是深受广大编程初学者喜爱。本教程通过深入浅出的方式,引导读者掌握C语言的基础知识和编程技巧。PPT形式的教学材料使得学习更为直观易懂,配合例题习题源...

    谭浩强c语言程序设计习题集.pdf

    这份文档是一本名为《谭浩强C语言程序设计习题集》的书籍的内容摘录。该书主要是为了帮助读者通过练习和题目来掌握C语言的基础知识点和编程技巧。从给出的部分内容可以看出,该习题集共分为两个部分,分别是选择题和...

    c语言程序设计(谭浩强) 教案

    《C语言程序设计》是计算机科学领域的一门基础课程,由谭浩强教授编著的教程深受广大初学者和专业人士的欢迎。这份教案涵盖了C语言的基础知识,旨在帮助学习者理解并掌握C语言的编程技能。 第1章 "C语言概述"主要...

    C程序设计(第四版)谭浩强著.rar

    《C程序设计(第四版)谭浩强著》是一本深受程序员喜爱的C语言学习教材,自出版以来,因其深入浅出的讲解和丰富的实例,成为无数初学者入门C语言的首选书籍。这本书的第四版在原有的基础上进行了更新和完善,以适应...

    C语言程序设计(第二版)--谭浩强 PDF格式

    1、C语言程序设计(第二版)--谭浩强 PDF格式已通过本站测试,测试结果请参看说明及截图。 2、如果您发现此软件有新版本或者不能下载,请点此通知我们,我们将尽快更新。 3、为了保证您快速的下载速度,我们推荐您使用...

    谭浩强C语言程序设计第二版源代码及课件完整版

    《谭浩强C语言程序设计》是一本深受程序员喜爱的经典教材,尤其对于初学者来说,它提供了深入浅出的C语言学习路径。该资源包含了该书第二版的完整源代码和配套课件,旨在帮助读者更好地理解和实践C语言编程。 在...

    C语言程序设计 谭浩强

    《C语言程序设计》是谭浩强先生的经典之作,它为初学者提供了全面而深入的C语言学习指导。这本书自出版以来,销量已超过一千万册,成为了无数编程爱好者的启蒙书籍,深受广大读者的喜爱。 C语言是一种强大的、低级...

    C语言程序设计(第五版)-谭浩强_PPT课件 第1章_程序设计和C语言

    在示例程序中,`#include &lt;stdio.h&gt;`是预处理指令,用于包含标准输入输出库,以便使用`printf`函数。`return 0;`语句表示函数执行结束并返回0,通常表示程序正常结束。 C语言的发展经历了多个阶段,包括1983年的...

    C语言程序设计谭浩强(第四版)上课课件的PPT.zip

    《C语言程序设计》是计算机科学领域的一本经典教材,由谭浩强先生编著,深受广大学生和程序员喜爱。第四版的更新旨在适应不断发展的编程环境和技术需求,提供了更全面、更深入的C语言教学内容。这个压缩包中的PPT...

    C语言程序设计(第二版)--谭浩强[PDF].rar

    《C语言程序设计》是谭浩强先生的经典之作,它在第二版中继续为初学者提供了深入浅出的C语言教学资源。这本书以其易懂的语言和丰富的实例,深受国内高校和自学者的喜爱,成为了C语言学习的重要参考书籍。 C语言是一...

    C语言程序设计及源码.谭浩强版.zip

    《谭浩强版C语言程序设计》是一本广泛被初学者和教育机构采用的经典教材,其第五版在原有的基础上进一步完善了教学内容,适合初学者系统地学习C语言编程。这个压缩包包含了这本书的PDF版,可以方便读者电子阅读或...

    谭浩强课后习题代码

    《谭浩强C程序设计》是一本经典的C语言学习教材,深受广大编程初学者的喜爱。该书通过系统地讲解C语言的基本概念、语法结构和编程技巧,帮助读者建立起坚实的编程基础。课后习题是检验学习效果和提升编程能力的重要...

    谭浩强----C语言程序设计(第二版)高清晰PDF版

    《谭浩强——C语言程序设计(第二版)》这本书,是编程领域中的一部杰作,被众多高校计算机专业以及培训机构作为基础教材,同时也受到程序开发人员的高度认可,尤其是在开发Microsoft应用程序时,它扮演着不可或缺的...

    <<C++程序设计>>谭浩强答案及演示程序

    《C++程序设计》是谭浩强教授的经典著作,第五版更是深受广大编程初学者和教育工作者的喜爱。这本书深入浅出地介绍了C++这门强大的编程语言,旨在帮助读者掌握面向对象编程的基本概念和技巧。在提供的压缩包文件中,...

    免费谭浩强C语言程序设计(第五版)习题答案.zip

    《谭浩强C语言程序设计(第五版)》是一本深受初学者喜爱的C语言教材,它以其浅显易懂的语言和丰富的实例,为初学者提供了全面的C语言学习资源。习题答案作为教材的重要组成部分,是检验学习效果、巩固知识的关键。...

Global site tag (gtag.js) - Google Analytics