学习c语言的必备基础知识.doc

学习c语言的必备基础知识.doc
学习c语言的必备基础知识.doc

学习C语言的必备基础知识

第一章计算机和数据的存储

第一节了解计算机

很奇怪的一件事,现在的。语言教材,一上来就是变量,表达式,一点也不提计算机原理方面的事,把c语言当作语言,数学来学,只是生硬的列出一些语法规则,学生们难以理解,只好死记硬背,没有把握住本质的东西,也就无法随心所欲,其实c语言是一门非常好学的语言,核心的语法规则是非常少的,而旦都是和计算机息息相关,所以必须要学习好计算机的一些基础,掌握好计算机的基础知识对学习C语言至关重要,对将来其它语言的编程都极其有益,C语言还有一个优点,就是写法非常简洁明了,和c++, java, C#, javascript等语言有着非常相似的书写方式,所以学好C语言,可以轻松的过渡到大量其它编程语言。讲完C以后,将陆续推出java ,C#, C++, javascript, ruby, python等,不过都是在此教程的基础之上进行,所以C语言乃基础之基础,想要学编程,强烈建议从C语言开始。下面开始了解计算机。

按照冯诺依曼的理论,计算机含有5个部分,运算器、控制器、存储器、输入和输出设备。现在我们通常把运算器、控制器和在一起,称为CPU(中央处理器),存储器就是我们说的内存和硬盘,输入设备就是鼠标,键盘等,输出设备主要是显示器、打印机、绘图仪等。

其中CPU和内存最关键,CPU是执行指令的部件,内存是一些连续的存储单元,用来存储指令和数据,每个单元可以存8位二进制数,也称为1个字节,计算机里存储器都是以字节为单位的,在描述网络速度的时候通常以位为单位,大家注意区别。CPU要执行的指令就存在内存里,CPU按照指定顺序连续地执行内存中的指令,这就是冯诺依曼体系的基本工作原理。

什么是指令,就是一些二进制的数,比如10010001是一条加法指令, 10011011是一条存储指令,CPU遇见不同的指令就会完成不同的操作,CPU能够执行的指令是生产厂家生产时就设计好的,比如8086 基本指令有70条,那么CPU就只认识这70条指令,CPU在不断升级, 除了运行速度加快还会增加一些新的指令,CPU的指令分三大类:传

送,计算,跳转,其实我们的编程语言也就能完成这些功能。其中传送主要是管理存储器,管理数据如何存储,是最重要的,计算比较简单,主要是数学计算,跳转让计算机有了智能。

什么是数据,数据可以是要计算的数字,也可以是一篇文章,一幅画, 一首歌,这些东西必须先存到内存里,才能让CPU传送到显卡,声卡, 我们才能听见看见。在内存里指令和数据是分开存放的,我们在编写程序时用到的内存通常是指存储数据用的数据X,在一条指令里,往往也分操作码和操作数,操作数也是一种数据,只不过它是指令的一部分,存储在指令X,这种数据称为操作数,以后也会用到。

什么是程序,程序就是由一批指令和数据组合在一起构成的二进制数据集。但如果要用二进制来写程序,那估计肯定有人骂街了,我们通常用能看憧的字母和阿拉伯数字来写程序,第一种被发明的编程语言叫汇编语言,它给每个二进制指令都给起了一个英文名字,叫做助记码,我们用助记码写起程序来要好看多了,但是CPU是看不懂的,我们必须把它重新翻译回二进制的才行,我们管这个叫编译,这个工作起初是手工完成的,后来有人发明了软件可以自动翻译,就出现了编译器,用汇编语言写程序比起用二进制进步了一大步,可效率还是很低,于是新的语言一高级语言出现了,据说是先有了A语言,乂有了B语言,最后出现了C语言,由于其优秀的品质,PK掉了同时代的众多语言,直到现在还广为流传。

有些人还有些迷惑,三大件之一的硬盘怎么还没出场,其实已经出场了,我们写好的源程序都要存储到硬盘上,编译好的可执行程序也要存储到硬盘上,内存是RAM,掉电就内容没有了,与之对应的是ROM, 永久保存,存储器还有另一种分类方法:随机存储和线性存储,随机存储就是我们在访问的时候没有搜索的过程,只要说出地址,立即访问,线性存储有一个查找的过程,告诉哪个柱面,扇区,磁道,通过电机旋转找到后才能访问数据,CPUX能访问随机存储器,所以内存必须是随机存储器,光盘,硬盘都属于线性存储,只能用来做外部存储器,现在比较流行的闪盘属于随机存储器,可它还是ROM,既可以当内存,也可以当外存。

硬盘上保存的有一个非常重要的程序,叫做操作系统,其实,操作系

统是由众多的程序文件和数据文件组成的,没有操作系统我们是很难与电脑沟通的,操作系统负责管理整个内存,把系统需要执行的程序加载到内存里并执行,这就是机器启动的过程,用鼠标双击一个可执行程序,操作系统就会到硬盘将其取出,加载到内存,这就是程序加载过程,我们上边说的程序就是这样被加载到内存中,才能由CPU来执行,除了管理内存,操作系统还监视着每个程序的执行情况,出现异常情况结束程序,如果内存不够了,操作系统会先把一部分内存里的东西搬到硬盘上,等用的时候再搬回来,硬盘上的这块地方被称为虚拟内存,使用虚拟内存来回移动数据本来就浪费时间,再加上硬盘的读取速度较慢,所以就机器就显得很慢,加大物理内存,少使用虚拟内存对计算机的性能有很大的提高。除此之外,操作系统的另一项重要功能就是硬盘上文件的管理,不同的操作系统对硬盘进行管理的方式都不一样,这个管理方式叫做文件系统,按道理说一台Linux的机器,挂了一块Windows系统下使用的硬盘,是无法对它进行读取,但是已经有人开发了Linux下访问Windows文件系统的软件,因此可以识别,并进行读取,但是反过来就不行了,除非有人开发了相应的软件才可以。

