C语言学习笔记(一)- 初识C语言

什么是C语言

C语言是国际上广泛流行的一门计算机语言。

什么是计算机语言

计算机语言是能够实现人与计算机之间交流信息的语言。计算机语言经历了几个发展阶段。

  • 机器语言
    计算机的工作是基于二进制的,从根本上来说,计算机只能接受和识别的由0和1组成的指令。在计算机发展的初期,一般计算机的指令长度为16,即以16个二进制数(0或1)组成一条指令,16个0和1可以组成各种排列组合,共计216种。
    例如用1011011000000000让计算机进行一次加法运算。
    这种计算机能够直接识别和接受的二进制代码称为机器指令(machine instruction).机器指令的集合就是该计算机的机器语言(machine language)。这种机器语言与人们所习惯的语言差别太大,难写、难记、难修改、难检查,难以推广使用。因此初期只有少数的计算机专业人员会编写计算机程序。

  • 符号语言
    为了克服机器语言的上述缺点,人们创造出符号语言(symbolic language)。使用英文字母和数字表示某些指令,如用“ADD”代表“加”,“SUB”代表“减”。
    计算机并不能识别直接识别和执行符号语言的指令,需要一种称为汇编程序的软件,把符号语言的指令转换为机器指令,一条符号语言的指令对应转换为一条机器指令,转换的过程称为“代真”或“汇编”,因此,符号语言又称为汇编语言(assembler language)。
    不同型号的计算机的机器语言和汇编语言是互不通用的,因此机器语言和汇编语言也统称为低级语言(low level language)。

  • 高级语言
    高级语言更接近于人们习惯使用的自然语言和数学语言。程序中用到的语句和指令是用英文单词表示的,程序中所用的运算符和运算表达式和人们日常使用的数学公式相近,便于理解。程序运行的结果用英文和数字输出。这种语言的功能很强,不依赖于具体的机器,用它写出的程序对任何型号的计算机都适用(或只须做出少量修改),它并不是很“贴近”计算机,所以称为计算机高级语言(high level language)。
    计算机并不能直接识别高级语言,需要进行“翻译”。使用一种称为编译程序的软件把用高级语言写的程序(称为源程序,source program)转换为机器指令的程序(称为目标程序,object program),然后让计算机执行机器指令程序,最后得到结果。高级语言的一个语句往往对应多条机器指令。
    C、C++、Visual Basic、Java和Python等都是高级语言。

第一个C语言程序

在屏幕上输出一句“hello world”

#include<stdio.h>             // 编译预处理指令
int main()                    // 定义主函数
{                             // 函数开始的标志
  printf("hello world\n");    // 输出所指定的一行信息
  return 0;                   // 函数执行完毕时返回函数值0
}                             // 函数结束的标志

程序输出结果:
程序输出结果
在使用函数库中的输入输出函数时,编译系统要求程序提供有关此函数的信息(例如对这些输入输出函数的声明和宏的定义、全局变量的定义等),程序第一行的“#include<stdio.h>"的作用就是用来提供这些信息的。stdio.h是系统提供的一个文件名,stdio是"standard input & output"的缩写,文件后缀.h的意思是头文件(header file), 因为这些文件都是放在程序各文件模块的开头的。
C语言允许使用两种注释方式:

  1. 以 // 开始的单行注释
  2. 以 /* 开始,以 /* 结尾的块式注释

C语言程序的结构

C语言程序有以下特点:

  1. 一个程序由一个或多个源程序文件组成。

  2. 函数是C程序的主要组成部分。

  3. 一个函数包括两个部分。
    (1)函数首部。即函数的第一行,包括函数名、函数类型、函数属性、函数参数名、参数类型。 如: int main (int x , int y)
    (2)函数体。即函数首部下面的花括号内的部分。
    函数体一般包括以下两个部分。
    1)声明部分。声明部分包括:定义在本函数中所用到的变量;对本函数所调用函数进行声明。
    2)执行部分。由若干个语句组成,指定在函数中所进行的操作。

  4. 程序总是从main函数开始执行的。

  5. 在每个数据声明和语句的最后必须有一个分号。

  6. 程序应当包含注释。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lantian313

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值