当前位置:文档之家› 第1章-C语言概论

第1章-C语言概论

第1章-C语言概论
第1章-C语言概论

第一章C语言概论

C语言的发展过程

C语言是在70年代初问世的。一九七八年由美国电话电报公司(A T&T)贝尔实验室正式发表了C语言。同时由B.W.Kernighan和D.M.Ritchit合著了著名的“THE C PROGRAMMING LANGUAGE”一书。通常简称为《K&R》,也有人称之为《K&R》标准。但是,在《K&R》中并没有定义一个完整的标准C语言,后来由美国国家标准学会在此基础上制定了一个C 语言标准,于一九八三年发表。通常称之为ANSI C。

当代最优秀的程序设计语

早期的C语言主要是用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识,到了八十年代,C开始进入其它操作系统,并很快在各类大、中、小和微型计算机上得到了广泛的使用。成为当代最优秀的程序设计语言之一。

C语言的特点

C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。

C语言版本

目前最流行的C语言有以下几种:

·Microsoft C 或称MS C

·Borland Turbo C 或称Turbo C

·A T&T C

这些C语言版本不仅实现了ANSI C标准,而且在此基础上各自作了一些扩充,使之更加方便、完美。

面向对象的程序设计语言

在C的基础上,一九八三年又由贝尔实验室的Bjarne Strou-strup推出了C++。C++进一步扩充和完善了C语言,成为一种面向对象的程序设计语言。C++目前流行的最新版本是Borland C++4.5,Symantec C++6.1,和Microsoft V isualC++ 2.0。C++提出了一些更为深入的概念,它所支持的这些面向对象的概念容易将问题空间直接地映射到程序空间,为程序员提供了一种与传统结构程序设计不同的思维方式和编程方法。因而也增加了整个语言的复杂性,掌握起来有一定难度。

C和C++

但是,C是C++的基础,C++语言和C语言在很多方面是兼容的。因此,掌握了C语言,再进一步学习C++就能以一种熟悉的语法来学习面向对象的语言,从而达到事半功倍的目的。

C源程序的结构特点

为了说明C语言源程序结构的特点,先看以下几个程序。这几个程序由简到难,表现了C语言源程序在组成结构上的特点。虽然有关内容还未介绍,但可从这些例子中了解到组成一个C源程序的基本部分和书写格式。main()

{printf("c语言世界https://www.doczj.com/doc/cd4090651.html,,您好!\n");

}

main是主函数的函数名,表示这是一个主函数。每一个C源程序都必须有,且只能有一个主函数(main函数)。函数调用语句,printf函数的功能是把要输出的内容送到显示器去显示。printf函数是一个由系统定义的标准函数,可在程序中直接调用。

#include

#include

main()

{

double x,s;

printf("input number:\n");

scanf("%lf",&x);

s=sin(x);

printf("sine of %lf is %lf\n",x,s);

}

每行注释

include称为文件包含命令扩展名为.h的文件也称为头文件或首部文件

定义两个实数变量,以被后面程序使用

显示提示信息

从键盘获得一个实数x

求x的正弦,并把它赋给变量s

显示程序运算结果

main函数结束

程序的功能是从键盘输入一个数x,求x的正弦值,然后输出结果。在main()之前的两行称为预处理命令(详见后面)。预处理命令还有其它几种,这里的include 称为文件包含命令,其意义是把尖括号""或引号<>内指定的文件包含到本程序来,成为本程序的一部分。被包含的文件通常是由系统提供的,其扩展名为.h。因此也称为头文件或首部文件。C语言的头文件中包括了各个标准库函数的函数原型。因此,凡是在程序中调用一个库函数时,都必须包含该函数原型所在的头文件。在本例中,使用了三个库函数:输入函数scanf,正弦函数sin,输出函数printf。sin函数是数学函数,其头文件为math.h文件,因此在程序的主函数前用include命令包含了math.h。scanf和printf是标准输入输出函数,其头文件为stdio.h,在主函数前也用include命令包含了stdio.h文件。

需要说明的是,C语言规定对scanf和printf这两个函数可以省去对其头文件的包含命令。所以在本例中也可以删去第二行的包含命令#include。同样,在例1.1中使用了printf函数,也省略了包含命令。

