当前位置:文档之家› 二级c语言习题答案及解析 第二章

二级c语言习题答案及解析 第二章

第二章顺序结构

一选择题

1,答案是C

考点:空语句

空语句表示程序在执行时不产生任何动作,但是随意使用空语句会导致逻辑上出现错误,慎重使用。

2,答案是B

考点:语句

语句必须以分号结尾,A,C,D表达式后面均没有分号,所以不能构成语句。

3,答案是C

考点:输出语句和算术表达式

int x=13,y=4;说明x,y均为整型,所以x/y只取整数部分(舍去法),值为3,

把3赋值给x,整个x=x/y表达式的值为左边变量x的值,所以x为3输出时以%d,带符号的十进制输出数据。

注意:整数除以整数,结果仍然为整数。

4,答案是A

a,b均为整型,a/b是取a÷b所得商的整数部分,所以是0,再把0赋值给

c,所以是c的值是0。

注意:整数除以整数,结果仍然为整数。

5,答案是D

考点:注释、变量、数据输入和输出

注释部分必须用“/*”开头和用“*/”结束,其中“/”、“*”之间不能有其他符号,也不能是空格键。计算机不对注释部分进行编译,即注释不对C语言程序产生任何影响,可以在任何能插入空格符的地方插入注释。但是注释不能嵌套使用,例如:/*12212/*1221*/22*/

变量要先定义后使用。并且要满足用户标识符的命名规则。

A 本题中没有“/*”和“*/”,所以没有注释。故A答案错误。

B 将r定义为整型不会在编译时出错,会自动进行类型转换,自动将表达式的值计算后转换成赋值号左边的类型的值后再赋值。所以变量r是整型是正确的。

C 变量s为浮点型,即小数,输出时以%f输出是正确的。

D π是非法的变量

D 本选项中出现了p,p是一个变量,那么变量要先定义后使用,这里是先使用,后定义。

6,答案是D

考点:逗号运算符

格式为:表达式1,表达式2,表达式3………,表达式n

逗号运算符也称为顺序求值表达式,整个都好运算表达式的值为表达式n的值,(最后一个表达式的值),计算方法是先算左边表达式的值,再算后的,从左至右依次计算。逗号运算符是优先级别最低的运算符。

(x,y)是逗号表达式,它的值只有一个,所以格式说明符的个数和输出项的个数是相等的。并且逗号表达式的值为最后一个表达式的值,最后一个表达式是y=2003,所以整个表达式的值

是2003,因此输出值为2003。

注意:逗号表达式在计算时必须是从左至右一次计算。

7,答案是A

考点:数据输出

格式字符

说明

控制以带符号(即有正数和负数)的十进制形式输入输出一个整数,其中不输出正号。i格式在输入时也可以是带前导符的八进制整数或十六进制整数。

u

控制以无符号(即只有正数)的十进制形式输入输出一个整数。

控制以无符号的八进制形式输入输出一个整数,输出时无前导符0,输入时前导符0可有可无。

x或X

控制以无符号的十六进制形式输入输出整数,输入时无前导符0x(或0X),并且小写x对应小写a,b,c,d,e,f,大写X对应大写A,B,C,D,E,F。输入时前导符0x(或0X)可有可无,并且不区分大小写。

控制以字符形式输入输出一个字符,输出时无字符定界符(即无单引号),输入时字符不能加定界符。

控制以字符串形式输入输出一个字符串,输出时不输出字符串定界符(即无双引号),输入时从第一个非空白字符开始接收,并以接收过程中碰到的第一个空白字符(包括空格、回车符)结束,输入时字符串不能加定界符。输出时可以输出空白字符。

m是十进制整数以十进制有符号的形式输出,即照原样输32767,n=032767,032767以0开

始,是一个八进制数字,输出时不输出前导符0;故输出的结果为32767.

8,答案是C

考点:数据输出

m,n的值都是十六进制数0xabc,m-=n即:m=m-n, 把m-n的值赋给m,即把0x0赋给m,再把m值以十六进制无符号的形式输出,输出的十六进制数不用在前面0x或者0X。故输出的结果为0;

9,答案是B

考点:变量的自加自检运算和输出语句

变量的自加自减:变量在原来的基础上加一或者是减一。表达式:如果运算符在变量的后面,则表达式的值为变量原来的值;如果运算符在变量的前面,则表达式的值为变量后来的值。表达式i--,变量的值为9,表达式的值为变量原来的值,即为10,++j结果计算之后,变量的值为2,运算符在变量的前面,所以表达式的值是变量后来的值,即为2,最后将这两个变大时的值输出,即为10,2,注意两个%d之间有一个逗号,这个逗号为普通字符,在输出时要原样输出。

10,答案是C

考点:数值的转换和数据输出

%d:输出的是带符号的十进制整数。

printf函数在输出的时候,如果数据的类型不相同的时候,将自动将数据转换成相同类型之后再输出。m=0256,即m是八进制的数0256,要以八进制无符号的形式输出,即输出256;n=256,即n是十进制的数256,也要以八进制无符号的形式输出,首先要把十进制数转化为八进制数,256转化为八进制为0400,不输出数据的前导符0,即输出400。

11,答案是B

考点:printf函数的输出格式

当输出项的个数多余格式控制符的个数时,多余的输出项不输出数据。

