2004-2005(第2学期)C程序设计 判断题(部分组卷抽样题,每个选项2分,共20分) 1,编译预处理是指一些行首以#开头的特殊语句命令。【】 2.C语言提供的预处理功能主要有宏定义、文件包含、条件编译三种。【】 3.宏定义用一个指定的标识符来代麦一个字符串。【】 4.宏定义只是在编译预处理时作简单的字符串替换 【】 5宏定义有不带参数的宏定义和带参数的宏定义两种形式。【】 6.宏定义命令由#define来标识。【】 7.编译预处理只对宏作简单的替换工作,并不作正确性检查。【】 8.带参的宏展开时,将用程序中的宏名标识后边所带的实参替代宏定义中的形参。【】 9.终止宏定义的一般形式为“undef宏标识名”。【】 10.#include 能指定包含 L,条件编译就是根据编译条件来选择编译源程序中的不同部分。【】 12.在宏定义#define PI3.14159中,表示程序中用宏名PI代替一个字符串。【】 13.凡是C源程序中行首以“#“标示的控制行都是预处理指令。【】 14.有宏定义:共define p0ER(x)x*x则在任何情况下计算郑不会引起二义性【】 15,若有定义:chars1='1067':则s1中包含三个字符.【】 16.若x为int型变量,则执行x=6:x+=x-=x*x:语句后,x的值为36【】 17若有运算符:)、=、%,则他们按优先级(由低至高)的正确排列次序为:*=、>、%。【】 18.在C语言中,char型数据在内存中是以源码形式存储的【】 19.设v为f10at型变量,则 oat(3)是不合法的赋值语句。【】 20.若int类型的数据长度为2个字节,则unsigned int类型数据取值范围是0至65535】 21.已知ch是字符型变量,则ch=个”:是正确的赋值语句【】 22.设x,y均为f1oat型变量,则y=(x2)/10:赋值语句不合法【】 23.若x为int型变量,则逗号表达式(x=4*5.x*5),x+25的结果为45.x的值为20。【】 24.坛算符/和%要求参加运算的对象均为整型数据。【】 25.两个f1oat类型数据运算结果为f1oat类型。【】 26.C语言可以对整型变量赋以字符值,也可以对字符变量赋以整型值。【】 27.不能把一个字符串常量赋予一个字符变量【】 28.字符串常量”.”占内存字节数等于字符串中字节数加1。【】 29.变量的数据类型是可以在运行过程中转换。 一种属自动转换,另一种是强制转换。【】 30.20/7. 20/7的结果均为整型,而20.0/7和-20.0/7结果为实型。【】 31.赋值运算符右结合性。如x=y=2,应先执行y=2再执行x=(y=2)运算。【】 32.以下各数均不是合法的八进制数:256、03A2、-0127【】 33.0.0,.25,5.789,0.13,5.0,300.,-267.8230等均为合法的实数【】 34.字符值是以ASCII码的形式存放在变量的内存单元之中的。【】 35.用8位无符号二进制数能表示的最大十进制数为128【】 36.用户标识符 可以出现下划线和中划线(减号)【 】 37.+ -的运算对象可以是char型变量和int型变量,但不能是float型变量【】 38.设y为f1oat型变量,则y=f1oat(3)是不合法的赋值语句。【】 39.若有说明语句:intw=1,x=2,y=3,z=4:则表达式>x?w:z>y?2:x的值是4【】
1 2004-2005(第 2 学期)C 程序设计 判断题(部分组卷抽样题,每个选项 2 分,共 20 分) 1.编译预处理是指一些行首以#开头的特殊语句命令。【 】 2.C 语言提供的预处理功能主要有宏定义、文件包含、条件编译三种。【 】 3.宏定义用一个指定的标识符来代表一个字符串。【 】 4.宏定义只是在编译预处理时作简单的字符串替换。【 】 5.宏定义有不带参数的宏定义和带参数的宏定义两种形式。【 】 6.宏定义命令由#define 来标识。【 】 7.编译预处理只对宏作简单的替换工作,并不作正确性检查。【 】 8.带参的宏展开时,将用程序中的宏名标识后边所带的实参替代宏定义中的形参。【 】 9.终止宏定义的一般形式为“#undef 宏标识名”。【 】 10.#include 命令只能指定包含一个头文件。【 】 11.条件编译就是根据编译条件来选择编译源程序中的不同部分。【 】 12.在宏定义#define PI 3.14159 中,表示程序中用宏名 PI 代替一个字符串。【 】 13.凡是 C 源程序中行首以"#"标示的控制行都是预处理指令。【 】 14.有宏定义:#define POWER(x) x*x 则在任何情况下计算都不会引起二义性【 】 杨丽丽 15.若有定义:chars1=’\067’;则 s1 中包含三个字符。【 】 16.若 x 为 int 型变量,则执行 x=6; x+=x-=x*x;语句后,x 的值为 36【 】 17.若有运算符:〉、*=、%,则他们按优先级(由低至高)的正确排列次序为:*=、>、%。【 】 18.在 C 语言中,char 型数据在内存中是以源码形式存储的【 】 19.设 y 为 float 型变量,则 y=float(3)是不合法的赋值语句。【 】 20.若 int 类型的数据长度为 2 个字节,则 unsigned int 类型数据取值范围是 0 至 65535【 】 21.已知 ch 是字符型变量,则 ch="\";是正确的赋值语句【 】 22.设 x,y 均为 float 型变量,则 y=(x%2)/10;赋值语句不合法【 】 23.若 x 为 int 型变量,则逗号表达式(x=4*5,x*5),x+25 的结果为 45,x 的值为 20。【 】 24.运算符/和%要求参加运算的对象均为整型数据。【 】 25.两个 float 类型数据运算结果为 float 类型。【 】 26.C语言可以对整型变量赋以字符值,也可以对字符变量赋以整型值。【 】 27.不能把一个字符串常量赋予一个字符变量【 】 28.字符串常量”.”占内存字节数等于字符串中字节数加 1。【 】 29.变量的数据类型是可以在运行过程中转换。一种属自动转换,另一种是强制转换。【 】 30.20/7,-20/7 的结果均为整型,而 20.0/7 和-20.0/7 结果为实型。【 】 31.赋值运算符右结合性。如 x=y=z,应先执行 y=z 再执行 x=(y=z)运算。【 】 32.以下各数均不是合法的八进制数:256、03A2、-0127【 】 33.0.0,.25,5.789,0.13,5.0,300.,-267.8230 等均为合法的实数【 】 34.字符值是以 ASCII 码的形式存放在变量的内存单元之中的。【 】 35.用 8 位无符号二进制数能表示的最大十进制数为 128【 】 36.用户标识符中可以出现下划线和中划线(减号)【 】 37.++、-的运算对象可以是 char 型变量和 int 型变量,但不能是 float 型变量【 】 38.设 y 为 float 型变量,则 y=float(3)是不合法的赋值语句。【 】 39.若有说明语句:int w=1,x=2,y=3,z=4;则表达式 w>x?w:z>y?z:x 的值是 4【 】
40.C语言中,543210L、05078、0x41、12345都是正确的常量。【】 a=b=c=2:等价【】 43.C语言中的简单数据类型包括整型,实型,逻辑型,字符型【】 吕卷利循环 44.可以用hi1e语句实现一定可以用f0r语句实现。【】 45.可以用for语句实现的循环一定可以用h11e语句实现。【】 46.语句与hile语句的区别是关键 hile”出现的位置不同。【】 4?.可以用do.while语句实现的循环一定可以用while语句实现。【】 48.判断:break语句只是结束本次循环,而不是终止整个循环的执行【】 49.continue语句则是结宋整个循环过程,不再判断执行循环的条件是否成立。【】 50.do-while语句构成的循环只能用Break语句退出【】 51.循环for(i=0,j5:+i=-j:)printf(“%d%d”,i,:将执行20次【】 52.程序main0{inti:sm:for(=1:i6:i+)sum=i:printf(%dn”,su):】执行后,sm值是 15【】 53.hi1e和do-whi1e循环语句的最明显区别是do-whi1e的循环体至少无条件执行一次【】 54.若有说明intc:则whi1e(c=getchar()):是正确的C语句。【】 55.for(:)S中的语句S必执行无穷多次。【】 56.完成计算5的程序 r(i=1:i5:i+)p=1:p*=i:}【】 马软数组 57,二维数组可以看作是一种特殊的一维数组,可按一维数组方式操作。【】 58.在C语言中,允许对数组的大小进行动态定义。【】 59.字符数组中的字符串可以深个字符输入、输出。也可以整体地输入,输出。【】 0.比较字符数组 符申大小不能用关系运算符直接操作。【】 61.数组char x0= 12345 和char y1 4,’5’1:长度相同。【】 62.对数组s进行初始化,可以用chars[5]=”abcdef”:【】 63.当两个字符串所包含的字符个数相同时,才能比较两个字符串的大小。【】 64.字符个数多的字符串比字符个数少的字符串大。【】 65.在同一个程序中,数组名可以与其他变量名相同,【】 6.字符申”Cat”小于字符申 cet"。【y 67同一数组中的各个元素数据类型可以不相同。【】 68.main0{intn=5:inta[n]:.}语句定义了数组a[5]【】 69,对于字符数组,如果不进行初始化赋值,则必须说明数组长度。【】 70.对于C语言中的数组。必须先定义数组,才能使用数组元素。【】 命令来实现“文件包含”的操作。【 】 2言提牛的元素分是aa风,a,a酒个元话.【 73.C语言的编译系统不对数组的下标进行超出范围的越界检查。【】 74在c语言中,如果给数组中的全部元素赋值,则在定义数组时,可以不给出数组长度。【】 75,数组初始化时,若初始化列表中的初始化值个数多于数组元素个数,则错误。【】 76,数组若不进行初始化,则其元素值为随机数。【】 7.若有定义:inta[3][4:则a[1+][o]是对a数组元素正确引用.【】 78.char a门={0,1,2,3,4,5,6不是正确的数组定义语句.【】 79.用数组名作函数实参,传递的是数组的起始地址。【】 80.C语言中有字符串变量,与字符数组等价【】
2 40.C 语言中,543210L、05078、-0x41、12345 都是正确的常量。【 】 41.语句 int a=2,b=2,c=2;与语句 int a=b=c=2;等价【 】 42.x+a%3*(int)(x+y)%2/4 的值是 2.5【 】 43.C 语言中的简单数据类型包括整型,实型,逻辑型,字符型【 】 吕春利循环 44.可以用 while 语句实现一定可以用 for 语句实现。【 】 45.可以用 for 语句实现的循环一定可以用 while 语句实现。【 】 46.do.while 语句与 while 语句的区别是关键字“while”出现的位置不同。【 】 47.可以用 do.while 语句实现的循环一定可以用 while 语句实现。【 】 48.判断:break 语句只是结束本次循环,而不是终止整个循环的执行【 】 49.continue 语句则是结束整个循环过程,不再判断执行循环的条件是否成立。【 】 50.do-while 语句构成的循环只能用 Break 语句退出【 】 51.循环 for(i=0,j=5;++i!=-j;)printf(“%d%d”,i,j);将执行 20 次【 】 52.程序 main(){int i;sum;for(i=1;i<6;i++)sum+=i;printf("%d\n",sum);}执行后,sum 值是 15【 】 53.While 和 do-while 循环语句的最明显区别是 do-while 的循环体至少无条件执行一次【 】 54.若有说明 intc;则 while(c=getchar());是正确的 C 语句。【 】 55.for(;;)S 中的语句 S 必执行无穷多次。【 】 56.完成计算 5!的程序算法是:for(i=1;i<=5;i++){p=1;p*=i;}【 】 马钦数组 57.二维数组可以看作是一种特殊的一维数组,可按一维数组方式操作。【 】 58.在 C 语言中,允许对数组的大小进行动态定义。【 】 59.字符数组中的字符串可以逐个字符输入、输出,也可以整体地输入、输出。【 】 60.比较字符数组字符串大小不能用关系运算符直接操作。【 】 61.数组 char x[]=”12345”;和 char y[]={’1’,’2’,’3’,’4’,’5’};长度相同。【 】 62.对数组 s 进行初始化,可以用 chars[5]=”abcdef”;【 】 63.当两个字符串所包含的字符个数相同时,才能比较两个字符串的大小。【 】 64.字符个数多的字符串比字符个数少的字符串大。【 】 65.在同一个程序中,数组名可以与其他变量名相同。【 】 66.字符串”Cat”小于字符串”Cet”。【 】 67.同一数组中的各个元素数据类型可以不相同。【 】 68.main(){int n=5;int a[n];.}语句定义了数组 a[5]【 】 69.对于字符数组,如果不进行初始化赋值,则必须说明数组长度。【 】 70.对于 c 语言中的数组,必须先定义数组,才能使用数组元素。【 】 71.C 语言提供了#define 命令来实现“文件包含”的操作。【 】 72.数组 int a[4];中的元素分别是 a[1],a[2],a[3],a[4]四个元素。【 】 73.c 语言的编译系统不对数组的下标进行超出范围的越界检查。【 】 74.在 c 语言中,如果给数组中的全部元素赋值,则在定义数组时,可以不给出数组长度。【 】 75.数组初始化时,若初始化列表中的初始化值个数多于数组元素个数,则错误。【 】 76.数组若不进行初始化,则其元素值为随机数。【 】 77.若有定义:int a[3][4];则 a[1+1][0]是对 a 数组元素正确引用。【 】 78.char a[]={0,1,2,3,4,5,6}不是正确的数组定义语句。【 】 79.用数组名作函数实参,传递的是数组的起始地址。【 】 80.C 语言中有字符串变量,与字符数组等价【 】
81.测字符串长度函数str1en是指测字符串的实际长度《包含字符串结束标志”10’)。【】 82.调用函数:strcat(strcpy(str1,str2).str3):可将串strl复制到电str2后再连接到申str3 之后。【】 83.若有定义语句:chars[10]:s=”abcd”rintf(%sn ,s):则输出结果是abcd。【 84.定义一个数组:chararray-”china”:,则数组array所占内存的空间为6个字节。【】 85.程序段ainO{chara[3],b0=”china”:a=b:printf(“%s”,a):}将编译出错。【】 86.若定义数组a:inta[3][4]:则数组a中各元素可在程序的编译阶段得到初值0。【】 87.若定义数组:inta[门[4]={0}:则数组中每个元素均可得到初值0。【】 郑立华李琼飞函数 、判断题 88.预处理命令行都必须以#号开始。【】 89.在程序中凡是以#号开始的语句行都是预处理命令行。【】 91.在程序的 理命令行。【】 92.#definelBM PC是正确的宏定义。【】 93.使用带参的宏时,参数的类型应与宏定义时的一致。【】 94,宏替换不占用运行时间,只占编译时间。【】 95.宏替换只是字符替换。【】 96.宏名必须用大写字母表示。【】 91.当#include后面的文件名用双引号”括起,仅搜索当前目录.【】 98.当#include后面的文件名用尖括号<◇括起,直接按系统设定的标准方式搜索目录。【】 99.C语★理定,空参可以是常量、亦量成麦大式。【】 100,C语言规定,形参可以是常量、变量或表达式。【】 01C语言定,实参可以是任煮类型。【】 102.C语言规定 形参应与其对应的实参类型一致。【】 103.局部变量是静态存储变量。【】 104.return后边的值不能为表达式【】 105.如果函数值的类型与返回值类型不一致,则以函数值类型为准。【】 1O6.如果形参与实参的类型不一致,则以实参类型为准。【】 107.c语言规定 简单变量做实参时 之和对应形参之间的数据传递方式是地址传递。【】 108.C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是单向值传递。【】 109,C语言实参对应形参之间的数据传递方式可由实参传给形参,也可由形参传给实参【】 110.C语言简单变量做实参时,对应形参之间数据传递方式是由用户指定的传递方式【】 111.若调用一个函数,且此函数中没有reum语句,则该函数没有返回值。【】 112.若调用一个函数,且此函数中没有 语句.叫该承新返同芳 个系统默认值【】 13.若调用一个没有return语句的函数,则该函数也能返回 用户所希望的函数值. 114.若调用一个函数,且此函数中没有return语句,则该函数返回 个不确定的值。【】 115.C语言规定,函数返回值的类型由调用该函数时的主调函数类型所决定。【】 116.C语言规定,函数返回值的类型由调用该函数时系统临时决定。【】 117.C语言规定,函数返回值的类型由定义该函数时所指定的函数类型所决定。【】 18.函数调用可以出现在执行语句中。【 119.函数调用可以作为一个函数的实参。【】 120.函数调用可以作为一个函数的形参。【】 121.若使用一维数组名作函数实参,则必须在主调函数中说明此数组的大小。【】 3
3 81.测字符串长度函数 strlen 是指测字符串的实际长度(包含字符串结束标志’\0’)。【 】 82.调用函数:strcat(strcpy(str1,str2),str3);可将串 str1 复制到串 str2 后再连接到串 str3 之后。【 】 83.若有定义语句:chars[10];s=″abcd″;printf(″%s\n″,s);则输出结果是 abcd。【 】 84.定义一个数组:chararray[]=″china″;,则数组 array 所占内存的空间为 6 个字节。【 】 85.程序段 main(){chara[3],b[]=”china”;a=b;printf(“%s”,a);}将编译出错。【 】 86.若定义数组 a:inta[3][4];则数组 a 中各元素可在程序的编译阶段得到初值 0。【 】 87.若定义数组:inta[][4]={0};则数组中每个元素均可得到初值 0。【 】 郑立华李琼飞函数 二、判断题 88.预处理命令行都必须以#号开始。【 】 89.在程序中凡是以#号开始的语句行都是预处理命令行。【 】 90.C 程序在执行过程中对预处理命令行进行处理。【 】 91.在程序的一行上可以出现多个有效的预处理命令行。【 】 92.#defineIBM_PC 是正确的宏定义。【 】 93.使用带参的宏时,参数的类型应与宏定义时的一致。【 】 94.宏替换不占用运行时间,只占编译时间。【 】 95.宏替换只是字符替换。【 】 96.宏名必须用大写字母表示。【 】 97.当#include 后面的文件名用双引号”括起,仅搜索当前目录。【 】 98.当#include 后面的文件名用尖括号<>括起,直接按系统设定的标准方式搜索目录。【 】 99.C 语言规定,实参可以是常量、变量或表达式。【 】 100.C 语言规定,形参可以是常量、变量或表达式。【 】 101.C 语言规定,实参可以是任意类型。【 】 102.C 语言规定,形参应与其对应的实参类型一致。【 】 103.局部变量是静态存储变量。【 】 104.return 后边的值不能为表达式【 】 105.如果函数值的类型与返回值类型不一致,则以函数值类型为准。【 】 106.如果形参与实参的类型不一致,则以实参类型为准。【 】 107.C 语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是地址传递。【 】 108.C 语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是单向值传递。【 】 109.C 语言实参对应形参之间的数据传递方式可由实参传给形参,也可由形参传给实参【 】 110.C 语言简单变量做实参时,对应形参之间数据传递方式是由用户指定的传递方式【 】 111.若调用一个函数,且此函数中没有 return 语句,则该函数没有返回值。【 】 112.若调用一个函数,且此函数中没有 return 语句,则该函数返回若干个系统默认值。【 】 113.若调用一个没有 return 语句的函数,则该函数也能返回一个用户所希望的函数值。【 】 114.若调用一个函数,且此函数中没有 return 语句,则该函数返回一个不确定的值。【 】 115.C 语言规定,函数返回值的类型由调用该函数时的主调函数类型所决定。【 】 116.C 语言规定,函数返回值的类型由调用该函数时系统临时决定。【 】 117.C 语言规定,函数返回值的类型由定义该函数时所指定的函数类型所决定。【 】 118.函数调用可以出现在执行语句中。【 】 119.函数调用可以作为一个函数的实参。【 】 120.函数调用可以作为一个函数的形参。【 】 121.若使用一维数组名作函数实参,则必须在主调函数中说明此数组的大小。【 】
122.若使用一维数组名作函数实参,则实参数组类型与形参数组类型可以不匹配。【】 123.若使用一维数组名作函数实参,则在被调函数中,不需要考虑形参数组的大小。【】 一维数组名作函数实参 则实参数组名与形参数组名必 致。【 个变量,则该变量只在该复合语句中有效。【】 126.如果在一个函数中的复合语句中定义了一个变量,则该变量在该函数中有效。【】 127.如果在函数中的复合语句中定义了一个变量,则该变量在本函数范围内均有效。【】 128.如果在一个函数中的复合语句中定义了一个变量,则该变量为非法变量。【】 129.在不同函数 可以使用相同名字的变量。【】 130.形式参数是局部变量。【】 131.在函数内定义的变量只在本函数范围内有效。【】 132.在函数内的复合语句中定义的变量在本函数范围内有效。【】 133.用户若需要调用标准库函数,调用前必须重新定义。【】 ,若如此,该函数将失去其原有含义。【】 重新定义标准库函数。【 136.建立函数的目的之一是提高程序的执行效率。【】 137.若定义一个只允许本源文件中使用的全局变量,则该变量存储类别是static。,【】 138.以下函数调用语句fun(x,y,z+4)含有实参的个数是4个。【】 139.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为static。【】 140.C语言的预处理功能是指完成宏替换和包含 件 的调用。【 141.C语言的预处理指令只能位于C源程序文件的首部。【】 142.C语言的编译预处理就是对源程序进行初步的语法检查。【】 143.一个C程序可由一个主函数和若干个函数构成。【】 44在定义参时,函新名后面括弧中的弯量名称为“实际参数”(篇称“实:参)【】 145.在定义函数中指定的形参 ,在未调用函数时,并不占内存中的存储单元。【】 146.函数的返回值是通过函数中的return语句获得的。【】 147.C语言的函数定义是可以嵌套定义的,也就是说在函数内还可以定义另一个函数。【】 148.数组名可以作函数的参数,传递的是数组的第一个元素,不是整个数组。【】 149.根据变量作用域的不同。可把变量分为局部变量和全局变量。【】 文件包含”处理是指 个源文件可以将另一个源文件的内容全部包含进来。【】 151.在调用 函数的过程 或间接地调用该函数本身,称为函数的递归调用。【】 152.实参可以是常量、变量或表达式,不一定要求它们有确定的值。【】 153.家定义可分为带参数的宏定义和不带参数的宏定义两类。【】 154.条件绵译是指可根据一定的条件,只对程序中的部分代码进行编译。【】 155.在被定义的函数中 必须定义形参的类型。【】 156.为了明确表示 不带回值 可以用 定义函数“无类型”。【】 157.在定义一个函数时如果不加类型说明,则它的隐含类型是实型。【】 158. 个函数返回值的类型是由调用函数决定的。【】 159.在一个函数中调用另一个函数,另一个函数必须是已经存在的函数。【】 印成 160.若有以下定义和语句:intx=10,*-&x :则两处的p都用来给指针变量赋值。【】 161.若有以下定义和语句:inty=2,pky:则语句py:“把变量y的值赋给指 变章 162.若有以下定义和语句:char s1[10]:则语句s1="C test”:可以给s1正确赋值。【】 163.若有以下定义和语句:char s3[20]=“test“:该语句可以给s3正确赋值。【】 164.若有以下定义和语句:char*s4=“C test\n":该语句可以给s4正确威值。【】
4 122.若使用一维数组名作函数实参,则实参数组类型与形参数组类型可以不匹配。【 】 123.若使用一维数组名作函数实参,则在被调函数中,不需要考虑形参数组的大小。【 】 124.若使用一维数组名作函数实参,则实参数组名与形参数组名必须一致。【 】 125.如果在函数中的复合语句中定义了一个变量,则该变量只在该复合语句中有效。【 】 126.如果在一个函数中的复合语句中定义了一个变量,则该变量在该函数中有效。【 】 127.如果在函数中的复合语句中定义了一个变量,则该变量在本函数范围内均有效。【 】 128.如果在一个函数中的复合语句中定义了一个变量,则该变量为非法变量。【 】 129.在不同函数中可以使用相同名字的变量。【 】 130.形式参数是局部变量。【 】 131.在函数内定义的变量只在本函数范围内有效。【 】 132.在函数内的复合语句中定义的变量在本函数范围内有效。【 】 133.用户若需要调用标准库函数,调用前必须重新定义。【 】 134.用户可以重新定义标准库函数,若如此,该函数将失去其原有含义。【 】 135.系统不允许用户重新定义标准库函数。【 】 136.建立函数的目的之一是提高程序的执行效率。【 】 137.若定义一个只允许本源文件中使用的全局变量,则该变量存储类别是 static。【 】 138.以下函数调用语句 fun(x,y,z+4)含有实参的个数是 4 个。【 】 139.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为 static。【 】 140.C 语言的预处理功能是指完成宏替换和包含文件的调用。【 】 141.C 语言的预处理指令只能位于 C 源程序文件的首部。【 】 142.C 语言的编译预处理就是对源程序进行初步的语法检查。【 】 143.一个 C 程序可由一个主函数和若干个函数构成。【 】 144.在定义参数时,函数名后面括弧中的变量名称为“实际参数”(简称“实参”)【 】 145.在定义函数中指定的形参变量,在未调用函数时,并不占内存中的存储单元。【 】 146.函数的返回值是通过函数中的 return 语句获得的。【 】 147.C 语言的函数定义是可以嵌套定义的,也就是说在函数内还可以定义另一个函数。【 】 148.数组名可以作函数的参数,传递的是数组的第一个元素,不是整个数组。【 】 149.根据变量作用域的不同,可把变量分为局部变量和全局变量。【 】 150.“文件包含”处理是指一个源文件可以将另一个源文件的内容全部包含进来。【 】 151.在调用一个函数的过程中又直接或间接地调用该函数本身,称为函数的递归调用。【 】 152.实参可以是常量、变量或表达式,不一定要求它们有确定的值。【 】 153.宏定义可分为带参数的宏定义和不带参数的宏定义两类。【 】 154.条件编译是指可根据一定的条件,只对程序中的部分代码进行编译。【 】 155.在被定义的函数中,必须定义形参的类型。【 】 156.为了明确表示函数“不带回值”,可以用“void”定义函数“无类型”。【 】 157.在定义一个函数时如果不加类型说明,则它的隐含类型是实型。【 】 158.一个函数返回值的类型是由调用函数决定的。【 】 159.在一个函数中调用另一个函数,另一个函数必须是已经存在的函数。【 】 段冀 160.若有以下定义和语句:int x=10,*p=&x;*p=x;则两处的*p 都用来给指针变量 p 赋值。【 】 161.若有以下定义和语句:int y=2,*p=&y;则语句"*p=y;"把变量 y 的值赋给指针变量 p【 】 162.若有以下定义和语句:char s1[10];则语句 s1="C test";可以给 s1 正确赋值。【 】 163.若有以下定义和语句:char s3[20]="test";该语句可以给 s3 正确赋值。【 】 164.若有以下定义和语句:char *s4="C test\n";该语句可以给 s4 正确赋值。【 】
165.当调用函数时,实参是一个数组名,则向函数传送的是数组的长度【】 166.当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址【】。 167.当调用函数时,实参是一个数组名,则向函数传送的是数组第一个元素的值【】。 168.在C语言中,变量的指针其含义是指该变量的值【】 169.C语言中,y=*p:其含义是将p的值赋给y【】 170.若有定义:f1oaty;int*p:则语句p=&y:是错误的【】 171.C语言中的指针不但能指向整型和实型数据,而且还可以指向字符型数据【】 172.C语言中简单变量必须先定义后使用,指针变量不用定义即可使用【】 173.若有定义:intx[12],*p=x:则p+3指向数组元素x[3]【】 174.若有定义:int *pl,p2;则当pl和p2指向同一变量时关系表达式p1=p2的值为真【】 175.若有定义:int *pl,*p2;则pl+p2无实际意义【】 176.在c语言中函数的参数可以是整型、实型、字符型等简单数据类型,还可以是指针类型【】 177.指针变量只可以是函数的形参,不可以为函数的实参【】 178.c语言中规定,数组名代表数组的首地址,即第0个元素的地址【】 179.若定义了int*pointer[5],则表示定义了一个指向5个元素的一维数组的指针变量【】 l80.若定义了int*pointer[5],则表示定义了五个指针变量【】 181.若有语句:char*s;则语句strcpy(s,"hello");是正确的【】 182.若有语句:char*sl="string2";则语句strcpy("china”,sl):是正确的【】 183.如果有char a[10];则可用语句scanf(“%s”,a);来实现为全部数组元素赋值。【】 184.若有定义it(*p)();则定义p为一个指向函数的指针变量,函数的返回值为整型【】 185.在c语言中函数的返回值只可以是整型、实型、字符型等数据类型,不可以是指针类型【】 l86.在c语言中主函数(main函数)是不能带参数的【】 187.若有定义int*p[3]:则定义p为一个含有3个元素的指针数组【】 188.若有定义int(*p)[3]:则定义p为一个含有3个元素的指针数组【】 189.若有定义it**p;则定义p为一个指向整型指针变量的指针变量【】 190.将p定义为字符数组指针,数组大小为10,则char(*p)[10];是正确的定义【】 191.定义一个返回整型的函数指针p,应写为int(*p)(0:【】 192.有以下语句static int a[门={01,2,3,4},*p:p=&a[2]:则*-p的值是1【】 193.有以下语句static int a[门={0,1,2,3,4,和:p-&a[2]:则*p-的值是1【】 194.有以下语句static int a[门={0,1,2,3,4,*和;p=&a[2]:则*p+的值是2【】 195.有以下语句static int a[门={0,1,2,3,4},和;p=&a[2]:则*+p的值是2【】 196.有以下语句static int a[]={0,1,2,3,4,*和:p=&a[2]:则(*p)+的值是3【】 197.有以下语句static int a[]={0,1,2,3,4},和:p=&a[2]:则+(和)的值是3【】 198.有以下语句static int a[]={0,1,2,3,4,和:p=a:则*(p+1)的值是0【】 199.若有定义:inty,*p=&y:则可以通过指针变量p访问变量y【】
5 165.当调用函数时,实参是一个数组名,则向函数传送的是数组的长度【 】 166.当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址【 】。 167.当调用函数时,实参是一个数组名,则向函数传送的是数组第一个元素的值【 】。 168.在 C 语言中,变量的指针其含义是指该变量的值【 】 169.C 语言中,y=*p;其含义是将 p 的值赋给 y【 】 170.若有定义:float y;int *p;则语句 p=&y;是错误的【 】 171.C 语言中的指针不但能指向整型和实型数据,而且还可以指向字符型数据【 】 172. C 语言中简单变量必须先定义后使用,指针变量不用定义即可使用【 】 173.若有定义:int x[12],*p=x;则 p+3 指向数组元素 x[3]【 】 174.若有定义:int *p1,*p2;则当 p1 和 p2 指向同一变量时关系表达式 p1==p2 的值为真【 】 175.若有定义:int *p1,*p2;则 p1+p2 无实际意义【 】 176.在 c 语言中函数的参数可以是整型、实型、字符型等简单数据类型,还可以是指针类型【 】 177.指针变量只可以是函数的形参,不可以为函数的实参【 】 178.c 语言中规定,数组名代表数组的首地址,即第 0 个元素的地址【 】 179.若定义了 int *pointer[5],则表示定义了一个指向 5 个元素的一维数组的指针变量【 】 180.若定义了 int *pointer[5],则表示定义了五个指针变量【 】 181.若有语句:char *s;则语句 strcpy(s,"hello");是正确的【 】 182.若有语句:char *s1="string2";则语句 strcpy("china",s1);是正确的【 】 183.如果有 char a[10];则可用语句 scanf(“%s”,a);来实现为全部数组元素赋值。【 】 184.若有定义 int (*p)();则定义 p 为一个指向函数的指针变量,函数的返回值为整型【 】 185.在 c 语言中函数的返回值只可以是整型、实型、字符型等数据类型,不可以是指针类型【 】 186.在 c 语言中主函数(main 函数)是不能带参数的【 】 187.若有定义 int *p[3];则定义 p 为一个含有 3 个元素的指针数组【 】 188.若有定义 int (*p)[3];则定义 p 为一个含有 3 个元素的指针数组【 】 189.若有定义 int **p;则定义 p 为一个指向整型指针变量的指针变量【 】 190.将 p 定义为字符数组指针,数组大小为 10,则 char (*p)[10];是正确的定义【 】 191.定义一个返回整型的函数指针 p,应写为 int(*p)();【 】 192.有以下语句 static int a[]={0,1,2,3,4},*p;p=&a[2];则*-p 的值是 1【 】 193.有以下语句 static int a[]={0,1,2,3,4},*p;p=&a[2];则*p-的值是 1【 】 194.有以下语句 static int a[]={0,1,2,3,4},*p;p=&a[2];则*p++的值是 2【 】 195.有以下语句 static int a[]={0,1,2,3,4},*p;p=&a[2];则*++p 的值是 2【 】 196.有以下语句 static int a[]={0,1,2,3,4},*p;p=&a[2];则(*p)++的值是 3【 】 197.有以下语句 static int a[]={0,1,2,3,4},*p;p=&a[2];则++(*p)的值是 3【 】 198.有以下语句 static int a[]={0,1,2,3,4},*p;p=a;则*(p+1)的值是 0【 】 199.若有定义:int y,*p=&y;则可以通过指针变量 p 访问变量 y【 】