在例题中的主函数体中又分为两部分,一部分为说明部分,另一部分执行部分。说明是指变量的类型说明。例题中未使用任何变量,因此无说明部分。C语言规定,源程序中所有用到的变量都必须先说明,后使用,否则将会出错。这一点是编译型高级程序设计语言的一个特点,与解释型的BASIC语言是不同的。说明部分是C源程序结构中很重要的组成部分。本例中使用了两个变量x,s,用来表示输入的自变量和sin函数值。由于sin函数要求这两个量必须是双精度浮点型,故用类型说明符double来说明这两个变量。说明部分后的四行为执行部分或称为执行语句部分,用以完成程序的功能。执行部分的第一行是输出语句,调用printf函数在显示器上输出提示字符串,请操作人员输入自变量x的值。第二行为输入语

句,调用scanf函数,接受键盘上输入的数并存入变量x中。第三行是调用sin函数并把函数值送到变量s中。第四行是用printf 函数输出变量s的值,即x的正弦值。程序结束。printf("input number:\n");

scanf("%lf",'C10F10&x);

s=sin(x);

printf("sine of %lf is %lf\n",'C10F10x,s);

运行本程序时,首先在显示器屏幕上给出提示串input number,这是由执行部分的第一行完成的。用户在提示下从键盘上键入某一数,如5,按下回车键,接着在屏幕上给出计算结果。

输入和输出函数

在前两个例子中用到了输入和输出函数scanf和printf,在第三章中我们要详细介绍。这里我们先简单介绍一下它们的格式,以便下面使用。scanf和printf这两个函数分别称为格式输入函数和格式输出函数。其意义是按指定的格式输入输出值。因此,这两个函数在括号中的参数表都由以下两部分组成:“格式控制串”,参数表格式控制串是一个字符串,必须用双引号括起来,它表示了输入输出量的数据类型。各种类型的格式表示法可参阅第三章。在printf函数中还可以在格式控制串内出现非格式控制字符,这时在显示屏幕上将原文照印。参数表中给出了输入或输出的量。当有多个量时,用逗号间隔。例如:

printf("sine of %lf is %lf\n",x,s);

其中%lf为格式字符,表示按双精度浮点数处理。它在格式串中两次现,对应了x和s 两个变量。其余字符为非格式字符则照原样输出在屏幕上

int max(int a,int b);

main(){

int x,y,z;

printf("input two numbers:\n");scanf("%d%d",&x,&y);

z=max(x,y);

printf("maxmum=%d",z);

}

int max(int a,int b){

if(a>b)return a;else return b;

}

此函数的功能是输入两个整数,输出其中的大数。

/*函数说明*/

/*主函数*/

/*变量说明*/

/*输入x,y值*/

/*调用max函数*/

/*输出*/

/*定义max函数*/

/*把结果返回主调函数*/

上面例中程序的功能是由用户输入两个整数,程序执行后输出其中较大的数。本程序由两个函数组成,主函数和max 函数。函数之间是并列关系。可从主函数中调用其它函数。max 函数的功能是比较两个数,然后把较大的数返回给主函数。max 函数是一个用户自定义函数。因此在主函数中要给出说明(程序第三行)。可见,在程序的说明部分中,不仅可以有变量说明,还可以有函数说明。关于函数的详细内容将在第五章介绍。在程序的每行后用

/*和*/括起来的内容为注释部分,程序不执行注释部分。

上例中程序的执行过程是,首先在屏幕上显示提示串,请用户输入两个数,回车后由scanf函数语句接收这两个数送入变量x,y中,然后调用max函数,并把x,y 的值传送给max 函数的参数a,b。在max函数中比较a,b的大小,把大者返回给主函数的变量z,最后在屏幕上输出z的值。

C源程序的结构特点

1.一个C语言源程序可以由一个或多个源文件组成。

2.每个源文件可由一个或多个函数组成。

3.一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。

4.源程序中可以有预处理命令(include 命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。

5.每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。

6.标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。

书写程序时应遵循的规则

从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时应遵循以下规则:

1.一个说明或一个语句占一行。

2.用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。

3.低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。

C语言的字符集

字符是组成语言的最基本的元素。C语言字符集由字母,数字,空格,标点和特殊字符组成。在字符常量,字符串常量和注释中还可以使用汉字或其它可表示的图形符号。

1.字母小写字母a~z共26个,大写字母A~Z共26个

2.数字0~9共10个

3.空白符空格符、制表符、换行符等统称为空白符。空白符只在字符常量和字符串常量中起作用。在其它地方出现时,只起间隔作用,编译程序对它们忽略。因此在程序中使用空白符与否,对程序的编译不发生影响,但在程序中适当的地方使用空白符将增加程序的清晰性和可读性。

4.标点和特殊字符

C语言词汇

在C语言中使用的词汇分为六类:标识符,关键字,运算符,分隔符,常量,注释符等。

1.标识符

在程序中使用的变量名、函数名、标号等统称为标识符。除库函数的函数名由系统定义外,其余都由用户自定义。C 规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线()组成的字符串,并且其第一个字符必须是字母或下划线。

以下标识符是合法的:

a,x, 3x,BOOK 1,sum5

以下标识符是非法的:

3s 以数字开头

s*T 出现非法字符*

-3x 以减号开头

bowy-1 出现非法字符-(减号)

在使用标识符时还必须注意以下几点:

(1)标准C不限制标识符的长度,但它受各种版本的C 语言编译系统限制,同时也受到具体机器的限制。例如在某版本C 中规定标识符前八位有效,当两个标识符前八位相同时,则被认为是同一个标识符。

(2)在标识符中,大小写是有区别的。例如BOOK和book 是两个不同的标识符。

(3)标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号。因此,命名应尽量有相应的意义,以便阅读理解,作到“顾名思义”。

2.关键字

关键字是由C语言规定的具有特定意义的字符串,通常也称为保留字。用户定义的标识符不应与关键字相同。C语言的关键字分为以下几类:

(1)类型说明符

用于定义、说明变量、函数或其它数据结构的类型。如前面例题中用到的int,double等(2)语句定义符

用于表示一个语句的功能。如例1.3中用到的if else就是条件语句的语句定义符。

(3)预处理命令字

用于表示一个预处理命令。如前面各例中用到的include。

3.运算符

C语言中含有相当丰富的运算符。运算符与变量,函数一起组成表达式,表示各种运算功能。运算符由一个或多个字符组成。

4.分隔符

在C语言中采用的分隔符有逗号和空格两种。逗号主要用在类型说明和函数参数表中,分隔各个变量。空格多用于语句各单词之间,作间隔符。在关键字,标识符之间必须要有一个以上的空格符作间隔,否则将会出现语法错误,例如把int a;写成inta;C编译器会把inta 当成一个标识符处理,其结果必然出错。

5.常量

C 语言中使用的常量可分为数字常量、字符常量、字符串常量、符号常量、转义字符等多种。在第二章中将专门给予介绍。 6.注释符

C 语言的注释符是以“/*”开头并以“*/”结尾的串。在“/*”和“*/”之间的即为注释。程序编译时,不对注释作任何处理。注释可出现在程序中的任何位置。注释用来向用户提示或解释程序的意义。在调试程序中对暂不使用的语句也可用注释符括起来,使翻译跳过不作处理,待调试结束后再去掉注释符。

《C语言程序设计》第1章 C语言概述练习题答案

第一章 C语言概述练习题 一、选择题 1.C语言是一种( )。 A) 机器语言B) 汇编语言C) 高级语言D) 低级语言 2.下列各项中,不是C语言的特点是( )。 A) 语言简洁、紧凑,使用方便B) 数据类型丰富,可移植性好 C) 能实现汇编语言的大部分功能D) 有较强的网络操作功能 3.下列叙述正确的是( )。 A) C语言源程序可以直接在DOS环境中运行 B) 编译C语言源程序得到的目标程序可以直接在DOS环境中运行 C) C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行 D) Turbo C系统不提供编译和连接C程序的功能 4.下列叙述错误的是()。 A) C程序中的每条语句都用一个分号作为结束符 B) C程序中的每条命令都用一个分号作为结束符 C) C程序中的变量必须先定义,后使用 D) C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写 5.一个C程序的执行是从()。 A) 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序文件的第一个函数开始,到本程序main函数结束 D) 本程序的main函数开始,到本程序文件的最后一个函数结束 6.以下叙述不正确的是()。 A) 一个C源程序必须包含一个main函数 B) 一个C源程序可由一个或多个函数组成 C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面 7.C语言规定:在一个源程序中,main函数的位置( )。 A)必须在程序的开头B)必须在系统调用的库函数的后面 C)可以在程序的任意位置D)必须在程序的最后 8.一个C语言程序是由( )。 A)一个主程序和若干个子程序组成B) 函数组成 C) 若干过程组成D) 若干子程序组成 9.以下有4组用户标识符,其中合法的一组是()。 A) For B) 4d C) f2_G3 D) WORD -sub DO IF void Case Size abc define 10. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是 ()。 A) 有零个或多个输入B) 有零个或多个输出C) 有穷性D) 可行性 二、填空题 1.汇编语言属于面向( 面向机器的 )语言,高级语言属于(面向问题的)语言。 2.用高级语言编写的程序称为(源)程序,它可以通过解释程序翻译一句执行一句的方式 执行,也可以通过编译程序一次翻译产生(目标)程序,然后执行。