在printf语句中,格式控制的个数只有一个,即%d,而输出项有两项,即a和b。即顺序输出数据,首先输出a的值,在输出b的值,但是此时没有输出b的格式控制符,故没有输出b的值,所以最终的输出结果为:666.

12,答案是C

考点:数据的输出。

第一个数据的输出控制宽度是2位,但是x的值是102,占3位,要输出的数据宽度大于规定的输出宽度,所以按数据的实际宽度输出,输出102。第二个数012,代表的是一个八进制数字,输出时以%d输出,即以十进制整数的形式输出数据,将012转换成十进制整数位:10,输出时% 和d之间的数字,代表输出的数据占有两个宽度。10占有2个宽度,所以输出的结果为:10。所以最后的结果为:C。

13, 答案是B

考点:数据输出符合赋值表达式数据的定义

复合赋值表达式:优先级2,结合方向:自右向左。

表达式a=f/=c*=(x=6.5),按从右到左结合,先把6.5赋值给x,再执行c=c*6.5,c的值变为

65,再执行f=f/65,为浮点数的除法,f的值为1.53……,再把f的值赋给a,a为整型数据,执行强制类型转换,a的值为1。a对应的输出格式为%d,即输出1;c对应的输出格式为%d,输出65,f对应的输出格式%3.1f,即输出控制宽度为3位,保留小数点后一位小数,并对第二位小数进行四舍五入,即输出1.5,x对应的输出格式也为%3.1f,输出6.5。

14 ,答案是B

考点:数据输出

数据在输出时:格式控制符和其所输出的数据的类型必须相同,否则不能正确输出数据。float x=-123.456;说明x为实型数据,实型数据对应的输出格式应该为%f。故选答案D。

15,答案是C

考点:复合赋值表达式

m=(k+=i*=k);按从右到左结合,先执行i=i*k;即i被赋值为4,再执行k=k+4;k被赋值为6,最后把6赋给m,输出m和i的值。

16,答案是C

考点:数据输出

%d之间的数字,代表的是输出数据时占有的宽带,当数据的宽度大于指定的宽度时,原样输出,当小于数据的实际宽度时,如果是大于0的整数,输出时以右对齐的方式输出,如果小于0,则以左对齐的方式输出。

本题中,1234占有4个宽度,而指定的宽度为2,所以按照原样输出数据,所以得到的结果为:C

17,答案是D

考点:数据输出、自加和自减

自加和自减运算符为14号优先级,结合方向:自右向左。

-m++遵循从右向左结合的原则;m++的值为m自增之前的值,所以执行完x=-m++以后,x被赋值为-3;表达式x=x+8/++n中有加号除号,先算8/++n,++n的值为自增之后的值为5,8/5取整为1,即x=x+8/++n转化为x=x+1,即把x+1的值赋给x,x的值变为-2。

18,答案是D

考点:数据输入

数据输入的格式:scanf(“格式控制”,地址列表);

A 输入函数应为scanf();没有read函数。

B,C 输入数据列表必须是地址表达式;x,y,z变量之前都要加上&。

19,答案是A

考点:数据输入

数据输入的格式:scanf(“格式控制”,地址列表);

按格式控制指定的格式从键盘上输入数据。输入的格式是从格式控制的左边往右边依序输入,其中需将格式说明换成对应的数据而其它内容原样输入。

scanf(“m=%dn=%dp=%d”,&m,&n,&p);

其中的m= 、n=、p=为普通字符,所以在输入的时候要原样输入。

B答案三个之间不要有空格;

C答案用逗号分开是多余的;

D答案格式不匹配。

20,答案是A

考点:数据输入

数据输入的格式:scanf(“格式控制”,地址列表);

按格式控制指定的格式从键盘上输入数据。输入的格式是从格式控制的左边往右边依序输入,其中需将格式说明换成对应的数据而其它内容原样输入。

本题中两个%d之间有一个逗号,那么在输入的时候必须有逗号,否则不能正确接收数据,本题选项中A答案中没有逗号,所以A答案不能正确接收数据。

21,答案是C

考点:强制类型转换

格式为:(类型名)(表达式)

x乘以100是为了把x小数点后的两位小数变为整数,再加上0.5,如果小数点后一位大于等于5则会进一位,如果小数点后一位小于5则不会出现进位的情况,再对其进行强制类型转换,采用舍去法丢掉小数部分,即对x乘上100后的数实现了小数位到整数位的四舍五入。最后再除以100.0,把数字变回原来的大小,整数与浮点数相除结果为浮点数,即实现了要求。

22,答案是C

数据输入的格式:scanf(“格式控制”,地址列表);

按格式控制指定的格式从键盘上输入数据。输入的格式是从格式控制的左边往右边依序输入,其中需将格式说明换成对应的数据而其它内容原样输入。

输入的数据之间有逗号,所以说明输入的数据之间必须有逗号,A答案中没有逗号,所以A、B答案不正确,在输入时候没有输入i=,所以D答案不正确。

23,答案是B

考点:数据输入

%d和%f读入数据时,从第一个数字开始,直到不是数字为止。当%和d或者f之间有数字是,那么在读书数据的时候只读指定的位数。

