第一章C语言笔记-- 基础概述

1、C的历史

  C语言是一种高级程序语言,可以实现对硬件直接操作,例如如内存地址的操作、对位的操作。UNIX5操作系统90%以上都是C语言编写(从B语言改写)的。

  C语言可以实现汇编语言的大部分功能。C既具有高级语言特性,又具有低级语言的许多功能,可以用来写系统软件。

2、C语言特点

2.1 语言简单、紧凑、使用简单、灵活

  C语言有32个关键字,9种控制语句,程序书写形式自由,主要用小写字母表示。

2.2  运算符丰富

  C语言有34中运算符,C把括号、赋值、强制类型转化等都作为运算符处理,使得C的运算符类型及其丰富。

2.2 数据结构丰富

 C的数据类型整形、实型、字符型、数组类型、指针类型、共用体类型

 以上数据类型可以实现各种复杂的数据结构(如链表、树、栈等)的运算

2.3 具有结构化的控制语句

  C的控制语句包括(if...else...语句)、(while语句)、(switch语句)、(for语句)等,用函数作为程序的模块单位,便于实现程序的模块化

2.4 C语言可以进行位(bit)操作

  所以,能够实现汇编语言的大部分功能,可以直接对硬件进行操作。

2.5 程序执行效率高,生成目标代码质量高

  一般只比汇编生成的目标代码效率低10%~20%

2.6 可移植性好(与汇编语言比)

  基本上不做任何修改就鞥用于各种型号的计算机和操作系统。

2.7 C书写格式自由

一行内可以写几个语句,
一个语句可以写在多行上

3. 例子

3.1 例1 简单输出

# include     
main()                               /*主函数*/
{
printf("This is a C Program.\n");   /*这是C的输出格式与注释格式*/
}

上述代码是一个简单的C程序,输出内容:

  This is a C Program.

3.2 例2 求两数之和

# include     
main()                              
{
int a,b,sum;                     /*这是定义变量*/ 
a=123;b=456;               
sum = a+b ;                    /*可以直接用内置函数sum=add(a,b)*/ 
printf(“sum is %d\n”,sum);  /*格式化输出*/ 
}

3.3 例3 求两数最大

# include     
main()                              
{
int a,b,c;                   
scanf("%d,%d",&a,&b) ;       /*输入变量a,b,类比于python的raw_input*,“&”的含义是“取地址”/  
c=max(a,b);                    /*调用max函数,将得到的值赋值给c*/ 
printf("max=%d",c);
}


int max(int x,int y)   /*定义max函数(注意定义函数类型),函数值为整型,形式参数x,y为整型*/
{
int z;  /*max函数中的声明部分,定义函数中用到的变量z为整型*/
if (x>y) z=x;
else z=y;
return (z);   /*将z的值返回给c*/
}

注意:

1、C的每个语句和数据定义后的最后必须有一个分号。分号不可少
2、C语言本身没有输入输出语句,它的输入输出操作石油库函数scanf和pringtf等完成的。
3、C语言可以使用 /...../来进行注释

4. C的编译

  1、因为计算机只能够识别0、1组成的二进制指令,而不能识别和执行有0和1组成的二进制指令。
  所以,为了使得计算机能够执行高级语言程序,需要一种称为“编译软件”的软件,把源程序翻译成二进制形式的“目标程序”,然后将该“目标程序”与系统的函数库和其它目标程序连接起来,形成可执行的目标程序。

  2. C语言的源程序文件是 name.c文件
例如:编辑后的得到一个源程序文件f.c,进行编译时将源程序文件f.c输入,经过编译得到目标程序文件f.obj,再讲目标程序语言f.obj输入内存,与系统提供的库函数等连接,得到可执行的目标程序文件f.exe,最后把f.exe调入内存并使之运行。

你可能感兴趣的:(第一章C语言笔记-- 基础概述)