第一章C语言概述习题附答案

第一章C语言概述 一、单选题 1. C语言程序的执行,总是起始于()。C A.程序中的第一条可执行语句 B.程序中的第一个函数 C.main函数 D.包含文件中的第一个函数 分析:在一个C语言源程序中,无论main函数书写在程序的前部,还是后部,程序的执行总是从main函数开始,并且在main函数中结束。本题正确答案为C。 2、C语言程序的基本单位是()。C A)程序行B)语句C)函数D)字符 3、C语言中规定:在一个源程序中main函数的位置()。C A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 4、以下述叙正确的是()。C A.在C程序中,main函数可有可无 B. C程序的每行中只能写一条语句 C. C语言本身没有输入输出语句 D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误 5、能将高级语言编写的源程序转换为目标程序的是()。C A.链接程序 B.网络程序 C.编译程序 D.WORD字处理程序 6、下列说法中正确的是()。C A)C程序书写时,不区分大小写字母 B)C程序书写时,一行只能写一个语句 C)C程序书写时,一个语句可分成几行书写 D)C程序书写时每行必须有行号 分析:C语言严格区分大小写字母,如"A1"和"a1"被认为是两个不同的标识符,C程序的书写非常灵活,既可以一行多句,又可以一句多行,且每行不加行号。本题正确答案为C。 7、下面对C语言特点,不正确描述的是()。C A)C语言兼有高级语言和低级语言的双重特点,执行效率高 B)C语言既可以用来编写应用程序,又可以用来编写系统软件 C)C语言的可移植性较差 D)C语言是一种结构式模块化程序设计语言 分析:C语言是介于汇编语言和高级语言之间的一种语言,由于它可以直接访问物理地址,对硬件操作,所以C语言既可以编写应用程序,又可以开发系统软件,而且C程序可移植性好于汇编语言,程序清晰具有模块化的特点。本题正确答案为C。 8、C语言源程序的最小单位是()。D A)程序行B)语句C)函数D)字符 分析:程序行、语句、函数都是由字符构成的,字符是C语言的最小单位。本题正确答案为D。 9.计算机内部运算使用的数是()。C A)十进制数B)十六进制数C)二进制数D)八进制数