输入控制中第一个数要求以“%2d”形式输入,即要求输入一个两位的数,而从键盘输入的数为876,所以从左到右取两位数字87,即把87赋值给整型变量a,余下的6再赋值给浮点型变量b,自动进行类型转换,b的值为6.000000,后面输入的543则没有赋值给变量。

24,答案是D

考点:数据输入

连续的“%%”输出一个“%”,m=和n=是普通变量,应该是原样输出,连续的两个%输出的是一个%,所以首先输出的是一个%,,即没有%和d字母配对,所以d字母接着输出。即为:m=%d,n=%d;

25、答案是D

考点:数据输入

当输出项的个数大于格式控制符的个数时,多余的项不输出,printf(“%c,%d”,ch,ch,k);printf(“k=%d”,k);

第一个printf的中只输出前面的两个变量,后面的第三个不输出。所以输出的结果为:a,97。第二个printf中的输出结果为:k=12;所以最后的结果为:D。

26、答案是B

考点:数据输出

数据在输出时输出的结果中的普通字符,原样输出,格式控制符用输出项的值替换。所以本题中将a+b的值替换%d,所以最后的结果是a+b=30;

27、答案是C

考点:数据输出

printf(“格式控制”,输出项列表);

其中的输出列表可以省略。getchar()在小括号中没有任何参数但不能省略小括号,函数返回值就是输入的字符。putchar()在小括号中有一个整型或字符型参数,函数返回值就是输出的字符。getchar()函数可以接收从键盘上输入的任何字符包括回车符、空格符、制表位符(这三个字符称为空白字符)等。该函数将输入的数据均当作字符处理,并且只接收当前的一个字符。putchar和getchar函数主要是输出和获得一个字符。在使用时可以不用头文件。故B 答案不正确;如果输入的数据为:65,则得到的只是‘6’。不是‘A’所以D不正确。故最后选择C答案。

28、答案为A

考点:getchar和putchar函数。

getchar函数时从键盘中接受一个字符,在输出时不输出字符的定界符:双引号。当输入的是a<回车>后c1得到的字符为:‘a’,c2变量得到的是回车符,所以变量c2中的字符为回车符,所以最后输出时,c1,c2的值分别为:a,回车;

二填空题

1,一条语句分号

复合语句在语法上称为一条语句,在花括号中可以有多条语句,每一条语句都必须有一个分号,分号是语句结束的标识。

2,88

int x=0210,这是一个八进制数,在输出的时候是%x,输出的是一个十六进制数,首先将八进制数转换成十进制数,再将十进制数转换成十六进制数。0210转换成十进制数为:136,将136转换成16进制数为88.

3,11

把十进制数转化为八进制数,以无符号的形式输出

4,25 21 37

b为八进制数025,c为十六进制数0X25,首先把b、c都转化为十进制的整数,分别为21、37,按照输出格式要求a、b、c以十进制整数形式输出,中间以空格分开,所以输出为25 21 37。

5,n1=%d\nn2=%d

除了n1,n2的值之外,还必须加入“n1=”“n2=”照原样输出的字符,很明显在两个数据之间还加了换行符。

6,i=10,j=20<回车>

格式控制中加入了格式说明以外的其他字符,则在输入数据时这些字符也要同样输入。输入格式控制为i=%d,j=%d,输入的时候要用数值代替了原来的呢个格式控制符。所以则应该从键盘输入i=10,j=20

7,261

a为十进制数177,在输出的时候是%o,为八进制数字,所以首先将177转换为八进制数字,在输出,将177转换成八进制数为261。

8 16

a的初值为0,在表达式a+=(a=8)中,先算小括号中的值,再算复合赋值表达式的值,a首先被赋值为8,再执行操作a=a+a,所以a最后被赋值为16,即输出a的值为16。

9、printf(“a=%d,b=%d”,a,b);

Printf函数在输出数据时,必须严格按照要求,普通字符原样输出,格式控制符用输出列表中的值进行替换。其中的%d为格式控制符,在输出的时候用数值替换,所以这一条语句为:printf(“a=%d,b=%d”,a,b);语句必须以分号结束,所以最后必须写上分号。

10 、B 66

printf(“%c %d\n”,ch,ch);该语句是输出ch的值,第一个%c输出的是字符,第二个%d,输出的整数,即ch中的ASCII值,第一个中输出的结果即为:B,第二个输出的是B字符所代表的ASCII值为66.两个输出项中的值不能有多余的符号,只能是一个空格符。

11 、10

该题目中的i的值为012,该变量为一个八进制整数,但是输出时以十进制整数输出该变量,所以首先将该变量转换成十进制数为:10,再将该变量输出。

12、12 34

该题中定义了两个变量a,b,并且给其中的a值赋了一个初值为1。接着从键盘中输入数据并且赋值给变量a和变量b;%d之间的数字代表的是读入数据时的宽度,%2d代表的是读入的时候带有2个宽度,那么输入时1234567,第一个%2d读到的数据为:12,第二个%2d读到的数据为:34,最后输出这两个数据,注意在printf函数中两个%d之间有空格键,所以在输入的时候一定要输入空格键。所以最后的结果为:12 34

13、12

考查的主要是getchar函数的功能是从键盘中读入一个字符,当输入的时候12,第一个getchar得到的值为‘1’,第二个getchar得到值‘2’。ch1-‘0’得到的值是1,n*10+(ch2-‘0’)得到的值1*10+(‘2’-‘0’)得到的值为12.所以最后的值的为12