总结:

1.计算机的核心部件:CPU和内存

2.CPU执行指令,内存中存储二进制的指令和数据

3.可执行程序由指令和数据构成,写程序时使用高级语言,经过编译,连接后生成可执行的程序。

4.线性存储与随机存储,ROM和RAM,硬盘,操作系统

第二节数据的存储

计算机最擅长的就是存储,存储也是计算机的灵魂,所以这本教程是紧紧围绕着存储来展开的,理解并掌握了存储,你基本上就懂了如何编写程序,我们刚才讲到了内存里可以存储数据,那么我们

都能存储什么样的数据?乂是如何来存储的呢?

1.数的存储

这里说的数就是我们计算中用到的表示大小的数,我们习惯以十进制表示,计算机只能存储二进制数,我们把它转换成相应的二进制数来存储就可以了。

例如

254 11111110 通常写做FE

5 00000101 05

1)进制转换:

1.n进制d十进制

方法:

下面这个等式大家估计都能看的懂。

3679=3*103+6*102+7*101+9*100

这是十进制数的计算方法,对于n进制的数,把10换成n就可以了, 所以记住这个等式,任何进制转10进制都会了。

如:10011001是二进制数

转化成10进制就是

1*27+0+0+1*24+1*23+0+0+1*20=128+16+8+1=153

2.十进制转n进制

方法:

像刚才一样,想想10进制数怎么找出每一位的值,

3679 /10 余数9 商367 最低位9

367 /10 余数7 商36 上一位7

36 /10 余数6 商3 上一位6

3 /10 余数3商0 上一位3

用要转换的数除以10,余数就是的最低位数,然后用商接着除10,得到余数就是上一位,一直除下去,直到商为0结束。

容易出错的地方:用260除以16的时候另外列个算式,两个算式很像,不小心容易搞混。

3.十六进制,二进制相互转换

方法:

十六进制->二进制1位变4位,不够4位,前边补零

如:104 -> 0001 0000 0100

二进制-〉十六进制4位变1位,

如:101 1100 - > 5 c

注意:电脑里用的都是二进制,但我们总是看到很多十六进制的数,为什么呢,原因:二进制,十六进制转换方便,口算即可,十六进制书写起来,看起来都要比二进制方便很多,因此,在需要使用二进制的地方通常用十六进制代替。

注意:任何存储都以字节为单位,每个字节能存2位十六进制数。

所以我们经常看到是两位16进制数。

2)多字节存储

一个字节只能存储8位2进制数,最大只能存255,那么要存更大的数怎么办,我们可以使用多个单元来存一个数,连起来就能构成一个大数,我们通常把低位存在最右边,然后依次存储高位,内存是连续的,只有前后,没有左右,一个数由多个字节组成的话,一定要明确高位低位的顺序,低位在前,高位在后。这个很关键,要记住。

比如258写成16进制就是01 02,每个字节可以存两位16进制,现在需要两个字节,存储的时候02在前,01在后,更多字节,依次类推。

3)符号数存储

数字有正负之分,当存储一个有符号的数时,通常用最高位代表符号位,1代表负数,0代表正数。

计算机中所有带符号数都以补码形式存储。

补码定义:正数的补码是其本身负数的补码符号位不变,其余位取反

加1

如果大存储空间存一个小点的数,高位的字节也不能空着,正数我们可以在高位补0,不影响大小,负数我们必须在高位补1,才不影响大小。

2.字符的存储

要存储源程序,存储一篇文章,存储一串字母和数字,这都是字符的存储,和数字不一?样,它不表示大小,只表是一个字母或数字,我们通常采用编码的方式来存储,最常用的编码要属Asc码了,每个字母和数字都有一个数字对应,都可以变成二进制进行储存,但要存中文, Asc码就不行了,我们国家有自己的编码标准Gb2312,哈哈,汉字也可以存了,不过存一个汉字要用两个字节,当然读出来还要按照Gb2312的标准进行解码,再查找字库进行显示,有些软件会自动根据文件的开始儿个字节或某一指定内容来自动选择编码标准,将来要编写国际化的程序,编码一定要考虑好。

3.图片的存储

图片是由点组成的,一幅图片大小是200*300,那么他就有60000 (200*300)个点,每个点都有自己的颜色,这些颜色组合在一起就构成了图片,如果每个点颜色我们用一个字节来存,那么最多只能有256种颜色,这样存储的图片颜色会看起来有些失真,如果用两个字节表示颜色,能表示的颜色就有65536种,基本上超过了人眼的分辨能力,看上去没有失真,如果我们要更好的表现色彩,会用3个字节24位,甚至4个字节32位来存储颜色,图片更逼真,所需要的空间就越大。

*视频将图片连续播放出来就会给人动的效果,如果没有压缩,视

频会占用大量的存储空间,视频基本上都是压缩存放的。

4.声音的存储

声音就是一种波形,我们把波形分成很小的段,每段的幅值平均一下用…个二进制数表示,存储起来,这叫做采样,就相当于把声音存储起来了,通常每秒钟要分44。Ik段才能达到不失真的效果。采样频率低的话,声音质量会下降。

总结:

1.数的存储二进制,十六进制,数制之间的转换,多字节存储,带符号数存储.

2.字符的存储通过编码对字符进行数字化后存储

c语言公共基础知识

