精华内容
下载资源
问答
  • C语言程序设计 -- 读书笔记 -- 汇总
  • 引:我有一本c语言程序设计书,已经静静的躺着好长时间了,前几天朋友说,你这本书有些发黄了,看来是好长时间没有翻过了。其实这本书是我初学电脑时朋友给的,但只看了几页就放在那儿了,那时没有自己的电脑,看...

    引:

    我有一本c语言程序设计书,已经静静的躺着好长时间了,前几天朋友说,你这本书有些发黄了,看来是好长时间没有翻过了。

    其实这本书是我初学电脑时朋友给的,但只看了几页就放在那儿了,那时没有自己的电脑,看起来很吃力。在朋友的提醒下,现在可以找一点时间去翻一翻,虽然没有什么价值,但学习也是一种乐趣......

    记录第一天:

    今天中午休息,找出书来,找出一些重点的写写。

    一、c语言的发展

    c语言是一种通用的结构化程序设计语言,由美国贝尔实验室于1972年产先开发出来。c是开发unix操作系统而研制的,它随着unix系统的出名而闻名。

    二、c语言的特点

    1、c语言是界于高级语言和汇编语言之间的一类语言,它比其它高级语言更接近硬件。

    2、c语言是一种结构化程序设计语言,它有顺序,选择和循环三种基本结构。

    3、c语言具有类型丰富和使用灵活的运算符。

    4、c语言程序具有较高移植性。

    三、c语言的字符集

    1、大小写26个英文字母。

    2、0-9,10个数字。

    3、+,-,×,/,%,,&

    .....等特殊符号。

    四、标识符

    起标识作用的一类符号, c语言的标识符用来表示常量、变量、函数和类型等名字。

    标识符分三类:

    1、保留字:即关键字,用于定义语言本身功能的。有特定的含义和用外,不能做其它用。

    2、预定义标识符:用作库函数和预编译命令。c允许用作其它用处,但这时已经不具有系统原先定义的含义,一般不建议再用作其它功能。

    3、用户定义标识符

    是用户根据需要定义的一类标识符,用于标识变量,符号常量,用户定义函数,类型名和文件指针等。

    这类标识符构成规则:

    1、由英文字母,下划线,数字组成,但开头字符一定是字母或下划线。

    2、英文字母大小写含义不同。

    3、一般变量名用小写,常量名用大写。

    4、不能把保留字用作用户自定义标识符。

    5、一个名字ANSI C,只有前31个字符有效。

    五、c语言程序的结构特点和书写风格

    1、hello world

    #include

    int main(void)

    {

    printf("Hello

    world!\n");

    return 0;

    }

    这是一个简单的c程序,功能在屏幕上输出字符“hello

    world!",这个程序由一个main()函数构成,叫主函数,一个c程序只能有一个主函数,他是程序的入口地址。

    {}所括起来的内容是main函数的函数体。

    printf(...)是由系统提供的标准库函数,这里完成输出字符串的功能。

    \n表示换行字符。每一个c语言语句由;结尾。

    #include

    是预编译命令,它把头文件stdio.h的内容导入进来。stdio.h定义了I/O库所用的某此宏和变量等。

    2、计算三个数的平均值

    include

    int main(void)

    {

    float a,b,c,average;

    printf("请输入三个数:");

    scanf("%f,%f,%f",&a,&b,&c);

    average = (a+b+c)/3;

    printf("这三个数的平均值为:%f\n",

    average);

    return 0;

    }

    是一个注释语句,他可以多行注释,但不能嵌套。

    float是用来定义实数,即单精度浮点数。

    scanf(..)是输入语句,他是格式化输入函数,由系统提供的标准库函数,后面的%f是格式符,表示输入一个实数。

    3、求最大值

    #include

    int max(int,int,int);

    int main(void)

    {

    int a,b,c,imax;

    printf("请输入三个数:");

    scanf("%d,%d,%d",&a,&b,&c);

    imax = max(a,b,c);

    printf("这三个数中最大的是:%d\n",imax);

    return 0;

    }

    int max(int a, int b, int c)

    {

    int _max;

    if(a>b)

    _max = a;

    else

    _max = b;

    if(c>_max)

    _max = c;

    return _max;

    }

    结构特点:

    由上例可以看出c程序的结构特点:

    (1)一个c程序由一个或多个函数组成,但只能有一个主函数main(),

    (2)函数的组成,由函数说明和函数体组成。函数的说明指函数的名称,类型,参数,参数类型等。函数体是{}所括起来的部分,它包括局部变量的说明或一组执行语句。每个语句用;结束。

    --------------------------------------

    数据类型标识符  函数名(形参表)

    {

    局部变量说明语句;

    可执行语句;

    }

    --------------------------------------

    (3)在函数定义之外还可以包含说明,该说明部分叫外部说明,它可包括预编译命令如#include,外部量的说明等。

    (4)可以在程序的任何位置(除一个语句内部)加注释。 注释的格式 ,一个注释可以跨多行。

    (5)习惯用小写字母书写,一行一句,标识符见名知意,适当的注释,大写字母一般用作符号常量(常数)或其它用途。

    例:求任意个数的和及平均值。

    #include

    float input()

    {

    float num;

    printf("请输入一个数(负数退出):");

    scanf("%f",&num);

    return num;

    }

    int main(void)

    {

    float count=0,sum=0;

    float current_num;

    current_num = input();

    while(current_num>=0)

    {

    sum+= current_num;

    count++;

    current_num = input();

    }

    if(count>0)

    {

    printf("这些数的和是:%f,平均数是:%f\n", sum, sum/count);

    }

    else

    {

    printf("您没有输入一个有效的合法数据\n");

    }

    return 0;

    }

    六、编译和执行

    c语言是一种高级语言,计算机只能接受机器语言,为此必须先把c语言翻译成相应的机器语言,这个工作叫编译。

    (1)我们把写好的c语言程序叫源程序,c源程序的文件扩展名是c,可以用vi,vim等编辑工具进行编写。

    (2)源文件建立好后,经检查无误就可以进行编译,编译由系统提供的编译器完成,编译命令随系统的不同而异。

    编译是对源文件进行语法和语义检查,并给出所发现的错误。源文件编译后生成目标文件obj,目标文件随系统的不同扩展名也就不同。

    (3)编译生成的目标文件是相对模块,不能直接执行,必须用连接器把它和其它目标文件以及系统所提供的库函数进行连接装配,生成可执行文件存于文件系统中,linux下为.out,msdos下为.exe

    (4)执行,可反复1-4步骤进行开发。

    我的编译环境:

    linux  + gcc

    最简单的应用方法:

    hello.c

    编译时:

    gcc -Wall -o 目标可执行文件  源文件.c

    展开全文
  • 结构把一组相关的变量看作一个单元而不是各自独立的实体,有助于组织复杂的数据,特别是在大型的程序中。 2、struct是结构的关键字,名字是可选的,称为结构标记,结构中定义的变量称为成员,结构成员、结构标记、和...

    1、结构是一个或者多个变量的集合,变量可能为不同类型。结构把一组相关的变量看作一个单元而不是各自独立的实体,有助于组织复杂的数据,特别是在大型的程序中。
    2、struct是结构的关键字,名字是可选的,称为结构标记,结构中定义的变量称为成员,结构成员、结构标记、和普通变量可以采用相同的名字,之间不会冲突。
    3、struct创建了一种数据类型。在右花括号后面可以跟变量表,和其他类型的变量类似,可以把struct创建的理解为int什么的,都一样的。
    4、后面带变量表就分配储存空间,不带就不分配,只是一个结构的模板或者轮廓。
    5、struct point pt定义了一个struct point类型的变量pt。还可以对其进行初始化。通过 结构名.成员 可以通过下列形式引用某个特定结构中的成员。
    6、结构可以嵌套:结构中的结构引用成员可以这样用
    结构名.结构名.成员名 引用
    7、结构的合法操作有:1、作为一个整体复制和赋值 2、通过&运算符取地址 3、访问其成员。
    8、复制和赋值包括向函数传递参数以及从函数返回值。结构之间不可以比较。可以用一个成员常量值初始化结构,自动结构也可以通过赋值进行初始化。
    9、
    10、
    11、
    12、
    13、
    14、
    15、类型定义(typedef)C语言提供了一个称为typedef的功能,用来建立新的数据类型名,例如声明typedef int Length将Length定义为与int具有同等意义的名字。typedef并没有创建任何新类型,他只是为某个已经存在的类型起一个新的名字。
    16、

    展开全文
  • 读书笔记注意事项:1、 读书笔记要求至少有六个题目,在一类、二类、三类题目中各选两题,具体题目选择由学生自行选择。2、 每个题目必须包含所选题目,以及具体题目的程序实现过程,要求每行语句后都需要有程序解释...

    读书笔记注意事项:

    1、 读书笔记要求至少有六个题目,在一类、二类、三类题目中各选两题,具体题目选择由

    学生自行选择。

    2、 每个题目必须包含所选题目,以及具体题目的程序实现过程,要求每行语句后都需要有

    程序解释,如:int a,b,c; /*定义三个变量a,b,c,变量类型为整型*/。

    3、 读书笔记要求全部手写,在17周由学习委员统一交给任课教师。

    一、一类题目

    1. 输入任意3个整数,求它们的平均值。

    2. 输入任意4个整数,求它们的平均值。

    3. 输入一个非负数,计算以这个数为半径的圆周长和面积。

    4. 将从键盘输入的实型十进制数分离为整数部分和小数部分后输出。如输入

    123.45,输出为:123.45=123+0.45

    5. 输入3个字符,反向输出这3个字符和它们的ASCII码。

    6. 输入4个字符,反向输出这4个字符和它们的ASCII码。

    7. 输入任意一个3位数,将其各位数字反序输出(例如输入123,输出321)。

    8. 求前n项的累加和。如S=1+2+3+ +n。

    9. 求n!。如fac=1*2*3* *n。

    10.输入三角形的边长,求三角形的面积(面积=sqrt(s(s-a)(s-b)(s-c)),

    s=(a+b+c)/2)。

    11.输入一个华氏温度,要求输出摄氏温度,公式为:c f 32),输出前要95

    有提示信息,输出结果保留小数点后两位。

    12.求前驱字符和后继字符。输入一个字符,找出它的前驱字符和后继字符,并

    按ASCII码值,按从大到小的顺序输出这3个字符及其对应的ASCII码值。

    13.输入一个非负数,计算以这个数为半径的圆周长和面积。

    14.输入两个字符,若这两个字符的序号(ASCII码)之差为偶数,则输出它们

    的后继字符,否则输出它们的前驱字符。

    15.输入整数a和b,如果a能被b整除,就输出算式和商,否则输出算式、整

    数商和余数。

    二、二类题目

    1. 输入一个3位数,判断是否是一个“水仙花数”。水仙花数是指3位数的各位

    数字的立方和等于这个3位数本身。例如:153=1*1*1+5*5*5+3*3*3。

    2. 试编写一程序,将所有3位数中是“水仙花数”的输出。

    展开全文
  • Tags:《C语言程序设计读书笔记C语言程序设计读书笔记(四)——函数与程序结构book4.1 找出某一字符串在一段文本内的位置并返回 int strindex(char s[], char t[]) { int i,j,k; for(i = 0;s[i] != '\0';i++...

    book

    4.1

    • 找出某一字符串在一段文本内的位置并返回
    int strindex(char s[], char t[])
    {
        int i,j,k;
        for(i = 0;s[i] != '\0';i++)  //遍历初始位置
        {
            for (j = i,k = 0;t[k] != '\0' && s[j] == t[k];j++,k++)
                ;
            if(k > 0 && t[k] == '\0')  //t[k] == '\0'表示完全匹配
                return i;
        }
        return -1;  //遍历完成后没有找到匹配的
    }

    4.4

    • 外部变量或函数的作用域从声明它的地方开始,到其所在的(待编译的的)文件的末尾为结束。如果要在外部变量的定义之前使用该变量,或者外部变量的定义与变量的使用不在同一源文件中,则必须在相应的变量声明中强制性地使用关键字extern.
    • 外部变量定义与声明
      外部变量的声明英语说明变量的属性(主要是变量的类型),而那两定义除此之外还将引起存储器的分配。一个外部变量只能某个文件中定义一次,而其他文件可以通过extern声明访问它;下面给出变量定理和声明的例子:
    //变量定义
    int sp;
    double val[MAXVAL];  //要说明数组的大小
    
    //变量声明
    extern int sp;
    extern double val[];

    4.5

    • 头文件的作用
      由于一些共同使用的外部变量和函数在不同文件中被使用的时候需要被重新声明,所以可以将这些需要共同使用的变量和函数的 声明 放在同一个文件中,在需要用到这些函数的文件中只要将这个文件包含进来就可以直接使用,不必再在每个文件重新声明外部变量和函数。这个包含外部变量和共同使用的函数的文件就叫做头文件,包含头文件的操作叫#include<a.h>。一般头文件只会存放外部变量和函数的声明,定义在各个.c文件中实现,因为函数的声明只能出现一次,如果定义放在头文件中,而这个头文件又被多个文件引用,那么容易出现重复定义的问题。

    4.6

    • 静态变量
      声明一个变量为静态变量static的作用在于限定该变量的作用区域。如对一个外部变量声明为静态变量表示该变量只能在声明的文件中使用,在其他文件中不能使用该外部变量。对一个函数中的变量声明为静态变量表示该变量只能在该函数的范围内使用。注意:在函数中声明的静态变量和函数内部变量的区别是静态变量始终存在于内存中,下次调用时存放在里面的值是上次调用完毕后的值;而内部变量在函数开始时被分配内存,在函数结束后内存被收回,下次调用重新分配内存。

    4.9

    • 初始化
      在不进行人为初始化的情况下,外部变量和静态变量都被初始化为0,而内部变量和寄存器变量没有定义。外部变量和静态变量的初始化必须是 常量 表达式。

    4.11.2

    • 宏替换
      宏定义可以带参数,不过要十分注意括号的添加,如#define square(x) (x)*(x)中的括号不可省略,否则在计算square(a+1)时会发生错误

    4.11.3

    • 条件包含 #ifdef
      在头文件的编写中,为了防止一个头文件被重复包含在同一个.c文件中,最好使用条件包含格式。
      头文件被重复包含情况:
      假设 a.h 和 b.h 中有 #include “c.h”语句,而在 main.c 中出现了#include “a.h” 和#include “b.h” 那么 v.h就属于在一个.c 文件中重复引用的情况。这时候就会用到如下格式的语句:
    #ifndef B_H
    #define B_H
    //declarations
    #endif
    展开全文
  • 《嵌入式Linux C语言应用程序设计读书笔记《嵌入式Linux C语言应用程序设计读书笔记《嵌入式Linux C语言应用程序设计读书笔记《嵌入式Linux C语言应用程序设计读书笔记《嵌入式Linux C语言应用程序设计》...
  • ·读书笔记按照章节记录,原书作者 丹尼斯里奇·笔记接C语言程序设计---读书笔记1·笔记中相同的知识点可能来自书中不同的章节·解释与思考部分并不全是书中的内容,也包括经验之谈、网上资料五 指针与数组指针是一...
  • C语言程序设计读书笔记

    千次阅读 2005-12-24 22:37:00
    除了将书中的重点知识点记下来外,也加入了我对知识点的理解,我想这一点是读书笔记的重要性所在。 第一章 概述 第二章 数据类型、运算符与表达式 第三章 最简单的c程序设计 第四章 逻辑运算
  • 程序要先写主函数,剩下的函数在主函数后面写,不过主函数前面要先申明 有两段及以上差不多的代码是程序员代码质量不良的表现 void sum(int a, int b) void的意思就是没有,即这个函数不能用return返回任何东西,...
  • 前段时间把c语言程序设计看了一遍,感觉还是有很多比清楚的地方,可能是使用的不多,而且学的也不够深得缘故吧。因为平时从事android开发,也希望能够把android系统方面的东西搞懂,那么c语言不说精通也该要能够...
  • C语言程序设计---读书笔记汇总(整理中)

    万次阅读 多人点赞 2018-05-11 23:34:01
    四 函数与程序结构 4.1 函数的基本知识 4.2 返回非整型值的函数 4.3 外部变量 4.4 作用域规则 4.5 头文件 4.6 静态变量 4.7 寄存器变量 4.8 程序块结构 4.9 初始化 4.10 递归 4.11 C 预处理器 4.11.1 文件包含 ...
  • C语言程序设计(第2版)》 读书笔记 —Brian W.Kernighan 等著 徐宝文 李志 译 在C语言中,所有的变量必须先声明,后使用。声明通常放在函数起始处,在任何执行语句之前。 stdio.h scanf scanf_s printf 解密 ...
  • C语言程序设计(第四版)谭浩强著读书笔记(一)之Hello World 2019-08-09 15:28 本人目前为Java程序员,但为了考研需要自学C语言,毕竟数据结构,操作系统等专业书都是使用C语言作为例子. 此系列文章会略去特别基础的问题,...
  • 读书笔记C语言程序设计_现代方法

    千次阅读 2012-04-15 16:06:06
    《C程序设计-现代方法》这本C语言书是一本不错的C语言的书。其中的讲解挺有条理,并且每章后面的释疑部分真的解答了我的很多疑问。 前十章转自:http://www.cnblogs.com/xkfz007/archive/2012/02/26/2369030.html...
  • 1、编写能清晰表达设计思想和意图的代码 2、利用注释阐述和解释代码,并进行总结。 3、使用有意义且无歧义的命名方法。 4、不要自己编写库函数已包括的函数,尽可能的使用标准库C函数。 5、让程序自己检查运行中...
  • 一、总结基于《C程序设计语言》Brian W. Kernighan 徐宝文李志译 1、打印hello,word 2、C语言在UNIX操作系统中,源程序以.c作为文件的扩展名,用软件编译程序。 3、一个C语言程序无论其大小如何,都是由函数和变量...
  • C语言读书笔记

    千次阅读 2017-09-27 14:29:05
    前段时间把c语言程序设计看了一遍,感觉还是有很多不清楚的地方,可能是使用的不多,而且学的也不够深得缘故吧。因为平时从事android开发,也希望能够把android系统方面的东西搞懂,那么c语言不说精通也该要能够...
  • 最近对c语言的总结学习可以告一段落了!觉得这种边学边思考边总结的方式,还不错,还是有一定的进步的!但是对于日后的c语言学习还远...高质量程序设计指南&gt;,听说他的&lt;大学十年&gt;也很不错,有...
  • C语言提供6种基本位运算功能:位取反(单目运算)、位与、位或、位异或、位左移和位右移。 (1)位运算只能是 整形(int) 或 字符型(char),不能为实数型数据。 (2)位运算是对运算量的每一个 二进制位 分别进行操作...
  • C语言程序设计教程>> 第三版 谭浩强 张基温著 第八章 文件 读书笔记 //写一个字符到磁盘文件// int fputc(int ch,FILE *fp)//ch 要写入文件的字符,,fp:FILE 类型文件指针//功能:把字符变量的值输出到指针...
  • 谭浩强C程序设计读书笔记以及PPT,谭浩强的C语言比较经典
  • ps:为什么说感觉和其他书不一样呢,其实是有原因的,因为周围的书全是c语言程序设计,换汤不换药。但是这本书后面加了一个现代方法。哈哈,可能是笔者的一点点小偏见吧,但是确实是他的封面,厚度和这句话紧紧的...
  • 第一章 导言第一章带领大家进入了C语言的世界,但是我感觉,如果没有一些基础,要想完全理解这一章的内容,还是有些困难的。在允许使用某种类型变量值的任何场合,都可以使用该类型的更复杂的表达式。无论文本从何处...
  • c诡异离奇,缺陷重重,却获得了巨大的成功编译器设计者的金科玉律:效率=一切c预处理器:1.字符串替换 2.头文件包含 3.通用代码模板的扩展预处理一定要使用强制类型转换!!!明确数据类型每一个ANSI C编译器必须...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 176
精华内容 70
关键字:

c语言程序设计读书笔记

c语言 订阅