c语言程序设计第二章课后参考答案

第二章:C程序的基本结构 一、单项选择题 1、以下不是C语言的特点的是________。 A)语言的表达能力强B)语言定义严格 C)数据结构系统化 D)控制流程结构化 2、TC编译系统提供了对C程序的编辑、编译、连接和运行环境,以下可以不在该环境下进行的环节是________。 A)编辑和编译 B)编译和连接 C)连接和运行D)编辑和运行 3、以下不是二进制代码文件是________。 A)标准库文件 B)目标文件C)源程序文件 D)可执行文件 4、下面个选项组中,均属于C语言关键字的一组是________。 A)auto,enum,include B)switch,typedef,continue C)signed,union,scanf D)if,struct,type 5、下面四组字符串中,都可以用作C语言标识符的是________。 A)print B)I \am C)signed D)if _maf scanf 3mf ty_pr mx_2d mx_ a.f x1# aMb6 AMB A&B 5XY 6、以下不属于流程控制语句的是_________。 A)表达式语句 B)选择语句 C)循环语句 D)转移语句 7、下面描述中,不正确的是________。 A)C语言的函数体由一系列语句和注释组成。 B)注释内容不能单独写在一行上。 C)C程序的函数说明部分包括对函数名、函数类型、形式参数等的定义和说明。 D)scanf和printf是标准库函数而不是输入和输出语句。 8、下面描述中,正确的是________。 A)主函数的花括号必须有,而子函数中的花括号是可有可无的。 B)一个C程序行只能写一个语句。 C)主函数是程序启动时的唯一入口。 D)函数体包含了函数说明部分。 二、填空题 1、一个完整的C程序至少要有一个________函数。(主函数) 2、标准库函数不是C语言本身的组成部分,它是由__________提供的功能函数。(编译系统) 3、C语言是以________为基本单位、整个程序由________组成。(函数函数) 4、常用的标准库函数有数学函数、字符函数和字符串函数、动态分配函数、随机函数和________函数等几个大类。(输入输出) 5、标准库函数存放在________文件中。(函数库) 6、目标程序文件的扩展名是________。(.obj) 7、程序连接过程是将目标程序、________或其它目标程序连接装配成可执行文件。(库函数) 8、因为源程序是________类型文件,所以用具有文本编辑功能的任何编辑软件程序完成编辑。(文本)

C语言题库及答案

C语言题库及答案

姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行