第1章C语言概述

第1章C语言概述 C语言是国际上广泛流行的、很有发展前途的高级程序设计语言,它既可以用来编写系统软件,又可以用来编写应用软件。C语言也是大学生学习程序设计选用最多的语言。本章主要介绍C语言的发展历史、C语言的特点、C程序的结构和C程序的上机步骤。通过本章的学习,读者应重点掌握C语言的特点、C程序的结构和上机运行C程序的方法。 1.1 C语言的发展和特点 自从计算机诞生以来,为了更好地进行软件的设计,各种高级程序设计语言也在不断地发展、进步和完善。C语言就是其中最优秀的程序设计语言之一。 1.1.1 C语言的发展过程 C语言是目前世界上最流行、使用最广泛的高级程序设计语言。在设计操作系统等系统软件和需要对硬件进行操作时,使用C语言编程明显优于其他高级语言,许多大型应用软件和系统软件都是用C语言编写的。 C语言的起源可以追溯到ALGOL 60。1963年英国的剑桥大学在ALGOL 60的基础上推出了CPL语言,但是CPL语言难以实现。1967年英国剑桥大学的Matin Richards对CPL 语言作了简化,推出了BCPL语言。1970年美国贝尔实验室的Ken Thompson以BCPL语言为基础,又作了进一步的简化,设计出了很简单且接近硬件的B语言,并用B语言写了第一个UNIX操作系统,在DEC PDP-7型计算机上实现。1971年在DEC PDP-11上实现了B语言。1972年由美国的Dennis M.Ritchie在B语言的基础上设计出了C语言,并首次在UNIX操作系统的DEC PDP-11计算机上使用。 为了推广UNIX操作系统,1977年Dennis M.Ritchie 发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。1978年Brian W.Kernighian和Dennis M.Ritchie 出版了名著《The C Programming Language》,从而使C语言成为目前世界上流行最广泛的高级程序设计语言。 随着微型计算机的日益普及,出现了许多C语言版本。由于没有统一的标准,使得这些C语言之间出现了一些不一致的地方。为了改变这种情况,1983年美国国家标准研究所(ANSI)为C语言制定了第一个ANSI标准,称为ANSI C。1987年美国国家标准研究所

