-
计算机与程序,程序设计语言
1.1计算机与程序:要让计算机按照人们的愿望工作,必须由人们事先编制好程序,并输入到计算机,让计算机执行程序才能产生相应的操作结果。
程序设计语言:一个型号机器语言的指令的集合称为该计算机的机器语言;用一些特定的“助记符号”代替0和1来表示指令的程序设计语言称为汇编语言;接近于人们习惯使用的自然语言(英文)和数学语言称为“高级语言”。(程序设计语言:机器语言->汇编语言->高级程序设计语言)
!!!用高级语言编写的程序,计算机是不能够直接识别和执行的(计算机只能直接识别二进制的指令),必须事先把用高级语言编写的程序翻译成机器语言的程序,这个”翻译“工作是由称为”编译系统“的软件来识别的(例如:Visual Studio DevC++......)
-
C语言出现的历史背景
- C语言是国际上广泛流行的高级语言。
- C语言实在B语言的基础上发展而来的。
- B (BCPL)语言是1970年由美国贝尔实验室设计的,用于编写第一个UNIX操作系统。
- B语言优点:简单,接近硬件------缺点:过于简单,功能有限。
- 1972年-1973年贝尔实验室的D.M.Ritchie在B语言的基础上设计出了C语言,并用之改写了原来用汇编编写的UNIX操作系统。后来C语言多次改进但是还是在贝尔实验室使用。
- 1977年出现了《可移植C语言编译程序》,推动了UNIX操作系统在各种机器上实现,C语言也得到了迅速推广,其发展相辅相成。
- 1978年在Brian W.Kernighan和Dennis M.Ritchie 合著的影响深远的名著《The C Programming Language》中介绍的C语言成为后来广泛使用的C语言版本的基础 ,被称为标准C。
- 1978年以后,C语言先后移植到大、中、小、微型计算机上,风靡世界,成为最广泛的几种计算机语言之一。
- 1983年,美国国家标准化协会(ANSI)根据C语言各种版本对C的发展和扩充,制定了新的标准ANSI C ,比标准C有了很大的发展。
- 1987年,ANSI公布了新标准——87 ANSI C。
- 1989年,ANSI又公布了一个新的C语言标准—C89
- 1990年,ISO接受C89作为国际标准通常称为C90
- 1999年,ISO对C语言标准进行修订,在基本保留原来的C语言特征的基础上,增加了一些面向对象的特征,简称为 C99。
- 目前流行的C语言编译系统大多是以C89为基础进行开发的。
-
C语言的特点
- 语言简洁、紧凑,使用方便、灵活。
- 32个关键字
- 9种控制语句,程序形式自由
- 条件判断语句:if 语句 switch语句
- 循环执行语句 while语句 for语句 do while语句
- 转向语句:break语句 continue语句 return语句 goto语句(goto语句尽量少使用因为不利于结构化程序设计)
- 运算符丰富。34种运算符
- 数据类型丰富,提供整型、浮点型、字符型、数组类型、指针类型、结构体类型、共用体类型等,能用来实现各种复杂的数据结构(如链表、树、栈等)的运算。
- C语言是完全模块化和结构化的语言。
- 语法限制不太严格,程序设计自由度大
-
简单的C语言程序
#include<stdio.h>//头文件 int main() //主函数main { //这里是函数主题 printf("hello C\n");//输出语句 return 0; }
-
main-主函数名, void-函数类型 每个C程序必须有一个主函数main { }是函数开始和结束的标志,不可省 每个C语句以分号结束 使用标准库函数时应在程序开头一行写: #include <stdio.h>
-
#include<stdio.h> int main() { int a=10;//定义整型变量,初始化为10 int b=20; int sum=0; sum=a+b; printf("%d ",sum); return 0; }
-
//表示注释。注释只是给人看的,对编译和运行不起作用。所以可以用汉字或英文字符表示,可以出现在一行中的最右侧,也可以单独成为一行。
-
#include<stdio.h> int max(int a,int b) { if(a>b)//如果a大执行 return a;//返回a的值 else//b大与a return b;//返回b } int main() { int a,b,c; scanf("%d %d",&a,&b);//输入函数,输入两个整形(后面我们会介绍) c=max(a,b);//max是函数,返回一个整形,c接受max函数返回的整形 printf("%d ",c); return 0; }
总结:
- C程序是有函数构成的。这使得程序更容易实现模块化。
- 一个函数由两部分组成: 函数的首部: int max(int a,int b ) 函数体:花括号内的部分。若一个函数有多个花括号,则最外层的一对花括号为函数体的范围。