二级公共基础知识总结 第一章数据结构与算法 1.1 算法算法:是指解题方案的准确而完整的描述。算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括: (1)可行性; (2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性; (3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义; (4)拥有足够的情报。算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。指令系统:一个计算机系统能执行的所有指令的集合。基本运算包括:算术运算、逻辑运算、关系运算、数据传输。算法的控制结构:顺序结构、选择结构、循环结构。算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。算法复杂度:算法时间复杂度和算法空间复杂度。算法时间复杂度是指执行算法所需要的计算工作量。算法空间复杂度是指执行这个算法所需要的内存空间。 1.2 数据结构的基本基本概念数据结构研究的三个方面: (1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;

(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构; (3)对各种数据结构进行的运算。数据结构是指相互有关联的数据元素的集合。数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。数据的存储结构有顺序、链接、索引等。线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。非线性结构:不满足线性结构条件的数据结构。 1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。非空线性表的结构特征:(1)且只有一个根结点a1,它无前件; (2)有且只有一个终端结点an,它无后件; (3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。结点个数n称为线性表的长度,当n=0时,称为空表。线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。ai的存储地址为:ADR(ai)=ADR(a1)+(i-1)k,,ADR(a1)为第一个元素的地址,k代表每个元素占的字节数。顺序表的运算:插入、删除。 (4)1.4 栈和队列栈是限定在一端进行插入与删除的线性表,允许

计算机二级C语言公共基础知识

计算机二级C语言公共基础知识手册 1.算法的时间复杂度是指执行算法所需要的计算工作量.算法的工作量由算法所执行的基本运算次数来度量,而算法所执行的基本运算次数是问题规模的函数. 2.算法的空间复杂度是指算法执行过程中所需要的存储空间,存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间. 3.一个算法通常由两种基本要素组成:一是对数据对象的运算和操作;而是算法的控制结构. 4算法设计基本方法主要包括有列举法、归纳法、递推、递归和减半递推技术. 5.数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构).、 6.数据处理是指对数据集合中的各元素以各种方式进行运算,包括插入、删除、查找、更改等运算,也包括对数据元素进行分析. 7.数据元素是指相互有关联的数据元素的集合. 8.前驱和后继关系是数据元素之间的一个基本关系,但前驱个后继关系所表示的实际意义随具体对象的不同而不同.一般说来,数据元素之间的任何关系都可以用前驱和后继关系来描述. 9.常用的存储结构有顺序链接、索引等存储结构.而采用不同的存储结构,其数据处理的效率是不同的.

10.在数据结构中,没有前驱的结点称为根结点;没有后继的结点称为终端结点(叶子结点);数据结构中除了根结点与终端结点外的其他结点一般称为内部结点. 11.在数据结构中,结点几结点的相互关系有线性结构和非线性结构. 12.线性结构(线性表):非空数据结构满足(1)有且只有一个根结点;(2)每个结点最多有一个前驱,也最多有一个后继. 在一个线性结构中插入或删除任何一个结点后还应该是线性结构,若删除或插入后不是线性结构,则该数据结构不能称为线性结构. 13.线性表是最简单、最常用的一种数据结构.有一组数据元素组成.在稍微复杂的线性表中,一个数据元素可以由若干个数据项组成,在这种情况下,常把数据元素称为记录,含有大量记录的线性表就称作文件. 14.非空线性表如与如下结构特征(1)有且只有一个根结点A1,它无前驱;(2)有且只有一个终端结点AI,它无后继;(3)除根结点与终端结点外,其他所有结点有且只有一个前驱,也只有一个后继.线性表中结点的个数N称为线性表的长度.当 N=0时,称其为空表. 15.在计算机中存放线性表,一种最简单的方法是顺序存储,也称顺序分配. 16.线性表的顺序存储结构具有以下两种基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的. 在线性表的存储结构中,其前后继两个元素在存 储空间中是紧邻的,且前驱元素一定存储在后继元素的前面. 17.假设线性表中第一个数据元素的存储地址是ADR(AI),每一个数据元素占K 个字节,则线性表中第I个元素AI在计算机存储空间中的存储地址是 ADR(AI)=ADR(A1)+(I-1)K.

c语言程序基础练习题00道(附答案)

1.下列四组选项中,均不是C语言关健字的选项是( A )。 A) define B) gect C) include D) while IF char scanf go type printf case pow 2.下面四个选项中,均是合法整型常量的选项是( A )。 A)160 B)-0xcdf C) -01 D)-0x48a -0xffff 01a 986,012 2e5 011 0xe 0668 0x 3.下面四个选项中,均是不合法的转义符的选项是( B )。 A) '\"' B) '\1011' C) '\011' D) '\abc' '\\' '\' '\f' '\101' 'xf' '\A' '\}' 'x1f' 4.下面不正确的字符串常量是( A )。 A)'abc' B)"12'12" C)"0" D)" " 5.以下选项中不合法的用户标识符是( A )。 A)abc.c B)file C)Main D)PRINT 6.C语言提供的合法关键字是( D )。 A) swith B) cher C) Case D)default 7.下列标识符组中,合法的用户标识符为 A A)_0123与ssiped B)del-word与signed C)list与*jer D) keep%与wind 8.在C语言中,逻辑值"真"的表示是用( C )。 A) true B) 整型值0 C)非另整型值 D) T 9若有以下定义 char s='\092'; 则该语句( b ) A)使s的值包含一个字符 B)定义不合法,s的值不确定 C)使s的值包含4个字符 D)使s的值包含3个字符 10设C语言中,int类型数据占2个字节,则float类型数据占( D )个字节。 A)1 B)2 C)8 D)4 11已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为( A )。 A)D B)68 C)不确定的值 D)C 12逻辑运算符两侧运算对象的数据类型是 ( D )。 A) 只是0或1 B) 只能是0或非0正数 C) 只能是整型或字符型数据 D) 可以是任何合法的类型数据 13TURBO C中int类型变量所占字节数是( B )。