C语言教案(上):第一章c语言概述(高教版).doc

课题第一章C语言概述 教学目的1、掌握上机步骤 2、能正确调试程序 教材分析教学重点计算机运行时的过程教学难点上机步骤 课时安排 2 教学方法讲授与演示法相结合 讨论法、实践法、任 务驱动 教具计算机、投影仪 教学内容及过程设计一新课引入 有了新的程序,如何实现程序的结果验证? 二讲授新课 一)、上机步骤(上机环境:Turbo C3.0) 1.进入环境 2.编辑源程序 3.保存源程序 4.编译源程序 5.执行程序,查看结果 6. 退出C环境 (1) 进入Turbo C++ 3.0集成环境 ①在DOS环境下 C:\TC3.0>tc ↙ ②在Windows环境下 找到可执行文件tc.exe,执行该文件。

主菜单:11个菜单项: File Edit Search Run Compile Debug Project Options Window Help 在编辑(EDIT) 状态下光标表示当前进行编辑的位置,在此位置可以进行插入、删除或修改,直到自已满意为止。 保存:在编辑(EDIT) 状态下光标表示当前进行编辑的位置,在此位置可以进行插入、删除或修改,直到自已满意为止。 (3) 对源程序进行编译 选择“Compile”(或“Alt+F9”)对源程序进行编译。 (4) 将目标程序进行连接 选择菜单“Compile”→“Link”,如果不出现错误, 会得到一个后缀为.exe的可执行文件 (5) 执行程序 选菜单“Run”→“Run”( 或按“Ctrl+F9”键)。 (6) 退出Turbo C++ 3.0环境 选择“File”→“Quit”。 三课堂小结 1、C语言的构成要素,main函数在程序中的作用 2、上机操作的过程 备注:安排上机实验,熟悉TC环境及简单的C语言程序构成 上机内容为:见上机实训教案1求3个数中较大者。 另例1、图案程序共两个。

第一章C语言概述

第一章C语言概述 一、选择题: 1、一个C程序的执行是从( A )。 A本程序的main函数开始,到main函数结束 B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C本程序的main函数开始,到本程序文件的最后一个函数结束 D本程序文件的第一个函数开始,到本程序main函数结束 2、在 C 语言中,每个语句必须以( D )结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 3、C 语言规定:在一个源程序中,main函数的位置( C )。 A. 必须在最开始 B. 必须在系统调用的库函数的后面 C. 可以任意 D. 必须在最后 4、一个C 语言程序是由( B )。 A. 一个主程序和若干子程序组成 B. 函数组成 C. 若干过程组成 D. 若干子程序组成 5、下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数

D. 程序可以从任何非主函数开始执行 6、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( C )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D. 自动保存源文件 二、填空题: 1、C 语言只有 32 个关键字和 9 种控制语句。 2、每个源程序有且只有一个 main 函数,系统总是从该函数开始执行C 语言程序。 3、C 语言程序的注释可以出现在程序中的任何地方,它总是以 \* 符号作为开始标记,以 */ 符号作为结束标记。 4、C 语言中,输入操作是由库函数 scanf 完成的,输出操作是由库函 数 printf 完成的。 5、系统默认的C 语言源程序文件的扩展名是 .c ,经过编译后生成的目标文件的扩展名是 .obj ,经过连接后生成的可执行文件的扩展名 是 .exe 。 6、C 语言的标识符只能由字母、数字和下划线三种字符组成。 第三章数据类型、运算符和表达式 一、选择题: 1、以下选项中,不正确的 C 语言浮点型常量是( C )。