B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是( B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 8、下列四组字符串中都可以用作C语言程序中的标识符的是( A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

第二章 C语言习题

第二单元顺序程序设计 一.选择题 1.若m为float型变量,则执行以下语句后的输出为。 m=1234.123; printf("%-8.3f\n",m); printf("%10.3f\n",m); A. 1234.123 B. 1234.123 C. 1234.123 D. -1234.123 1234.123 1234.123 1234.123 001234.123 2.若x,y,z均为int型变量,则执行以下语句后的输出为。 x=(y=(z=10)+5)-5; printf("x=%d,y=%d,z=%d\n",x,y,z); y=(z=x=0,x+10); printf("x=%d,y=%d,z=%d\n",x,y,z); A. X=10,Y=15,Z=10 B. X=10,Y=10,Z=10 X=0,Y=10,Z=0 X=0,Y=10,Z=10 C. X=10,Y=15,Z=10 D. X=10,Y=10,Z=10 X=10,Y=10,Z=0 X=0,Y=10,Z=0 3.若x是int型变量,y是float型变量,所用的scanf调用语句格式为: scanf("x=%d,y=%f",&x,&y); 则为了将数据10和66.6分别赋给x和y,正确的输入应是:。 A. x=10,y=66.6<回车> B. 10 66.6<回车> C. 10<回车>66.6<回车> D. x=10<回车>y=66.6<回车> 4.已知有变量定义:int a;char c;用scanf(“%d%c”,&a,&c);语句给a和c输入数据,使30 存入a,字符‘b’存入c,则正确的输入是:。 A. 30’b’<回车> B. 30 b<回车> C. 30<回车>b<回车> D. 30b<回车> 5.已知有变量定义:double x;long a; 要给a和x输入数据,正确的输入语句是。若要输出a 和x的值,正确的输出语句。 A. scanf(“%d%f”,&a,&x); B. scanf(“%ld%f”,&a,&x); printf(“%d,%f”,a,x); printf(“%ld,%f”,a,x); C. scanf(“%ld%lf”,&a,&x); D. scanf(“%ld%lf”,&a,&x); printf(“%ld,%lf”,a,x); printf(“%ld,%f”,a,x); 6.若有定义double x=1,y;则以下的语句执行的结果是。 y=x+3/2; printf(“%f”,y); A.2.500000 B.2.5 C.2.000000 D.2 7.若a为整型变量,则以下语句。

C语言第二章习题带答案

1.C语言中的简单数据类型包括( B )。 A.整型、实型、逻辑型B.整型、实型、字符型 C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型2.在C语言中,错误的short类型的常数是( A )。 A.32768 B.0 C.037 D.0Xaf 3.下列常数中不能作为C的常量的是( D )。 A.0x45 B.2.5e-2 C.3e2 D.0582 4.short类型的数据长度为2个字节,则unsigned short类型数据的取值范围是( B )。 A.0至255 B.0~65535 C.-32768~32767 D.-256~255 5.下面4个选项中,均是合法转义字符的选项是( A )。 A.'\'','\\','\n' B.'\','\017','\' C.'\018','\f','xab' D.'\\0,'101','x1f 6.在C语言中,数字029是一个( D )。 A.八进制数B.十六进制数 C.十进制数D.非法数 7.下列可以正确表示字符型常数的是( B )。 A."a" B.'\t' C."\n" D.297 8.以下( C )是错误的转义字符。 A.'\\' B.'\'' C.'\81' D.'\0' 9.C语言中short类型的变量a的值为-8,则a在内存中的存储形式是( A )。 A.1111 1111 1111 1000 B.100000000000 1000 C.000000000000 1000 D.1111 1111 1111 0111 10.将字符g赋给字符变量c,正确的表达式是( C )。 A.c="g" B.c=101 C.c='\147' D.c='0147' 11.字符串"\\\22a,0\n"的长度是( C )。 A.8 B.7 C.6 D.5 12.为求出s=10!的值,则变量s的类型应当为( C )。 A.short B.unsigned short C.long D.以上三种类型均可13.已知:unsigned short x=65535;,则执行以下语句输出是( D )。 printf("%d\n", x); A.65535 B.1 C.无定值D.-1 14.下面4个选项中,均是合法整型常量的选项是( A )。 A.160,-0xffff,011 B.-0xcdf,01a,0xe C.-01,986,012,0668 D.-0x48a,2e5,0x 15.下面4个选项中,均是不合法的整型常量的选项是( D )。 A.--0f1,-0xffff,0011 B.-0Xcdf,01a,0xe C.-018,999,5e2 D.-0x48eg,-068,03f 16.下面4个选项中,均是合法浮点数的选项是( B )。 A.+1e+1,5e-9.4,03e2 B.-.60,12e-4,-8e5 C.123e,1.2e-.4,+2e-1 D.-e3,.8e-4,5.e-0

C语言考试题库及答案复习整理

C 语言理论上机考试选择题部分(共200题) 1、下面程序的输出是___D______ #include void main() { int k=11; printf("k=%d,k=%o,k=%x\n",k,k,k); } A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b 2、在下列选项中,不正确的赋值语句是__D______. A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1; 3、下面合法的C 语言字符常量是______A____. A) '\t' B) "A" C) 65 D) A 4、表达式: 10!=9的值是 ________D____. A) true B) 非零值 C) 0 D) 1 5、C 语言提供的合法的数据类型关键字是_____B____. A) Double B) short C) integer D) Char 6、字符(char)型数据在微机内存中的存储形式是__D__. A) 反码 B) 补码 C) EBCDIC 码 D) ASCII 码 7、C 语言程序的基本单位是_____C______. A) 程序行 B) 语句 C) 函数 D) 字符 8、设 int a=12,则执行完语句

a+=a-=a*a 后,a 的值是____D____ A) 552 B) 264 C) 144 D) -264 9、执行下面程序中的输出语句后,输出结果是____B__. #include void main() {int a; printf("%d\n",(a=3*5,a*4,a+5)); } A) 65 B) 20 C) 15 D) 10 10、下面程序的输出是____B______. #include void main() {int x=023; printf("%d\n",--x); } A) 17 B) 18 C) 23 D) 24 11、下面程序的输出的是_____C____. #include void main() {int x=10,y=3; printf("%d\n",y=x/y); } A) 0 B) 1 C) 3 D) 不确定的值 12、已知字母A 的ASCII 码为十进制的65,下面程序的输出是______A_____. #include void main() {char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } A) 67,D B) B,C C) C,D D) 不确定的值 13、若要求在if 后一对圆括号中表示a 不等于0的关系,则能正确表示这一关系的表达式为____D__. A) a<>0 B) !a C) a=0 D) a

C语言第二章习题

1. 以下叙述中错误的是( )。 A) 使用三种基本结构构成的程序只能解决简单问题 B) 结构化程序由顺序、分支、循环三种基本结构组成 C) C 语言是一种结构化程序设计语言 D) 结构化程序设计提倡模块化的设计方法 2. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( ) A) (n-n/10*10)*10+n/10 B) n-n/10*10+n/10 C) n/10+(n-n/10) D) (n-n/10)*10+(n/10) 3. 以下叙述中错误的是 A) 算法正确的程序可以有零个输入 B) 算法正确的程序最终一定会结束 C) 算法正确的程序可以有零个输出 D) 算法正确的程序对于相同的输入一定有相同的结果 4. 若有定义int x , y;并已正确给变量赋值,则以下选项中与表达式(x —y) ? (x + + ) : (y ++)中的条件表达式(x-y) 等价的是( )。 A) (x —y<0||x —y>0) B) (x —y<0) C) (x —y>0) D) (x —y = = 0) 5. 有以下程序 #in elude main ()