c语言基础知识及考点整理

第一周 int定义整型变量所有字母都要先定义再使用。 算法:描述完成任务的步骤序列。 算法的三个基本结构:顺序、分支、循环。 算法的表示:自然语言、程序流图、N-S图 程序流图中判定框用菱形,开始结束用圆角矩形,赋值用矩形。 main:主函数,后面一定是英文输入法下的() int:定义“整形变量” printf:输出语句 scanf:输入语句 %:占位符一个占位符就是占据一个字符的位置,格式化输出时显示为个空格. 具体用法如下: %a,%A 读入一个浮点值(仅C99有效) %c 读入一个字符 %d 读入十进制整数 %i 读入十进制,八进制,十六进制整数 %o 读入八进制整数%x,%X 读入十六进制整数 %s 读入一个字符串,遇空格、制表符或换行符结束。 %f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。 %p 读入一个指针 %u 读入一个无符号十进制整数 %n 至此已读入值的等价字符数 %[] 扫描字符集合

%% 读%符号(c此内容来自baidu) &:“取地址”运算符:这个运算发可以这样理解,比如说&a的含义就是a在内存中的地址。因为&运算符能够取出一个变量在内存中的地址,所以叫做取地址运算符。 输入语句scanf("%d %d",&a,&b); 输出语句printf("%d", c); 输出内容由“”引出 注意一个;就是一个语句,每句话后都要有分号,不能丢。括号是英文的, 一个程序主要由顺序分支循环3种结构构成 { }不能忘,限制变量作用范围 进入CodeBlocks之后新建一个项目,在project选项中选择控制台应用程序Console application进行编写。 输入语句scanf和输出语句printf中的“f”指的是format格式。 程序编写完成后点击Build——Build and run 或F9进行运行,并可点击View——log看到编程日志,检查错误。 分号;不能少 .如果觉得编写过程中字符显示太小可以按住ctrl并将鼠标滚轮向下滚来放大~ 第二周 计算一元二次方程的根的题目中,遵守四则运算法则,求根公式.../2a中的2a要用()括起来 华氏温标(Fahrenheit temperature scale)符号℉,1724年,德国人华伦海特制定了华氏温标,他把一定浓度的盐水凝固时的温度定为0℉,把纯水凝固时的温度定为32 ℉,把标准大气压下水沸腾的温度定为212℉,中间分为180等份,每一等份代表1度,这就是华氏温标,用符号F表示,这就是华氏温度 摄氏温度(℃)和华氏温度(℉)之间的换算关系为: 华氏度(℉)=32+摄氏度(℃)×,摄氏度(℃)=(华氏度(℉)-32)÷。

C语言基础知识总复习考前突击专用

C语言基础知识总复习(考前突击专用) 总体上必须清楚的: 1)程序结构是三种:_顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式?数据存放的位置就是他的地址. 4)bit是位是指为0或者1。byte是指字节,一个字节=八个位? 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 & break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第0

第一章C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉VC++ 1、VC是软件,用来运行写的C语言程序。 2、 每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---?.obj---?.exe ) 这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!)第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。

(完整版)《C语言程序设计》基本知识点

《C语言程序设计》教学基本知识点 第一章C语言基本知识 1.C源程序的框架 尽管各个C源程序的功能千变万化,但框架是不变的,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。 2.C语言源程序的书写规则: (1)C源程序是由一个主函数和若干个其它函数组成的。 (2)函数名后必须有小括号,函数体放在大括号内。 (3)C程序必须用小写字母书写。 (4)每句的末尾加分号。 (5)可以一行多句。 (6)可以一句多行。 (7)可以在程序的任何位置加注释。 3.语句种类 语句是程序的基本成分,程序的执行就是通过一条条语句的执行而得以实现的,根据表现形式及功能的不同,C语言的基本语句可以分为五大类。 (1)流程控制语句 流程控制语句的功能是控制程序的走向,程序的流程有三种基本结构:顺序结构、分支结构和循环结构,任何复杂的程序都可以由这三种基本结构复合而成。其中后两种结构要用特定的流程控制语句实现。 (2)表达式语句 表达式语句的形式是:表达式;,即表达式后跟一分号“;”,分号是语句结束符,是一个语句必不可少的成分。表达式和表达式语句的区别在于表达式代表的是一个数值,而表达式语句则代表一种动作。最常见的表达式语句是赋值语句。 (3)函数调用语句 函数调用语句实际上也是一种表达式语句,形式为:在一次函数调用的小括号后面加上一个分号。 (4)空语句 空语句的形式就是一个分号,它不代表任何动作,常常作为一个意义转折点使用。 (5)复合语句 复合语句从形式上看是多个语句的组合,但在语法意义上它只相当于一个语句,在任何单一语句存在的地方都可以是复合语句。注意复合语句中最后一个语句末尾的分号不能少。复合语句右大括号后面没有分号。 4.运算符 用来表示数据各种操作的符号称为运算符。运算符实际上代表了一种类型数据的运算规则。不同的运算符具有不同的运算规则,其操作的数据类型必须符合该运算符的要求,运算结果的数据类型也是固定的。 根据参加操作的数据个数多少,可以将C语言的运算符分为单目运算符,双目运算符和三目运算符(三目运算符只有条件运算符一个)。 根据运算对象和运算结果的数据类型可分为算术运算符、关系运算符、逻辑运算符等。 5.表达式 表达式是由常量、变量、函数,通过运算符连接起来而形成的一个算式。一个常量,一个变量或一个函数都可以看成是一个表达式。 表达式的种类有: 算术表达式、关系表达式、逻辑表达式、赋值表达式、字位表达式、强制类型转换表达式、逗号