第1章 C语言概述

第1章C语言概述 本章知识要点: 绪论 什么是C语言,简单介绍能够执行的软件。 最短的C语言源代码 如何写注释、函数声明、main函数、函数与堆栈、编码风格等问题的学习。 字符输出 包含文件、标准库函数、学习头文件是什么。 整数输入输出 变量类型、范围、标准库函数scanf()的简单介绍 字符输入输出 了解char型和数组、键盘输入字符、屏幕显示输入的字符。 浮点数输入输出 了解double型变量、输入2个浮点数、屏幕输出其平均值。 printf( )和scanf( )函数的返回值了解符号常量函数返回值标准库函数printf( )和scanf( )的函数返回值。 定义函数 定义函数的方法。输入一个整数,将其值的一半作为返回值。 变量的存储类型 了解变量的存储类型。静态变量与动态变量的区别 变量的取值范围了解不同数据类型的不同取值范围。 运算符学习自增、自减运算符及运算符的补充 赋值运算符了解赋值运算符(+=,*=,+=,-=,*=,/=,%=)。 变量和符号常量的类型声明 学习有关变量和符号常量的类型声明。 枚举常量 了解枚举常量。

1.1 绪论 C语言的产生与发展 C 语言是1972年由美国的Dennis Ritchie设计发明的, 并首次在UNIX操作系统的 DEC PDP-11 计算机上使用。它由早期的编程语言 BCPL( Basic Combind Programming Language) 发展演变而来。在1970年, AT&T 贝尔实验室的 Ken Thompson根据BCPL语言设计出较先进的并取名为 B的语言, 最后导了C语言的问世。 随着微型计算机的日益普及, 出现了许多C 语言版本。由于没有统一的标准, 使得这些C 语言之间出现了一些不一致的地方。为了改变这种情况, 美国国家标准 研究所(ANSI)为C 语言制定了一套ANSI标准, 成为现行的C语言标准。 C语言的特点 1.结构化语言 结构化语言的一个显著特点是代码和数据的分隔化,即程序的各部分除了必要的信息交流外彼此互不影响,相互隔离。C语言的主要结构成分是函数,函数是C语言的基本结构模块,所有的程序活动内容都包含在其中,函数在程序中被定义完成独立的任务,独立地编译成目标代码,这样可以实现程序的模块化。C 语言中,另一个实现程序结构化和分离化的方法是使用符合语句,复合语句是作为一个语句对待的,且具有逻辑联系的程序语句的组合,它是一个逻辑单元。 2.简洁、紧凑、灵活 Turbo C共有43个关键字,9种控制语句,程序书写自由,主要以小写字母表示,压缩了一切不必要的成分。C语言语法现在不太严格,程序设计自由度大,例如对数组边界不做检查,整型、字符型、逻辑型数据可以通用。 3.运算符丰富 C语言共有44种运算符,把括号、赋值、强制类型转换等都作为运算符处理从而使C语言的运算符类型极其丰富,表达式类型多样化,灵活使用各种运算符,可以实现在其他高级语言中难以实现的运算。 4.中级语言 C语言把高级语言的基本结构与低级语言的实用性结合起来。它可以像汇编语言一样对位、字节和地址进行操作,这三者是计算机最基本的工作单元,C语言可实现汇编语言的绝大部分功能。

第一章C语言概述习题附答案