{ int a; a = (in t)1.99*3; prin tf("%d\n", a); } 程序的运行结果是( ) A) 3 B) 5 C) 6 D) 结果不确定 6. 请选出合法的C语言赋值语句:( ) A) a=b=58 B) i++; C) a=58,b=58 D) k=i nt(a+b) 7. 假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表 示代数式1/abc的表达式是:( ) A) 1/a*b*c B) 1/(a*b*c) C) 1/a/b/(float)c D) 1.0/a/b/c 8. 请选出以下语句的输出结果:( ) prin tf("%d\n",strle n("\t\"\065\xff\n"));//srele n() 为求字符串长度的函数, 返回字节数。 A) 5 B) 14 C) 8 D) 输出项不合法,无正常输出 9. 请选出以下语句的输出结果:( )

c语言第二章习题

第二章练习题 一、填空题 1、在C语言中的实型变量分为两种类型,它们是float型和()型。 2、若有定义:char c='\010';则变量c中包含的字符个数为() 3、已知字母a的ASCII码为十进制数97,且设ch为整型变量,则表达式ch='a'+'8'-'3'的值为() 4、在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为()个;一个int型数据在内存中所占的字节数为()个。 5、在C语言中,表示逻辑“假”值用数字()表示。 6、C语言中的标识符只能由字母、数字和()三种字符组成。 7、表达式8/4*(int)(2.5)/(int)(1.25*(3.7+2.3))的值为() 8、整型常量即整常数。可用三种形式表示:十进制整数、八进制整数以()开头、十六进制整数以()开关(注:请用小写字母) 9、请将75写成C语言八进制和十六进制表示(),()。 10、若有定义:int m=5,y=2;则计算表达式y+=y-=m*=y后的y值是() 11、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为()。 12、若a,b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为(),b值为(),c值为()。 13、若a是int型变量,且a的初值为6,则计算表达式a+=a-=a*a后a的值为() 14、若a是int型变量,则计算表达式a=25/3%3 后a的值为() 15、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为(),n的值为() 16、若有定义:int b=7;float a=2.5,c=4.7;则下面表达式的值为() a+(int)(b/3*(int)(a+c)/2)%4 17、若有以下定义:int a=2,b=3;float x=3.5,y=2.5;则下面表达式的值为()(float)(a+b)/2+(int)x%(int)y 18、若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为() (x+y)%2+(int)a/(int)b 19、所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为() 20、若有定义:int e=1,f=4,g=2;float m=11.29,n=4.0,k;则计算赋值表达式k=(e+f)/g+sqrt(n*1.2/g+m)后k的值是() 21、若x为int型变量,则执行以下语句后x的值是()

C语言详解(第五版)第二章程序设计项目答案

C语言详解(第五版)程序设计项目答案第二章 1.编写一个程序,以每英里0.35的费率计算一个售货员的里程偿还金。程序中要求与用户进行如下方式的交互。 #include #include int main(void) {float mile_1,mile_2,miles,consume,payment; printf("MILEAGE REIMBURSEMENT CALCULATOR\n"); printf("Enter begainning odometer reading>\n"); scanf("%f",&mile_1); printf("Enter endding odometer reading>\n"); scanf("%f",&mile_2); printf("Enter consume per mile>\n"); scanf("%f",&consume); miles=mile_2-mile_1; payment=miles*consume; printf("You traveled%f miles.At%f per mile,your reimbursement is%f",miles,consume,payment); system("pause"); return(0); } 2.编写一个程序,用于辅助设计水力发电大坝。提示用户输入大坝高度,以及水流量。如果水由重力所做的功有90%转化为电能,测算会有多少M瓦的功率。 #include #include int main(void) {double density,weight,gravitational_acceleration, efficiency,height,water_flow_rate,work,electricity_power; printf("Please type in the density of water>"); scanf("%lf",&density); printf("Please type in the gravitational_acceleration>"); scanf("%lf",&gravitational_acceleration); printf("Please type in the height of the water>"); scanf("%lf",&height); printf("Please type in the efficiency of the transformation\nfrom water to electricity>"); scanf("%lf",&efficiency); printf("Please type in the water_flow_rate>"); scanf("%lf",&water_flow_rate); weight=density*water_flow_rate; work=weight*height*gravitational_acceleration; electricity_power=work*efficiency/1000000; printf("The electric energy production is%fW",electricity_power); system("pause"); return0; }

c语言与程序设计-第2章课后习题参考答案

