目录
1.C语言的特点
以下是百度百科对C语言的介绍:
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。
1.面向过程的?
什么是面向过程?通常,人们喜欢把面向过程与面向对象相结合;
此时就到经典的“大象和冰箱”来区分了,比如:如何把大象放入冰箱?
1.面向过程
1.把大象拿起——>2.打开冰箱门——>3.把大象放进冰箱里——>4.把冰箱门关上
此类语言有:C,Fortran语言等。
2.面向对象
对象1:大象 | 对象2:冰箱 |
被拿起 | / |
/ | 门打开 |
被放入冰箱 | / |
/ | 门关上 |
此类语言有:C++,Java,Python, C#, EIFFEL,Simula 67等。
既然C语言是一门面向过程的、抽象化的通用程序设计语言,那么总结起来就是:
“上一行的代码如果可执行不执行完下一行代码就不执行”;
“上一行代码所带来的影响会对下一行的结果带来影响”。
2.C语言的四则运算
1.赋值
问题1:“1 + 1 = 2”是对的吗?
你肯定在拼命的想1 + 1 =2在例如人文,自然等领域有什么不对的,但我们不得不承认,在数学领域上这个是毫无疑问正确的。当然能问出这种问题自然也就说明了在C语言领域是不成立的。
在C语言中;“ = ”表达的含义并不是"等于"而是“赋值”,和数学不同,a = b 在数学中表示关系,即a和b的值一样;而在程序设计中,a = b要求计算机做一个动作,将b的值赋给a。关系是静态的,而动作是动态的。在数学中,a = b 和v = a 是等价的;而在程序设计中,二者的意思完全相反。
简单来说,就是执行一种动作,把左边所表达的值移交给右边。例如:
#include <stdio.h>
int main()//注意;以后的代码示例将可能省去主函数框架
{
int a = 0;
/*这里!*/a = 1 + 1;/*这里!*/
printf("%d\n",a);
/*这里!*/a = a + 1; /*这里!*/
printf("%d\n",a);
return 0;
}
这段代码经编译运行后的结果是:
a = 1 + 1的结果对应2,a = a + 1的结果对应3。
对于这段代码所表达的含义为:
int a = 0;//初始化变量a
a = 1 + 1;//将1+1的值赋给a
printf("%d\n",a);//输出a的结果并在终端中把光标移到下一行
a = a + 1;//将a(此时a的值为2)加一赋给a
printf("%d\n",a);//输出a的结果并在终端中把光标移到下一行
a = a + 1?这在数学中是绝对错误的;但在C中是正确的。
3.变量和初始化
在上个例子中,你肯定注意到这一行代码:
int a = 0;//初始化变量a
什么是变量?什么是初始化?其中又有什么学问?请听我细细道来:
1.变量
1.什么是变量?
变量是一个保存数据的地方,当我们需要在程序中保存数据时,就需要一个变量来保存它。用这个变量保存了数据他才能参与后面的计算中。
2.变量的名字
1.变量需要一个名字,变量的名字是一种标识符,意思是它用来识别这个和那个的不同的名字。
2.标识符有标识符的构造规则。基本的规则是:
(1).标识符只由字母,数字和下划线组成。
(2).数字不可以出现在第一个位置上。
(3). C语言的保留字不可以用作标识符。
C语言的保留字有哪些?
类型说明保留字:
int,long,short,float,double,char,unsigned,signed,const,void,volatile,enum,struct,union
语句定义保留字:
if,else,goto,switch,case,do,while,for,continue,break,return,default,typedef
存储类说明保留字:
auto,register,extern,static
长度运算符保留字:
sizeof,return
其实,在后续的学习中,我们会慢慢的会用这些的,现在根本不用背。
3.变量的定义
变量的定义的一般形式是:<类型说明保留字> <变量名称>
例如:
int a;
double b;
long int c;
2.初始化
当赋值发生在定义变量的时候,就像程序
int a = 0;
一样,那就是变量的初始化。虽然C语言并没有强制要求所有变量都在定义的地方做初始化,但是 所有变量理应被赋值一次。
如果变量没有初始化,那么所得值将随机。
例如:
int a;
printf("%d",a);
这段代码的结果将完全随机!!!
不信的话你可以试试(笑)。
3.变量的初始化
<类型说明保留字> <变量名称> = <初始值>;
例如:
int a = 1;
double b = 1.0;
组合变量定义的时候,也可以在这个定义中单独给单个变量赋初值,例如:
int price = 0 , amount = 100;
//此时price的值为0,amount的值为100;他们的数据类型都为int。
但是不可能一次性给所有变量赋值。
4.变量类型
C是一种有类型的语言,所有的变量在使用之前必须定义或声明,所有的变量必须具有确定的数据类型,数据类型表示在变量中可以储放什么样的数据。变量中只能存放指定类型的数据。程序运行过程中也不能改变变量的类型。
5.注意:
1.使用“ "" ”一定要使用英文的“ "" ”。
2.注意在每一段代码结尾处加上“ ;(英文的";") ”。