第一章C 语言概述 一、单选题 1、C语言程序的执行,总是起始于()。C A.程序中的第一条可执行语句 B.程序中的第一个函数 C.main 函数 D.包含文件中的第一个函数 分析:在一个C语言源程序中,无论main函数书写在程序的前部,还是后部,程序的执行总 是从main 函数开始,并且在main 函数中结束。本题正确答案为C。 2、C 语言程序的基本单位是()。C A)程序行B)语句C)函数D)字符 3、C 语言中规定:在一个源程序中main 函数的位置()。C A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 4、以下述叙正确的是()。C A.在C 程序中,main 函数可有可无 B.C 程序的每行中只能写一条语句 C.C 语言本身没有输入输出语句 D.在对一个C 程序进行编译的过程中,可发现注释中的拼写错误 5、能将高级语言编写的源程序转换为目标程序的是()。C A.链接程序 B.网络程序 C.编译程序 D.WORD字处理程序 6、下列说法中正确的是()。C A)C程序书写时,不区分大小写字母 B)C程序书写时,一行只能写一个语句 C)C程序书写时,一个语句可分成几行书写 D)C程序书写时每行必须有行号 分析:C语言严格区分大小写字母,如"A1"和"al"被认为是两个不同的标识符,C程序的书写非常灵活,既可以一行多句,又可以一句多行,且每行不加行号。本题正确答案为C。7、下面对C 语言特点,不正确描述的是()。C A)C语言兼有高级语言和低级语言的双重特点,执行效率高 B)C语言既可以用来编写应用程序,又可以用来编写系统软件 C)C语言的可移植性较差 D)C语言是一种结构式模块化程序设计语言 分析:C 语言是介于汇编语言和高级语言之间的一种语言,由于它可以直接访问物理地址,对硬件操作,所以C 语言既可以编写应用程序,又可以开发系统软件,而且C 程序可移植性好于汇编语言,程序清晰具有模块化的特点。本题正确答案为C。 8、C 语言源程序的最小单位是()。D A)程序行B)语句C)函数D)字符分析:程序行、语句、函数都是由字符构成的,字符是 C 语言的最小单位。本题正确答案 为D。 9、计算机内部运算使用的数是()。C A)十进制数B)十六进制数C)二进制数D)八进制数

C语言第1章概述

第一章概述 单选题 C语言的前身是(B )。 A.A语言 B.B语言 C.C++语言 D.BASIC语言 C语言规定,必须用(C )作为主函数名。 A.Function B.include C.main D.void 一个C程序可以包含任意多个不同名的函数,但有且仅有一个(B )。 A.过程 B.主函数 C.函数 D.进程 一个C程序总是从( B)开始执行。 A.过程 B.主函数 C.函数 D.进程 C程序的基本构成单位是(A )。 A.函数 B.过程 C.进程 D.子程序 下列说法正确的是( D)。 A.main函数必须放在C程序的开头 B.main函数必须放在C程序的最后 C.main函数可以放在C程序中间部分,执行C程序时是从程序开头执行的 D.main函数可以放在C程序中间部分,执行C程序时是从main函数开始的下列说法正确的是( C)。 A.在执行C程序时不是从main函数开始的 B.C程序书写格式严格限制,一行内必须写一个语句 C.C程序书写格式自由,一个语句可以分写在多行上 D.C程序书写格式严格限制,一行内必须写一个语句,并要有行号 在C语言中,每个语句和数据定义结束都是用( C)。 A.句号 B.逗号 C.分号 D.括号 不是C语言提供的合法关键字( B)。 A.switch

C.case D.default 不是C语言提供的合法关键字( D)。 A.int B.float C.char D.scanf C语言提供的合法关键字是(A )。 A.break B.printf C.function D.end C语言提供的合法关键字是(A )。 A.continue B.procedure C.begin D.scanf 下列说法正确的是(C )。 A.一个函数的函数体必须要有变量定义和执行部分,二者缺一不可 B.一个函数的函数体必须要有执行部分,可以没有变量定义 C.一个函数的函数体可以没有变量定义和执行部分,函数可以是空函数 D.一个函数的函数体必须要有变量定义,可以没有执行部分 下列说法正确的是( D)。 A.C语言中引号可以单独使用 B.C语言中括号可以单独使用 C.C语言中逗号可以单独使用 D.C语言中分号可以单独使用 下列字符串是合法的用户自定义标识符的是( A)。 A._HJ B.9_student C.long D.LINE 1 下列字符串是合法的用户自定义标识符的是(A )。 A.char1 B.#int C.float D.void-2 下列字符串不是合法的用户自定义标识符的是(C )。 A. a B.pi C.if D.print 下列字符串不是合法的用户自定义标识符的是(D )。

相关主题
文本预览
相关文档 最新文档