C程序设计题库.doc

上传人:wux****ua 文档编号:8853395 上传时间:2020-04-01 格式:DOC 页数:376 大小:432KB
返回 下载 相关 举报
C程序设计题库.doc_第1页
第1页 / 共376页
C程序设计题库.doc_第2页
第2页 / 共376页
C程序设计题库.doc_第3页
第3页 / 共376页
点击查看更多>>
资源描述
二,填空题(10道小题,共20分) 1、一个C源程序中至少应包含一个main 函数。2、a是整型变量,则执行表达式a=25/3%3后a的值为。2 3、int m=5,y=2;则表达式y+=y- =m*=y的值为。-164、执行下列语句: int a=1, b=2; a=a+b; b=a-b; a=a-b; printf(%d , %d n, a,b );的输出结果分别是2,15、条件表达式的格式为表达式1?表达式2:表达式3,若表达式2和表达式3的类型不同,此时条件表达式的值的类型为二者中较高的类型6、当运行以下程序时,从键盘键入right?(代表回车),则下面程序的运行结果是。#includemain( ) char c;while(c=getchar()! =?) putchar(+c)sjhiu?7、C语言中的数组必须先定义,然后使用。8、如果需要从被调用函数返回一个函数值,被调用函数必须包含【return】语句。 9、已知:float f1=3.2,f2,*pf1=&f1;f2=f1,则*f2的值为。3.210、以下程序void fun(char *a, char *b) a=b; (*a)+; main () char c1=A, c2=a, *p1, *p2;p1=&c1; p2=&c2; fun(p1,p2);printf(“&c&cn”,c1,c2);运行后的输出结果是 。&c&c11、字符串常量“123”在内存中的字节数是 。4字节12、已有定义 :int x=3 ;则表达式 :x=x+1.78 的值是 。【4】13、int a=24; printf(%o , a );输出结果是 。【30】14、当a=3,b=2,c=1时,表达式f=abc的值是 。【0】15、下面程序的运行结果是 。【x=1,y=20】 #include main() int i,x,y; i=x=y=0; do +i; if(i%2!=0) x=x+i;i+; y=y+i+; while (i=7); printf(x=%d,y=%dn,x,y);16、以下语句char str10=China; printf(%d,strlen(str)的输出结果是 。517、为了便于区别全局变量和局部变量,通常将全局变量的首字母 。用大写字母表示18、已知:int b=5,*p=&b;并且b的地址为4000,则“printf(%d,%d,p,*p);”的输出结果是 。【4000,5】19、程序main() int a23=1,2,3,4,5,6; int m,*ptr; ptr=&a00; m=(*ptr)*(*(ptr+2)*(*(ptr+4); printf(%dn,m);的运行结果是 。【15】201、引用C语言标准库函数,一般要用【文件包含】 预处理命令将其头文件包含进来。21、在C语言程序中,符号常量的定义要使用【宏定义】 预处理命令。22、逻辑运算符!是自右至左 结合性。23、下面的程序的运行结果是 。【s=254】#includemain( )int a,s,n,count; a=2;s=0;n=1;count=1; while(countb!=c的值是 。【1】32、在C语言程序中,用关键字Error! Reference source not found.定义字符型变量。33若m是一个三位数,则百位数字为Error! Reference source not found.34、执行下列语句:float a; int b; a = b =24.5/5; printf(“%f,%d” , a, b); 输出结果是 【4.000000,4】35、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n+后x的值为Error! Reference source not found.,n的值为Error! Reference source not found.36、若a=6,b=4,c=2,则表达式!(a-b)+c-1&b+c/2的值是 。137、当运行以下程序时,从键盘输入-1 0(表示回车),则下面程序的运行结果是 。m=4,n=2#includemain() int a,b,m,n; m=n=1; scanf(%d%d,&a,&b); do if(a0) m=2*n; b+; elsen=m+n; a+=2; b+; while(a=b); printf(m=%d n=%d,m,n);38、C语言规定了以字符0 作为字符串结束标志。39、如果一函数只允许同一程序文件中的函数调用,则应在该函数定义前加上static 修饰。40、对数组元素的引用方法有下标法和指针法 两种。41、对于“int a4;”可理解为数组a有4个元素,每个元素都是整型数据,那么,对于“int *a4;”的理解就是数组a有4个元素,每个元素都是指针变量 。42、在C语言中,八进制整型常量以【0】 作为前缀。43、已有定义 :int x=0,y=0;, 则计算表达式 :(x+=2,y=x+3/2,y+5) 后 , 表达式的值是 。【8】44、下面程序段的运行结果是 【a=-5】。int i=1,a=0,s=1;doa=a+s*i; s=-s; i+; while (i=10);printf(a=%d,a);45、要使指针变量与变量之间建立联系,可以用运算符* 来定义一个指针变量46、设int a10,*p=a;则对a3的引用可以是p3或 *(p+3)。47、C语言程序是由函数 构成的。48、在C语言程序中,用关键字 【float】定义单精度实型变量。49、若m是一个三位数,则十位数字为 m/10-m/100*10。50、int a=24; printf(%x , a );输出结果是 。1851、设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式 。xz|yz52、下面程序的运行结果是 。x=1,y=20 #include main() int i,x,y; i=x=y=0; do +i; if(i%2!=0) x=x+i;i+; y=y+i+; while (i=7); printf(x=%d,y=%dn,x,y);53、形式参数也是【局部】变量。54、以下程序#include fun(int x, int y, int *cp, int *dp) *cp=x+y;*dp=x-y;main( ) int a,b,c,d;a=30; b=50;fun(a, b, &c, &d); printf(%d,%dn, c, d);return 0;输出结果是 。 【80,-20】 55、程序main() int a23=1,2,3,4,5,6; int m,*ptr; ptr=&a00; m=(*ptr)*(*(ptr+2)*(*(ptr+4); printf(%dn,m);的运行结果是【15】56、运算符%、*=、|、=中,优先级最低的是 。【*=】57、在C语言中,x在内存中占【2】字节。58、设y为int型变量,请写出描述“y是偶数”的表达式 。【y%2=0】59、下面程序段中循环体的执行次数是3次。a=10;b=0;dob+=2;a-=2+b; while (a=0);60、程序的输出值是 。 10#includevoid f(int *p) *p=10; int *p;void main( ) f(p);printf(%d,(*p)+); 61、在C语言的赋值表达式中,赋值号左边必须是变量。62、当a=3,b=2,c=1时,表达式f=abc的值是 。【0】63、以下程序的输出结果是 。 5,2,3#includeint sub(int x, int y, int *z) *z=x-y; main( ) int a,b,c; sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);printf(%d,%d,%dn,a,b,c);return 0;64、下面程序的输出是 。 k=2 a=3 b=2#includemain(int argc, char argv ) char *s=121;int k=0, a=0, b=0;do k+;if(k%2=0) a=a+sk-0;continue;b=b+sk-0;a=a+sk-0;while (sk+1); printf(k=%d a=%d b=%dn,k,a,b);return 0;65、运算符的结合性有2种。66、己有定义 :float f=13.8;, 则表达式 :(int)f% 3 的值是 1。67、判断char型变量ch是否为大写字母的正确表达式是ch=A&ch=Z。68、下面程序段的运行结果是 a=-5 。int i=1,a=0,s=1;doa=a+s*i; s=-s; i+; while (i=10);printf(a=%d,a);69、C语言中的字符数组中的一个元素存放1个字符。70、已知:int a5,*p=a;则p指向数组元素a0,那么p+1指向 a1。71、设有如下定义:int a5=0,1,2,3,4,*p1=&a1,*p2=&a4;则p2-p1的值为 。372、己有定义 :float f=13.8;, 则表达式 :(int)f% 3 的值是 。173、下面程序段的运行结果是 a=-5。int i=1,a=0,s=1;doa=a+s*i; s=-s; i+; while (i=10);printf(a=%d,a);74、已知:int a5,*p=a;则p指向数组元素a0,那么p+1指向a1 。75、引用C语言标准库函数,一般要用 文件包含预处理命令将其头文件包含进来。76、在C语言中,运算符+和的运算量必须是 【变量】。77、逻辑运算符!是【自右至左】结合性。78、下面的程序的运行结果是 。【s=25】#includemain( )int a,s,n,count; a=2;s=0;n=1;count=1; while(count=7) n=n*a; s=s+n; +count; printf(s=%d,s);79、局部变量只在该函数有效。80、设char *s=”ta017bc”; 则指针变量s指向的字符串所占的字节数是 【6】个81、以下程序的输出结果是 。【10】main() int arr =30,25,20,15,10,5, *p=arr; p+; printf(“%dn”,*(p+3); 82、在C语言中,八进制整型常量以【0】 作为前缀。83、表达式3.6/6+1/2+55%10的值是 。【5.6】85、C语言的三种逻辑运算符中优先级最高的为【逻辑非!】 。86、全局变量 可以被本文件中的其他函数所共用。87、以下程序#include fun(int x, int y, int *cp, int *dp) *cp=x+y;*dp=x-y;main( ) int a,b,c,d;a=30; b=50;fun(a, b, &c, &d); printf(%d,%dn, c, d);return 0;输出结果是 。【80,-20】 88、int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为 。【3.5】89、下面程序的运行结果是 。1,-2 y=2;a=1;while(y-!=-1)doa*=y; a+;while(y-);printf(%d,%d,a,y);90、用数组元素作为函数的实参时,与用变量做实参一样,是值传递。91、以下程序的输出结果是 。【5,2,3】 #includeint sub(int x, int y, int *z) *z=x-y; main( ) int a,b,c; sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);printf(%d,%d,%dn,a,b,c);return 0;92、程序main() int a34=1,3,5,7,9,11,13,15,17,19,21,13; int (*ptr)4;int sum=0,i,j; ptr=a; for (i=0;i3;i+) for (j=0;jbc的值是 。【0】95、按序排列的同类型变量的集合称为【数组】96、C语言中按函数在程序中出现的位置来分,函数的调用有函数语句、函数参数和【函数表达式】 三种方式。97、请定义一个指向字符类型数据的指针变量p, 。【char *p ;】98、请定义一个指向指针数据的指针变量p,其基类型是字符型 。char*p100、下面的程序的运行结果是 。s=254#includemain( )int a,s,n,count; a=2;s=0;n=1;count=1; while(count=7) n=n*a; s=s+n; +count; printf(s=%d,s);101、如果被调用函数的实参列表包含多个实参,则各参数间用逗号 隔开。(使用汉字填102、下列程序段的输出结果是 。【1,23 4】 void fun(int *x, int *y) printf(“%d ,%d”, *x, *y); *x=3; *y=4;main() int x=1,y=2;fun(&x,&y);printf(“%d %d”,x, y);103、设int a10,*p=a;则对a3的引用可以是p3或【*(p+3)】 。104、double d1=1.2,d2=2.4;将表达式d1+2*d2强制转换为整型值的语句是 。(int)(d1+2*d2);105、定义一个整型数组a10,则下标最大的数组元素为a9 。106、要使指针变量与变量之间建立联系,用运算符* 来建立指针变量与变量之间的联系。107、下列程序的输出结果是 0。void fun(int *n) while( (*n)-); printf(“%d”,+(*n);main() int a=100; fun(&a); 108、char c=010;则变量c中包含字符的个数为1 。109、int m=5,y=2;则表达式y+=y- =m*=y的值为 。-16110、以下程序#include fun(int x, int y, int *cp, int *dp) *cp=x+y;*dp=x-y;main( ) int a,b,c,d;a=30; b=50;fun(a, b, &c, &d); printf(%d,%dn, c, d);return 0;输出结果是 。 【80,-20】111、若有以下定义和语句:int a4=0,1,2,3, *p; p=&a1; 则+(*p)的值是 【2】112、运算符=的结合性是【自右至左】 。113、若x为整型变量,执行语句x=b-A;后,x的值为33 。115、程序void fun(char *c,int d) *c=*c+1;d=d+1;printf(“%c,%c,”,*c,d);main() char a=A,b=a;fun(&b,a); printf(“%c,%cn”,a,b);运行后的输出结果是 。 b,A,B,b 116、设main函数的说明为:main(int argc, char *argv), 且有命令行为:FILE1 1 2 3(代表回车),则argc的值是 。4117、x是整型变量,表达式:(x=8,x%=x+5)的值是 。8118、执行下列语句: int a=1, b=2; a=a+b; b=a-b; a=a-b; printf(%d , %d n, a,b );的输出结果分别是 。2,1119、条件“2x3或x2&x3|x-10。120、设有如下定义:int a5=0,2,4,6,8,*p1=&a1,*p2=&a4;则*p2-*p1的值为 。 【6】121、x是整型变量,表达式:(x=8,x%=x+5)的值是 。【8】122、下面程序的运行结果是 。【x=1,y=20】 #include main() int i,x,y; i=x=y=0; do +i; if(i%2!=0) x=x+i;i+; y=y+i+; while (i=7); printf(x=%d,y=%dn,x,y);123、请定义一个指向字符类型数据的指针变量p, 。char*p;10、已知:int a5,*p=a;若“ printf(%d,p);”的输出结果是200,那么:“ printf(%d,p+1);”的输出结果是 。204124、把 al 、 a2 定义为长整型变量的定义语句是 。long a1,a2;125、若已有定义语句:int k=7;,赋值表达式:k+=k%=k-3的值是 。6126、逻辑运算符!是从右至左 结合性。127、以下程序的输出结果是 。 【efgh】 main() char *p=abcdefgh,*r; long *q; q=(long*)p; q+; r=(char*)q; printf(%sn,r);128、程序# include void prtv(int *x) printf(%dn,+*x); main() int a=25; prtv(&a); 的运行结果为 26129、a是整型变量,则执行表达式a=25/3%3后a的值为。2130、用来存放字符数据的数组称为字符数组。131、【全局变量】可以被本文件中的其他函数所共用。132、程序main() int var, *p; var=100; p=&var; var=*p+10; printf(%d,var); 的运行结果为。【110】133、若有定义:int a23=2,4,6,8,10,12;则*(&a00+2*2+1)的值是【12】134、访问变量的方式有直接访问和【间接访问】 。135、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是【整形】 。136、已知:int a23=1,2,3,4,5,6,*p=&a00;则*(p+1)的值为 。【4】137、有如下程序main() char ch25=“6937”,”8254”,*p2;int i,j,s=0;for(i=0;i2;i+) pi=chi;for(i=0;i0;j+=2)s=10*s+pij-0;printf(“%dn”,s);该程序的输出结果是 。【6385】138、引用C语言标准库函数,一般要用【文件包含】 预处理命令将其头文件包含进来。139、若m是一个三位数,则个位数字为 。【m%10】140、下面程序段的运行结果是 。a=-5int i=1,a=0,s=1;doa=a+s*i; s=-s; i+; while (i=10);printf(a=%d,a);141、若有以下定义和语句:int a4=1,2,3,4,*p; p=&a2; 则*- - p的值是 2142、若有定义:double x35;则x数组中列下标的上限为 。4143、当被调用函数的定义出现在主调函数的前面,可以不加以声明。144、以下程序运行后的输出结果是 。【9876 876】 main() char s =“9876”,*p;for ( p=s ; ps+2 ; p+) printf(“%s ”, p);145、程序main() int a23=1,2,3,4,5,6; int m,*ptr; ptr=&a00; m=(*ptr)*(*(ptr+2)*(*(ptr+4); printf(%dn,m);的运行结果是 。【15】146、下面程序的运行结果是 。 #include main() int i,x,y; i=x=y=0; do +i; if(i%2!=0) x=x+i;i+; y=y+i+; while (i=7); printf(x=%d,y=%dn,x,y);147、C程序的执行从【main】 函数开始,调用其他函数后流程返回该函数,并在该函数中结束整个程序的运行。148、下列程序的运行结果是 。3 6 void fun(int *a, int *b) int *k;k=a; a=b; b=k;main() int a=3, b=6, *x=&a, *y=&b;fun(x,y);printf(“%d %d”, a, b); 149、下面程序的运行结果是 。1,-2 y=2;a=1;while(y-!=-1)doa*=y; a+;while(y-);printf(%d,%d,a,y);150、程序main() int a34=1,3,5,7,9,11,13,15,17,19,21,13; int (*ptr)4;int sum=0,i,j; ptr=a; for (i=0;i3;i+) for (j=0;j2;j+) sum+=*(*(ptr+i)+j); printf(%dn,sum);的运行结果是 。60151、如果在所有函数定义之前,在函数的【前面】已作了函数声明,则在各个主调函数中不必对所调用的函数再做声明。152、以下程序的输出结果是 【7】 #include #include main() char b18=abcdefg,b28,*pb=b1+3;while (-pb=b1) strcpy(b2,pb);printf(%dn,strlen(b2);153、程序# include void prtv(int *x) printf(%dn,+*x); main() int a=25; prtv(&a); 的运行结果为 。【26】154、在C语言中的标识符只能由3种字符组成,它们是。【字母、数字、下划线 】155、下面程序段的运行结果是。【a=-5】int i=1,a=0,s=1;doa=a+s*i; s=-s; i+; while (i=10);printf(a=%d,a);156、形式参数也是局部变量。157、要使指针变量与变量之间建立联系,可以用运算符【*】来定义一个指针变量。158、对于“int a4;”可理解为数组a有4个元素,每个元素都是整型数据,那么,对于“int *a4;”的理解就是数组a有4个元素,每个元素都是【指针变量】。159、int x=12, n=5;则执行表达式x%=(n%=2)后x的值为 。【0】160、下面的程序的运行结果是 。【254】#includemain( )int a,s,n,count; a=2;s=0;n=1;count=1; while(count=7) n=n*a; s=s+n; +count; printf(s=%d,s);161、执行下列语句:float a; int b; b=a=24.5/5; printf(“%f,%d” , a, b); 输出结果是 。【4.900000,4】162、在C语言中,二维数组元素的内存中的存放顺序是【按行存放】 163、在C程序中,指针变量能够赋【变量的地址】值或空值164、已有定义 :double x=3.5;, 则表达式 :x=(int)x+1 的值是 。4.0165、局部变量只在【该函数中】有效。166、若有以下定义和语句:int a4=0,1,2,3, *p; p=&a1; 则+(*p)的值是2 167、已知:int a=10,*p=&a;则“printf(%d,%dn,a,*p);”的输出结果是 。10,10168、在C语言程序中,符号常量的定义要使用 宏定义预处理命令。169、若a=6,b=4,c=2,则表达式!(a-b)+c-1&b+c/2的值是 。【1】170、下面程序段的运行结果是 。【231】for(a=1,i=-1;i1;i+)a+; printf(%d,a);printf(%d,i);171、用来存放【 字符数据】的数组称为字符数组。172、C语言中每个变量和函数有两个属性:数据类型和数据的【存储】 类别。173、已知:下面程序段中第一个printf语句的输出是200,则第二个printf语句的输出是 。【200】int a34,*p=*a;printf(%d,a);printf(%d,p);174、下面程序void ss(char *s,char t) while(*s) if(*s=t) *s=t-a+A;s+;main() char str1100=“abcddfefdbd”,c=d;ss(str1,c); printf(“%sn”,str1);运行后的输出结果是 。【abcDDfefDbD】 175、若有定义:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为 。5.5176、如果一函数直接或间接地调用自身,这样的调用称为递归调用 。177、以下程序的输出结果是 。7 main() int x=0;sub(&x,8,1);printf(%dn,x);sub(int *a,int n,int k) if(k=n) sub(a,n/2,2*k);*a+=k; 178、int s=6;则表达式s%2+(s+1)%2的值为 。1179、int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为 。180、以下程序的输出结果是 9#include #include fut (int *s, int p23) *s=p11;int main(int argc, char argv) int a23=1,3,5,7,9,11,*p;p=(int*)malloc(sizeof(int);fut(&p,a);printf(%dn,*p);return 0;181、在C语言中,十六进制整型常量以0x 作为前缀。182、函数内部可以在复合语句中定义变量,这些变量在该复合语句中 的范围内有效。183、对数组元素的引用方法有下标法和 【指针法】两种。三、判断题(10道小题,共10分) 1、C 语言具有简洁明了的特点。(1分) 正确 2、预处理命令的前面必须加一个“#”号。(1分) 正确 3、标准格式输入函数scanf()可以从键盘上接收不同数据类型的数据项。(1分) 正确 4、在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用括起来组成一个复合语句。(1分) 正确5、continue 不是结束本次循环,而是终止整个循环的执行。(1分) 错误 6、在对数组全部元素赋初值时,不可以省略行数,但能省略列数(1分) 错误 7、.函数的实参传递到形参有两种方式值传递和地址传递(1分) 正确 8、直接访问就是直接利用变量的地址进行存取直接访问(1分) 正确 9、共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员。(1分) 正确 10、文件指针和位置指针都是随着文件的读写操作在不断改变。(1分) 错误 11、C 语言标准格式输入函数 scanf() 的参数表中要使用变量的地址值。(1分) 正确 12、浮点型常量的指数表示中 ,e 是可以省略的。 (1分)错误13、任何表达式语句都是表达式加分号组成的。(1分) 正确 14、在switch语句中,每一个的case常量表达式的值可以相同。(1分) 错误15、do-while循环的while后的分号可以省略。(1分)错误16、用字符串方式赋值比用字符逐个赋值要多占一个字节, 用于存放字符串结束标志0。 正确 17、C语言函数返回类型的默认定义类型是void(1分) 错误18、可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数(1分)正确19、枚举类型中的元素都具有一个整型值。(1分) 正确 20、C 语言是一种具有某些低级语言特征的高级语言。(1分) 正确21、case语句后如没有break,顺序向下执行。(1分)正确22、do-while循环至少要执行一次循环语句。(1分) 正确 23、数组名能与其它变量名相同。数组名后是用方括号括起来的常量表达式,不能用圆括号。(1分) 正确 24、函数形参的存储单元是动态分配的(1分) 正确 25、int (*p)4它表示p是一个指针数组,它包含4个指针变量元素(1分)错误26、结构体变量可以作数组元素。(1分) 正确27、随机操作只适用于文本文件。(1分)错误28、表达式语句和表达式没有什么区别。(1分) 错误29、条件运算符?和:是一对运算符,不能分开单独使用。(1分) 正确30、函数strcmp从头至尾顺序地将其对应字符比较,遇到两个字符不等时,两个字符相减得到一个int型值,两个字符串完全相同时,则返回0。(1分) 正确31、函数的实参可以是常量,变量或表达式(1分) 正确32、如果指针变量p已指向数组中的一个元素,则p+1指向同一数组中的下一个元素(1分) 正确33、文件指针用于指向文件,文件只有被打开后才有对应的文件指针。(1分) 正确34、C 语言标准输入操作中 ,gets() 函数一次只可读取一个字符。 (1分) 错误35、在C语言中,逗号既可以作为运算符,也可以作为分隔符。(1分) 正确36、C语言的书写格式不会影响程序的可读性。(1分) 错误37、条件表达式不能取代一般if的语句。(1分) 错误38、break 则是结束整个循环过程,不再判断执行循环的条件是否成立。(1分) 正确39、C语言允许用字符串的方式对数组作初始化赋值。(1分) 正确40、如果函数定义出现在函数调用之前,可以不必加函数原型声明(1分) 正确41、可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数(1分) 正确42、C 语言程序中可以有多个函数 , 但只能有一个主函数。(1分) 正确 43、变量的两个值 : 本身值和地址值都是可以改变的。 (1分) 错误44、if(a=5) 是允许的。(1分) 正确45、C语言的三种循环不可以互相嵌套。(1分) 错误46、在对数组全部元素赋初值时,可以省略行数,但不能省略列数(1分) 正确47、函数名代表该函数的入口地址。因此,可用函数名给指向函数的指针变量赋值(1分) 正确48、指向结构体变量的指针可以作函数参数,实现传址调用。(1分) 正确49、输入操作称为写操作,将输入流中的信息存到内存时,使用写函数。(1分) 错误50、增1减1运算符的前缀运算和后缀运算的表达式值是相同的。(1分) 错误51、在C语言中能逐个地使用下标变量,也能一次引用整个数组。(1分) 错误52、函数返回值的类型是由在定义函数时所指定的函数类型(1分) 正确53、结构体成员的类型必须是基本数据类型。(1分) 错误54、随机操作只适用于二进制文件。(1分)错误55、逻辑表达式的值只能为1或0。(1分)正确56、表达式语句和表达式没有什么区别。(1分) 错误57、continue 只能用于循环体中。(1分) 正确58、凡在函数中未指定存储类别的局部变量,其默认的存储类别为static(1分)错误59、一个变量的地址称为该变量的指针(1分) 正确60、变量被定义后 , 它不仅有一个确定的地址值 , 而且还会有一个确定的本身值。 (1分) 错误61、一个数组是由连续的一块内存单元组成的,指针变量就是这块连续内存单元的首地址错误62、结构体数组中可以包含不同结构体类型的结构体变量。(1分) 错误63、以“r”方式打开一个文件时,文件指针指向文件首。(1分) 正确64、C 语言程序实现与其他高级语言一样也要经过编辑、编译连接和运行这样的三步曲。 (1分) 正确65、变量被定义后 , 它的作用域和寿命就被确定了 , 并且不可改变。 (1分) 正确。66、break 可用于循环体中,不可用于switch语句中。(1分) 错误67、使用static k定义的变量属于静态变量(1分) 正确68、指针变量,只能作为函数的形参,不可以作函数的实参(1分) 正确69、文件指针用于指向文件,文件只有被打开后才有对应的文件指针。(1分) 正确70、C 语言是一种非结构化程序设计语言。(1分)错误71、在 C 语言程序中 , 凡是没有出现存储类说明符的变量都是自动类的。 (1分) 正确72、在switch语句中,多个case可以共用一组执行语句。(1分) 正确73、do-while语句先执行循环中的语句,然后再判断表达式是否为真, 如果为真则继续循环;如果为假, 则终止循环。(1分) 正确74、结构体成员必须是不同数据类型的变量。(1分)错误75、输入操作称为写操作,将输入流中的信息存到内存时,使用写函数。(1分) 错误76、下划线是标识符中的合法字符。 (1分) 正确77、表达式语句和表达式没有什么区别。(1分) 错误78、数组元素通常也称为下标变量。必须先定义数组, 才能使用下标变量。(1分) 正确79、函数的形参可以是常量,变量或表达式(1分) 正确80、指针变量可以存放指针(地址)、数值和字符(1分) 错误81、fseek函数一般用于文本文件。(1分) 错误82、C 语言程序只能有一个文件。 (1分) 错误83、在同一个作用域中不可定义同名变量 , 在不同的作用域中可以定义同名变量。(1分) 正确84、数组名能与其它变量名相同。数组名后是用方括号括起来的常量表达式,不能用圆括号。 正确85、.函数的实参传递到形参有两种方式值传递和地址传递(1分)正确86、内存中的每个存储单元都有一个惟一的地址(1分) 正确 87、枚举类型中的元素都具有一个整型值。(1分) 正确88、文件是否打开是可以判断的。(1分) 正确89、C 语言的应用比较广泛 , 不仅可用来编写应用软件 , 而且可用来编写系统软件。 (1分) 正确90、C 语言程序中 , 出现非法字符时会发出错误信息。(1分) 正确 91、C语言的书写格式不会影响程序的可读性。(1分) 错误92、在多层循环中, 一个break语句只向外跳一层。(1分) 正确93、局部变量如果没有指定初值,则其初值不确定(1分) 正确94、指针数组的每个元素都是一个指针变量(1分) 正确 95、以“a”方式打开一个文件时,文件指针指向文件首。(1分)错误96、共用体变量不可以进行初始化。(1分)错误97、文件的读函数是从输入文件中读取信息,并存放在内存中。(1分) 正确98、C 语言程序在书写上只能是一条语句写一行。(1分) 错误99、寄存器类变量的作用域和寿命与自动类变量的相同。 (1分) 正确100、在一个函数内部调用另一个函数的调用方式称为嵌套调用(1分) 正确101、内存单元的地址与内存单元中的数据是两个完全相同的概念(1分) 错误102、结构体类型本身不占用内存空间,结构体变量占用内存空间。(1分) 正确103、C 语言中 , 字符串常量存放在字符数组中要有一个结束符 , 该结束符是0 。(1分) 错误104、char *s=C Language;表示s是一个指向字符串的指针变量,把字符串的首地址赋予s(1分) 正确105、结构体成员的类型必须是基本数据类型。(1分)错误106、分号是 C 语言中语句的结束符 , 不可用作分隔符。 (1分)错误107、double 型变量在内存中占的字节数比 int 型变量在内存中占的字节数多。(1分) 正确108、循环体如包括有一个以上的语句,则必须用括起来,组成复合语句。(1分) 正确 109、C 语言标准输出操作中 ,putchar() 函数可以输出显示一个字符串。 (1分)错误110、函数形参的存储单元是动态分配的(1分) 正确111、结构体名在定义结构体时不可省略。(1分)错误112、变量的类型通常指存储类和数据类型两种。 (1分) 正确113、局部变量如果没有指定初值,则其初值为0(1分)错误114、在C语言中,逗号既可以作为运算符,也可以作为分隔符。(1分) 正确115、C语言的三种循环不可以互相嵌套。(1分)错误116、有指针变量p和数组a,指针变量和数组都可以实现本身的值的改变,如p+和a+错误117、fseek函数一般用于文本文件。(1分)错误118、不允许把一个数值或字符赋予指针变量(1分) 正确 119、变量的两个值 : 本身值和地址值都是可以改变的。 (1分) 错误120、两指针变量相减所得之差是两个指针所指数组元素之间相差的元素个数(1分) 正确121、枚举类型中的元素都具有一个整型值。(1分) 正确121、C 语言规定 : 定义符号常量时必须用大写字母。 (1分) 错误122、for循环的三个表达式可以任意省略,while,do-while也是如此。(1分) 错误123、函数的实参可以是常量,变量或表达式(1分) 正确124、指针变量和它指向的变量之间的关系,可以用指针运算符“*”表示(1分) 正确125、C 语言标准格式输出函数 printf() 的参数表是由若干个表达式组成。 (1分) 正确126、fseek函数一般用于二进制文件。(1分) 正确127、一个变量的数据类型被强制转换后,它将保持被强制转换后的数据类型。(1分)错误128、C 语言标准输入操作中 ,gets() 函数一次只可读取一个字符。 (1分) 错误129、结构体变量可以作数组元素。(1分) 正确130、内部静态类变量的作用域和寿命与自动类变量的相同。 (1分)错误131、字符串在内存中的起始地址称为字符串的指针,可以定义一个字符指针变量指向一个字符串(1分) 正确一、单项选择题(25道小题,共50分)1、C语言规定,在一个源程序中,main函数的位置(B) (2分) A、必须在最开始 B、 必须在系统调用的库函数的后面 C、 可以任意 D、 必须在最后2、以下叙述中正确的是 (C)(2分) A、用C语言实现的算法必须要有输入和输出操作 B、用C语言实现的算法可以没有输出但必须要有输入 C、用C程序实现的算法可以没有输入但必须要有输出 D、用C程序实现的算法可以既没有输入也没有输出3、以下叙述不正确的是(D)(2分) A、在C程序中,逗号运算符的优先级最低 B、在C程序中,APH和aph是两个不同的变量 C、若a和b类型相同,在执行了赋值表达式a=b后b的值将放入a中,而b的值不变 D、当从键盘输入数据时,对于整型变量只能输入整型数值,对于
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!