C语言基础知识整理

C 语言基础知识 1. 每个C 程序有且只有一个主函数main() ,且程序必须从main() 函数开始执行,并在main() 函数中结束。 2. 在C语言中,用e来表示科学计数法时,规定在e的前面必须有数字,后面必须为整数。 3. 用单引号括起来的一个字符常量只能存放一个字符;C 语言中没有字符串变量,只能用字符数组来存储字符串。 4. 外部变量在编译时由系统分配永久的内存空间,所以外部变量的类型不是自动存储类别。 5. 在一个函数内的复合语句中定义的变量,只能在这个复合语句范围内有效。 6. 用sizeof(int) 计算int 类型数据的字节数。 7. C语言运行时,首先系统检查语法的正误,再运行程序的语法;C语言中,可以在一个函数中嵌套一个函数,但是不能在一个函数中定义一个函数;只有在函数外部定义的函数才是外部函数;C语言的子程序有过程和函数两种。 8. 预处理命令行的位置没有规定,只是习惯放在前面;在源文件中的可以有多条预处理命令,但一行只能写一条;宏名的大写只是习惯性的表示;宏替换不仅不占用运行时间还不分配内存空 间。 9. feo f函数的作用是检查文件是否结束,当结束时返回的值为非零,否则为零。 10. 当定义了数组后,在给其赋值时,不能直接把字符串赋给数组名。 11. 在赋值表达式中,赋值运算符"=”右侧不能为表达式;在求余运算符中的两侧都必须为整型;在强制类型转换时,类型名应用括号括起来。 12. 静态局部变量,只有当程序结束后,其值才释放。 13. 当调用函数时,实参是一个数组名,则向函数传送的是数组每一个元素的地址。 14. 算法的特点为有零个或多个输入,有一个或多个输出,当相同的输入时,其结果相同;算法 正确的程序最终一定会结束。15. 在 C 语言中,预处理命令行都以“#”开头;当需要时才用 #include; 预处理的作用就是实现宏定义和条件编译。16. 当数组元素的下标超出了定义 的下标范围时,系统不给出“下标越界”的字样,而是得出错误的答案,因此在编程时务必检查下标是否越界。 17. 共用体变量不能作为函数的参数,也不能使函数带回共用体变量。 18. 指向函数的指针变量的定义形式为:数据类型(* 指针变量)();,因此其为指向函数的 指针变量。 19. 用C 语言编写的代码程序是源程序,只有通过编译、连接才能进行。 20. 在说明为static 时,其生存期得到延长,而其作用域并没有改变,在定义后系统会自动帮它赋值为0,static 为关键字不能被用作它用。 21. 频繁地使用空语句会降低程序的可读性和运算速度。22. 运算符%两边都应是整数,赋值语 句左边应该是变量,而非表达式,强制转换语句强制类型应加括号。 23. 在逻辑运算符中,其两侧的运算符对象为任意合法的表达式即可。 24. 函数fread (&larray,2,16,fp)的功能是,从fp所指的数据文件中读取16次2字节的数据 存储到数组larray中。25.整个流式文件也可以随机存取数据,C语言文件中有好多函数可以达 到写入数据时,未经输入数据,达到不覆盖的目的,在进行写操作时,系统会自动关闭文件。 26. 使用putchar、getchat、puts、gets、printf、seanf函数时,必须在程序的开头岀现包含头文件 #inelude "stdio.h ”的命令行,而使用字符串处理函数时,必须在程序的开头岀现包含头文件 #include”string.h ”命令行,而使用数学函数时,必须在程序的开头岀现包含头文件#include”math.h” 的命令行。 27. 一个斜杠与小于等于127 任意数字按一个字符计算,一个斜杠与任意一个字符按一个字符计 28. 一个C 程序可以有一个或多个程序文件,也可以有一个或多个函数,所以一个C 语言程序可以实现

最新c语言基础知识总结汇总

c语言基础知识总结

C语言知识要点复习资料 总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。 byte 是指字节, 一个字节 = 八个位. 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章 C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。

3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---→.obj---→.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!) 第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 用户标识符:基本上每年都考,详细请见书上习题。 第四节:进制的转换 十进制转换成二进制、八进制、十六进制。 二进制、八进制、十六进制转换成十进制。 第五节:整数与实数

国家二级C语言公共基础知识要点及历年真题