2.1 下列哪些是词法记号? 关键字(是) 注释 空白符 八进制常量(是) 三字符序列 字符串常量(是) 括号(是) 2.2 C编译器可将下列每一个源字符串分解为哪些记号?(不必考虑记号组合是否合法) (1)x+++y x, ++, +, y (2)-0xabL -, 0xabL (3) 2.89E+12L 2.89E+12L (4)"String+\"FOO\"" " String+ \"FOO\"" (5)x**2 x, *, *, 2 (6)"X??/" "X??/" (7)a?b a, ?, b (8)x--+=y x, --, +=, y (9)intx=+10 intx, =, +, 10 (10)"String""FOO" "String", "FOO" (这道题当时改的时候有几个小题改得有错误,注意!) 2.3 下列哪些不是标识符,为什么? 标识符由字母、数字和下划线组成,但首字符必须是字母或下划线。 4th 不是,以数字开头; sizeof 不是(标准C的关键字) _limit 是 _is2 是 xYshould 是 x*y 不是,* 非法 o_no_o_no 是 temp-2 不是,- 非法 isn't 不是,' 非法 enum 不是(标准C的关键字。注:关键字也称为保留字,是被系统赋予特定含义并有专门用途的标识符。关键字不能作为普通标识符,但可以作为宏名。所有预处理均发生在识别这些关键字之前。) 2.4 在下列表示中,哪些是合法常数,哪些是非法常数?对于合法常数,指出其类型;对于非法常数,说明其错误原因。 2L 合法,long长整型 ''' 不合法,单引号组中的单引号前需要转义字符

C语言程序设计学习指导(第2版) 1-6

第一章概述 一、选择 1.C 2.B 3.C 4.D 5.D 6.A 7.B 8.C 9.A 10.B 11.C 12.D 13.B 14.B 第二章数据类型 一、选择 1.D 2.A 3.C 4.D 5.A 6.B 7.A 8.B 9.A 10.D 11.B 12.C 13.C 14.D 15.C 16.B 17.D 18.A 19.C 20.B 21.B 22.D 23.A 24.B 25.B 26.B 27.C 第三章运算符和表达式 一、选择 1.A 2.D 3.D 4.D 5.D 6.A 7.C 8.C 9.B 10.B 11.C 12.C 13.A 14.A 15.A 16.A 17.B 18.C 19.C 20.D 21.A 22.A 23.C 24.C 25.A 26.B 27.D 28.A 29.B 30.C 31.D 32.D 33.D 34.B 35.A 36.A 37.B 38.C 39.D 40.B 41.B 42.C 43.B 第四章输入和输出 一、选择 1.C 2.D 3.C 4.C 5.C 6.B 7.B 8.C 9.D 10.D 11.D 12.D 13.B 14.A 15.B 16.B 二、编程 1.double fun(double m) { float n; n=(5.0/9.0)*(m-32); return n; } 2. char fun(char c) {c=c+32; return c;} 3.double fun(int m) { double y=0; y=sin(m)*10; return(y); } 4.float fun ( float h ) {return (long)( h * 100 + 0.5 )/ 100.0;}

C语言程序设计程序填空题库及答案

程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); }

【】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言第二章习题

1.以下叙述中错误的是( )。 A) 使用三种基本结构构成的程序只能解决简单问题 B) 结构化程序由顺序、分支、循环三种基本结构组成 C) C语言是一种结构化程序设计语言 D) 结构化程序设计提倡模块化的设计方法 2.以下可以将任意一个两位整数n的个位数与十位数对换的表达式为() A) (n-n/10*10)*10+n/10 B) n-n/10*10+n/10 C) n/10+(n-n/10) D) (n-n/10)*10+(n/10) 3.以下叙述中错误的是 A) 算法正确的程序可以有零个输入 B) 算法正确的程序最终一定会结束 C) 算法正确的程序可以有零个输出 D) 算法正确的程序对于相同的输入一定有相同的结果 4.若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++) : (y ++)中的条件表达式(x-y) 等价的是( )。 A) (x-y<0||x-y>0) B) (x-y<0) C) (x-y>0) D) (x-y==0) 5.有以下程序

—#include main() { int a; a = (int)1.99*3; printf("%d\n", a); } 程序的运行结果是() A) 3 B) 5 C) 6 D) 结果不确定 6.请选出合法的C语言赋值语句:() A) a=b=58 B) i++; C) a=58,b=58 D) k=int(a+b) 7.假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表 示代数式 1/abc 的表达式是:() A) 1/a*b*c B) 1/(a*b*c) C) 1/a/b/(float)c D) 1.0/a/b/c 8.请选出以下语句的输出结果:() printf("%d\n",strlen("\t\"\065\xff\n"));//srelen()为求字符串长度的函数,返回字节数。

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 语言的标识符只能由字母、数字和下划线三种字符组成。

C语言预习及课后习题(参考答案1-5)

第一章C语言概述 课前预习题 1.函数 2.main()函数3.单行注释、块注释、A 参考分析:C语言总是从main函数开始,main函数结束。但是C语言中存在一个exit(0)函数,它可以使得程序在任何时候、任何位置结束程序的运行。如果不考虑exit(0)等函数的特殊作用,C则总是在main函数结束。 2.C 参考分析:C程序对main函数的位置没有任何要求;其书写格式自由,一行可以写多条语句,一条语句(多关键字语句)可以写在多行;C语言忽略注释,把注释看作是一个空格,不会对注释中的内容进行语法检查。因此,如果注释中存在错误,系统是不可能发现的。另外,C语言的I/O操作均通过函数实现,系统本身未提供相应的语句。 3.D 参考分析:C语言中,注释语句的位置是任意的,当然,它不能破坏标识符的完整性。C语言只是将一个注释看作是一个空格,因此对注释内的任何错误都不作检查。 4. C 5.B 参考分析:通常许多语言程序由主程序和子程序构成,但是C语言是函数式语言,整个程序由众多函数组成。尽管有时习惯上称main函数为主程序,显然,严格地讲还是B更为符合C语言的规则。 6.C 7.B 8.C 9.C 10.C 11.绘制NS算法流程图。 (1)输入10个数,求其中的最大值。 (2)输入3个数,将它们升序排列输出。 (3)输入2个数,求它们的最大公约数。(4)输入一元二次方程的系数a、b、c,判断其根。

第二章数据类型、运算符与表达式 课前预习题 1.变量在内存中所占的字节数、变量的表数范围、变量允许参与的运算2.1、4、8 3.float、double 4.八进制、十进制、十六进制5.1 6.26 7.12、4 8.6、4、2 9.-60 10.2 11.10、6 12.13.14.4 15.1 16.0 17.9 18.字符、数字、下划线19.'f' 20.21.int型22.m/10%10*100+m/100*10+m%10 课后习题 1.A 分析:在不同的计算机系统中,不同的C语言系统中,其各种数据类型所占据的存储空间是不同的,但是有一个总的原则,即:char<=short<=int<=long<= float<=double,只有A符合16位PC机中的具体环境。 2.C 参考分析:逗号表达式的计算结果是最后一个表达式的值。k=23是括号内最后一个表达式,因此x变量的值来自k变量的值。 3.B 参考分析:逗号表达式的计算结果是最后一个表达式的值。b++在所在表达式参与运算时的值是5,该表达式计算完成后,b进行自增运算,故a+b的值为2+6=8。 4.A 参考分析:是关键字的有:char、case、while。 5.B 参考分析:不是关键字的:include、scanf、type 6.C 参考分析:合法的有:A、P_0、la0、_A、_123、temp、INT。 7.C 参考分析:教材中只是强调首字符必须为字母,我们应当知道,在语言系统中,下划线和字母具有同等的“法律效力”。 8.A 参考分析:不合法的B2,C2,C3,D2。解释:A2:-0xffff十六进制数本身已经包含了符号位,一般不前面加符号位,但加上符号位也不错误;C3:0668在有些C系统中,八进制数中允许出现8,但是通常不允许使用8;D3:0x显然后面缺少数值,但在TC中是允许的。 9.D 参考分析:不合法的A1,B3,C1,C3,D。解释:A1:--0f1十六进制数没有0x,显然不合法,这里需要讨论的是常

C语言程序设计试题集与答案解析

一.填空 1. 每个C程序都必须有且仅有一个________ 函数。 2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。 3. 软件是程序,以及______、使用和维护所需要的所有文档。 4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。 5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。 6. C语言是由________组成的。 7. C语言的函数可分为主函数main、标准库函数和_________。 8. 一个函数是由两部分组成的,即:________和函数体。 9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。 10. 程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作 的要求。不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。 11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。 12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对 象,也可以用标号和符号来代替地址、常量和变量。

13. 在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。 14. C程序的执行均是由执行_________开始。 15. 函数体即为包含在{}内的部分。它分为________和为完成功能任务由若干个C 语句 组成的执行部分。 16. C语言程序中一条简单语句是以________字符作为结束符的。 17. C语言是结构化、________的程序设计语言。 18. 由于计算机硬件不能直接识别高级语言中的语句,因此,必须经过“_______程序”,将用高级语言编写的程序翻译成计算机硬件所能识别的机器语言程序方可执行。 19. 用高级语言编写的程序需翻译成计算机硬件所能识别的机器语言程序方可执行。所以 说,用高级语言进行程序设计,其编程效率高,方便易用,但_______没有低级语言高。 20.

大学C语言考试题库及答案

精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 大学C语言考试题库及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题库吧。加油! 一单项选择题库 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行

B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是(B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是(C )。 A)%x B)a+b C)a123 D)123 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

C语言第二章习题

1. 以下叙述中错误的是 ( )。 2.以下可以将任意一个两位整数 n 的个位数与十位数对换的表达式为( 3. 以下叙述中错误的是 4.若有定义int x , y ;并已正确给变量赋值,则以下选项中与表达式 (X — y)(x ++ ) : (y + +)中的条件表达式 (x —y) 等价的是 ( 5. 有以下程序 A) 使用三种基本结构构成的程序只能解决简单问题 B) 结构化程序由顺序、分支、循环三种基本结构组成 C) C 语言是一种结构化程序设计语言 D) 结构化程序设计提倡模块化的设计方法 A) (n-n/10*10)*10+n/10 B) n-n/10*10+n/10 C) n/10+(n-n/10) D) (n-n/10)*10+(n/10) A) 算法正确的程序可以有零个输入 B) 算法正确的程序最终一定会结束 C) 算法正确的程序可以有零个输出 D) 算法正确的程序对于相同的输入一定有相同的结果 A) (x - y<0||x - y>0) B) (x -y<0) C) (x -y>0) D) (x —y = = 0) )。

8. 请选出以下语句的输出结果: ( ) 6. 请选出合法的 C 语言赋值语句:( A) a=b=58 示代数式 1/abc 的表达式是: ( A) 1/a*b*c B) 1/(a*b*c) C) 1/a/b/(float)c D) a/b/c #include <> main() { int a; a = (int)*3; printf("%d\n", a); 程序的运行结果是( A) B) C) D) 结果不确定 B) i++; C) a=58,b=58 D) k=int(a+b) 7. 假设在程序中 a,b,c 均被定义成整型 ,并且已赋大于 1的值,则下列能正确表

《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.表达式 表达式是由常量、变量、函数,通过运算符连接起来而形成的一个算式。一个常量,一个变量或一个函数都可以看成是一个表达式。 表达式的种类有: 算术表达式、关系表达式、逻辑表达式、赋值表达式、字位表达式、强制类型转换表达式、逗号

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