1算法 1.1 算法的基本概念 1.算法的概念(必记): 算法是指解题方案的准确而完整的描述。 分析:要用计算机实现某一任务时,先应设计出一整套解决问题的指导方案,然后具体实现。整套的指导方 案称之为算法,而具体的实现称之为程序。并且在设计指导方案时,可不用过多考虑到实现程序的具体细节(即可以一点点的理想化),但在程序实现时,必须受到具体环境的约束(现实不同于理想)。 结论:算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计。 2.算法的基本特征(必记): a.可行性:由于算法总是在某个特定的计算工具上实现并执行的,因而受到计算工具的限制,所以在设计算法时,要考虑到设计的算法是否是可性的。 b.确定性:算法中的每一个步骤都必须是有明确定义的,不允许有模棱两可的解释,也不允许有多义性。 c.有穷性:算法必须能在有限的时间内做完,即算法必须能在执行有限个步骤之后终止。 d.拥有足够的情报:算法有相应的初始数据。 3.算法的基本要素: 一个算法通常由两个基本要素所组成:一是对数据对象的运算和操作,二是算法的控制结构。 基本运算和操作分为四类: a. 算术运算: (加、减、乘、除等运算) b. 逻辑运算: (与、或、非等运算) c. 关系运算: (大于、小于、等于、不等于等运算) d. 数据传输: (赋值、输入、输出等操作) 算法的控制结构: 算法中各操作之间的执行顺序称之为算法的控制结构。一个算法一般都可以用顺序、选择、循环三种基本控 制结构组合而成。 注意:一个计算机系统能执行的所有指令的集合,称为该计算机系统的指令系统。 4.算法设计基本方法: 列举法、归纳法、递推、递归、减半递推技术、回溯法。 1.2 算法的复杂度 (必记) 算法的复杂度主要包括时间复杂度和空间复杂度。 1.算法的时间复杂度: 是指执行算法所需要的计算工作量,是由算法所执行的基本运算次数来度量。 可用平均性态和最坏情况两种分析方法。其中平均性态分析是指用各种特定输入下的基本运算次数的加权平 均值来度量算法的工作量;而最坏情况分析是指在所有特定输入下的基本运算次数据的最大次数。 2.算法的空间复杂度: 一个算法的空间复杂度,是指执行这个算法所需要的内存空间。包含有三部分所组成:算法程序所占的空间 +输入的初始数据所占的存储空间+算法执行过程中所需要的额外空间。 历届的考题: 1、算法具有五个特性,以下选项中不属于算法特性的是(______) [2005.4] A)有穷性B)简洁性C)可行性D)确定性 2、问题处理方案的正确而完整的描述称为______。[2005.4] 3、下列叙述中正确的是________。[2006.9] A)一个算法的空间复杂度大,则其时间复杂度也必定大

最新C语言程序设计基础知识期末复习

C语言程序设计基础知识期末复习 一、C语言与算法 1.程序:一组计算机能识别和执行的指令。 2.C语言的特点:运算符丰富(共有34种运算符)、数据类型丰富、具有结构化的控制语句。 3.C语言程序的结构特点: (1).一个程序由一个或多个源程序文件组成:一个源程序文件中可以包括三个部分:预处理指令、全局声明、函数定义 (2).函数是C程序的主要组成部分:一个C程序是由一个或多个函数组成的必须包含一个main函数(只能有一个);每个函数都用来实现一个或几个特定功能;被调用的函数可以是库函数,也可以是自己编制设计的函数。 (3).一个函数包括两个部分函数首部和函数体(声明部分:定义在本函数中所用到的变量;对本函数所调用函数进行声明;执行部分:由若干个语句组成,指定在函数中所进行的操作) (4). 程序总是从main函数开始执行 (5). C程序对计算机的操作由C语句完成 (6.)数据声明和语句最后必须有分号 (7.)C语言本身不提供输入输出语句 (8.)程序应当包含注释,增加可读性 4、算法(1)算法+ 数据结构= 程序 (2)顺序结构、选择结构、循环结构是表示一个良好算法的基本结构 (3)算法的特性:有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性(4)算法流程图:一个流程图包括以下几部分:表示相应操作的框;带箭头的流程线;框内外必要的文字说明。 流程线不要忘记画箭头,否则难以判定各框的执行次序。 算法流程图的结构特点:只有一个入口;只有一个出口(一个判断框有两个出口;一个选择结构只有一个出口)结构内的每一部分都有机会被执行到。也就是说,对每一个框来说,都应当有一条从入口到出口的路径通过它;结构内不存在“死循环”。 二、顺序结构设计 5、标识符:用来标识变量名、符号常量名、数组名、类型名、函数名等的有效字符序列。C语言对标识符的规定: (1)只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线 (2)长度:在TC中最多允许32个字符,建议不要超过8个 如果系统规定标识符长度为8,那么x1234567A和x1234567B会被视为同一标识符。 (3)在C语言中,标识符大小写敏感。如ABC、aBC、abc分别代表3种不同的标识符(4)标识符不能与C语言的保留字、系统标准库函数同名。 program to_ _to file_2 ab1_c3 为合法标识符 非法字符举例:yes? (含有不合法字符“?”)123(第一个字符不能为数字)go to(标识符中不允许有空格) a_80%(出现非法字符“%”)if与关键字相同) 6、常量与变量 注意:以下变量定义形式是错误的int a,int b; int a;b; (1)整型常量 ·十进制整型:能出现数字0~9,可带正负号如:0,11,95,-2

c语言基础知识总结

C语言最重要的知识点复习资料 这个a版本,还会进行改正和补充,请大家认真熟悉这些基础知识! 总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。 byte 是指字节, 一个字节 = 八个位. 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI ; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章 C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。

3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 (.c---.obj---.exe) 2、每个C语言程序写完后,都是先编译,后链接,最后运行。 这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!)第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 用户标识符:基本上每年都考,详细请见书上习题。 第四节:进制的转换 十进制转换成二进制、八进制、十六进制。 二进制、八进制、十六进制转换成十进制。 第五节:整数与实数 1)C语言只有八、十、十六进制,没有二进制。但是运行时候,所有的进制都要转换成二进制来进行处理。(考过两次) a、C语言中的八进制规定要以0开头。018的数值是非法的,八进制是没

计算机二级c语言公共基础知识(免费的)

计算机二级C语言的二级共公基础知识教程 第一章数据结构与算法 1.1 算法 算法:是指解题方案的准确而完整的描述。 算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。 算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括: (1)可行性; (2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性; (3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义; (4)拥有足够的情报。 算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。 指令系统:一个计算机系统能执行的所有指令的集合。 基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。 算法的控制结构:顺序结构、选择结构、循环结构。 算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。算法复杂度:算法时间复杂度和算法空间复杂度。 算法时间复杂度是指执行算法所需要的计算工作量。 算法空间复杂度是指执行这个算法所需要的内存空间。 1.2 数据结构的基本基本概念

数据结构研究的三个方面: (1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构; (3)对各种数据结构进行的运算。 数据结构是指相互有关联的数据元素的集合。 数据的逻辑结构包含: (1)表示数据元素的信息; (2)表示各数据元素之间的前后件关系。 数据的存储结构有顺序、链接、索引等。 线性结构条件: (1)有且只有一个根结点; (2)每一个结点最多有一个前件,也最多有一个后件。 非线性结构:不满足线性结构条件的数据结构。 1.3 线性表及其顺序存储结构 线性表由一组数据元素构成,数据元素的位臵只取决于自己的序号,元素之间的相对位臵是线性的。 在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。 非空线性表的结构特征: (1)且只有一个根结点a1,它无前件; (2)有且只有一个终端结点an,它无后件;

计算机二级C语言公共基础知识

计算机公共基础部分知识归纳 第一章数据结构与算法 算法---是一组严谨地定义运算顺序的规则 算法的基本要素---一是对数据对象的运算和操作,二是算法的控制结构 算法设计基本方法---列举法、归纳法、递推、递归、减半递推 算法的复杂度---包括时间复杂度和空间复杂度 时间复杂度---执行算法所需的计算工作量 空间复杂度---执行算法所需的内存空间 数据结构---相互有关联的数据元素的集合。如春、夏、秋、冬;18、11、35、23、16。。。; 父亲、儿子、女儿等都是数据元素。 前件---数据元素之间的关系,如父亲是儿子和女儿的前件 后件---如儿子是父亲的后件 结构---指数据元素之间的前后件关系 数据的逻辑结构—是指反映数据元素之间逻辑关系,而与它们在计算机中的存储位置无关数据的存储结构(物理结构)---数据的逻辑结构在计算机存储空间中的存放形式,数据元素 在计算机存储空间的位置关系可能与逻辑关系不同。 根据数据结构中各数据元素之间前后件关系的复杂程度,可将数据结构分两类---线性结构与 非线性结构 线性结构(线性表)---满足下列两个条件(1)有且只有一个根结点(2)每一个结点最多有 一个前件和后件。则称该数据结构为线性结构,否则为非线 性结构。 线性表是最简单、最常用的一种数据结构,其数据元素之间的相对位置是线性的,其存储方 式为顺序存储的,如数组 栈---是限定在一端进行插入与删除的线性表,一端封闭,另一端开口,其操作原则是“先进 后出”,栈的运算有入栈、退栈、读栈顶元素 队列---是指在一端进行插入(称为队尾)而在另一端进行删除(称为队头)的线性表,其操 作规则是“先进先出”,其运算有入队和退队。 树---是一种简单的非线性结构,而且是层次结构,是倒立的大树,有根结点、父结点、子结 点、叶子结点。根结点在第一层,一个结点所拥有的后件的 个数称为该结点的度,所有结点中最大的度称为树的度, 树的最大层次称为树的深度。 二叉树---(1)非空二叉树只有一个根结点(2)每一个结点最多有两棵子树(左子树和右子 树),其存储结构为链式。 二叉树性质---(1)K层上最多有2(K-1)个结点(2)深度为m的二叉树最多有2m-1个结点(3)度为0的结点(叶子结点)比度为2的结点多一个(4)具有n个结点的 二叉树,其深度至少为[Log2n]+1,其中[Log2n]表示对Log2n 取整 满二叉树---除最后一层外,其余层的结点都有两个子结点 完全二叉树---除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的 若干结点,叶子结点只可能在层次最大的两层上出现。满二 叉树是完全二叉树,而完全二叉树不是满二叉树。完全二叉 树有两个性质:(1)具有n个结点的完全二叉树的深度为

C语言程序设计基础

题型及分数: 单选题:25分 判断题:10分 填空题:15分 程序分析题:20分 编程题:30分 其中:课后习题及复习大纲中相类似题所占比例在70%-80%。 带*号的内容和复习题为较难部分,为非重点考察内容。 第一章C语言程序设计基础(出题比例4-6%) 1.程序设计语言的基本概念 ?程序 ?程序设计语言 ?常用程序设计语言及其类型 ?源程序、编译、目标文件、连接、可执行程序 ?编程的步骤 2.C语言程序的基本结构 (1) C源程序的框架 C源程序的框架,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。 (2) C语言源程序的书写规则: ?C源程序是由一个主函数和若干个其它函数组成的; ?函数名后必须有小括号,函数体放在大括号内; ?C程序对大、小写字母书写敏感; ?每句的末尾加分号; ?可以一行多句; ?可以一句多行; ?可以在程序的任何位置加注释,注释的方式。 3.C语言程序设计的的基本步骤和调试过程 复习题:/***** 1. 每个C语言程序中有且仅有一个函数,它是程序的入口和出口。 2. 引用C语言标准库函数,一般要用预处理命令将其头文件包含进来。 3. C语言属于() A.高级语言 B. 低级语言 C.中级语言 D. 机器语言 4. C语言规定了若干有特定意义、为C语言专用的单词,称为关键字。 5. C语言的语句以结尾。 6. C语言源程序经过编译以后生成文件,生成的文件名后缀为,经过连接后生成文件,后缀为 7.C语言中不能使用关键字作为标识符。(√)

第二章基本数据类型,运算符与表达式(出题比例20-30%) 关键知识点: 1.常量,变量: a)标识符的命名规则 b)常量,变量的概念:直接常量,符号常量,变量必须先定义后使用 c)变量名和变量值的区别。 2.C语言中的基本数据类型 a)各种数据类型的数据在内存中的存放方式 b)掌握各种数据类型数据的常量使用方法,特别注意字符常量和字符串常量的区别使 用 c)整型,字符型,浮点型变量的定义和引用方法 d)数据的数据类型,数据的取值范围,数据在内存中存放方式三者之间的联系 3.运算符和表达式的使用方法 a)自增、自减运算符 b)赋值运算符 c)算术运算符及表达式 d)逗号运算符及表达式 e)*位运算符及表达式 f)sizeof运算符及表达式 g)*强制数据类型转换符及表达式 4.运算符的优先级和结合性 本章复习题: 课后习题:一、单选题,二、填空题 1. C语言的标识符命名规则中,第一个字符可以为字符‘#’或‘&’ .(×)。 2.下列全部属于合法的用户标识符的是() A.A1 P_0 dS B. float 2la _A C. *a hy kk D. _123 temp main 3. C语言对字母的大小写不敏感。(×) 4. C语言中,符号常量由宏定义命令#define来定义。(√) 5. 在VC 6.0中,数据类型int,char,float和double所占的内存字节数分别是、、和。 6.下列四个选项中,均是合法的整型常量的选项是A A.160 –0XFFFF 011 B。-0XCDF 01A 0XE C.-01 986,012 0688 D。-0X48a 2e5 0x

C语言基础知识归纳

C语言基础知识 1.每个C程序有且只有一个主函数main(),且程序必须从main() 函数开始执行,并在main()函数中结束。 2.在C语言中,用e来表示科学计数法时,规定在e的前面必 须有数字,后面必须为整数。 3.用单引号括起来的一个字符常量只能存放一个字符;C语言中 没有字符串变量,只能用字符数组来存储字符串。 4.外部变量在编译时由系统分配永久的内存空间,所以外部变 量的类型不是自动存储类别。 5.在一个函数内的复合语句中定义的变量,只能在这个复合语 句范围内有效。 6.用sizeof(int)计算int类型数据的字节数。 7.C语言运行时,首先系统检查语法的正误,再运行程序的语法; C语言中,可以在一个函数中嵌套一个函数,但是不能在一个函数中定义一个函数;只有在函数外部定义的函数才是外部函数;C语言的子程序有过程和函数两种。 8.预处理命令行的位置没有规定,只是习惯放在前面;在源文 件中的可以有多条预处理命令,但一行只能写一条;宏名的大写只是习惯性的表示;宏替换不仅不占用运行时间还不分配内存空间。 9.feof函数的作用是检查文件是否结束,当结束时返回的 值为非零,否则为零。

10.当定义了数组后,在给其赋值时,不能直接把字符串赋给数 组名。 11.在赋值表达式中,赋值运算符“=”右侧不能为表达式;在 求余运算符中的两侧都必须为整型;在强制类型转换时,类型名应用括号括起来。 12.静态局部变量,只有当程序结束后,其值才释放。 13.当调用函数时,实参是一个数组名,则向函数传送的是数组 每一个元素的地址。 14.算法的特点为有零个或多个输入,有一个或多个输出,当相 同的输入时,其结果相同;算法正确的程序最终一定会结束。 15.在C语言中,预处理命令行都以“#”开头;当需要时才用 #include;预处理的作用就是实现宏定义和条件编译。 16.当数组元素的下标超出了定义的下标范围时,系统不给出“下 标越界”的字样,而是得出错误的答案,因此在编程时务必检查下标是否越界。 17.共用体变量不能作为函数的参数,也不能使函数带回共用体 变量。 18.指向函数的指针变量的定义形式为:数据类型(*指针变量) ();,因此其为指向函数的指针变量。 19.用C语言编写的代码程序是源程序,只有通过编译、连接才 能进行。 20.在说明为static时,其生存期得到延长,而其作用域并没有改

C语言基础知识测试题

基础知识测试题一.单项选择题 1.以下不正确的C语言标识符是() A.ABC B.abc C.a_bc D.ab.c 2.以下正确的C语言标识符是(C) A.%x B.a+b C.a123 D.test! 3.一个C语言程序的执行是从()。 A.main()函数开始,直到main()函数结束 B.第一个函数开始,直到最后一个函数结束 C.第一个语句开始,直到最后一个语句结束 D.main()函数开始,直到最后一函数结束 4.在C语言程序中,main()的位置()。 A.必须作为第一个函数 B.必须作为最后一个函数 C.任意 D.必须放在它所调用的函数之后 5.一个C语言程序是由()。 A.一个主程序和若干个子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 6.C语言源程序的基本单位是()。 A.过程 B.函数 C.子程序 D.标识符 7.编辑程序的功能是()。 A.建立并修改程序 B.将C源程序编译成目标程序 C.调试程序 D.命令计算机执行指定的操作 8.C编译程序是()。 A.C语言程序的机器语言版本 B.一组机器语言指令. C.将C源程序编译成目标程序的程序 D.由制造厂家提供的一套应用软件 9.不属于字符型常量的是() A.'A' B."B" C.'\n' D.'\x72' 10.设char ch;以下正确的赋值语句是:() A.ch='123'; B.ch='\xff'; C.ch='\08'; D.ch="\"; 11.以下使i的运算结果为4的表达式是() A.int i=0,j=0; (i=3,(j++)+i);

B.int i=1,j=0; j=i=((i=3)*2); C.int i=0,j=1; (j==1)?(i=1):(i=3); D.int i=1,j=1; i+=j+=2; 12.若t为double类型,表达式t=1,t+5,t++的值是() A.1 B.6.0 C.2.0 D.1.0 13.设整型变量m,n,a,b,c,d均为1,执行“(m=a>b)&&(n=a>b)”后m,n的值是() A.0,0 B.0,1 C.1,0 D.1,1 14.执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为() A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,2 15.若a=1,b=2,c=3,d=4,则条件表达式a

相关文档
最新文档