欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    C语言考试问题及答案.docx

    • 资源ID:5542393       资源大小:24.02KB        全文页数:25页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言考试问题及答案.docx

    1、C语言考试问题及答案一、单项选择题:(1)以下叙述中错误的是A)C语言中对二进制文件的访问速度比文本文件快B)C语言中,随机文件以二进制代码形式存储数据C)语句 FILE fp; 定义了一个名为fp的文件指针D)C语言中的文本文件以ASCII码形式存储数据(2)以下与函数fseek(fp,0L,SEEK_SET)有相同作用的是 A)feof(fp)B)ftell(fp)C)fgetc(fp)D)rewind(fp)(3) 若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为A) 0 B) 1 C) 1 D) 一个非0值(4) 下列关于C语言数据文件的叙述中正确的是

    2、A) 文件由ASCII码字符序列组成,C语言只能读写文本文件B) 文件由二进制数据序列组成,C语言只能读写二进制文件C) 文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件D) 文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件(5) 以下叙述中不正确的是A)语言中的文本文件以ASC码形式存储数据B)语言中对二进制文件的访问速度比文本文件快C)语言中,随机读写方式不适用于文本文件D)语言中,顺序读写方式不适用于二进制文件(6) 以下程序企图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。#include ma

    3、in() FILE *fout; char ch; fout=fopen(abc.txt,w);ch=fgetc(stdin);while(ch!=#) fputc(ch,fout); ch=fgetc(stdin); fclose(fout); 出错的原因是A) 函数fopen调用形式错误 B) 输入文件没有关闭C) 函数fgetc调用形式错误 D) 文件指针stdin没有定义(7) 以下叙述中错误的是A) 二进制文件打开后可以先读文件的末尾,而顺序文件不可以B) 在程序结束时,应当用fclose函数关闭已打开的文件C) 在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元

    4、素读入数据D) 不可以用FILE定义指向二进制文件的文件指针(8) 在C程序中,可把整型数以二进制形式存放到文件中的函数是A) fprintf函数 B) fread函数 C) fwrite函数 D) fputc函数(9) 标准函数 fgets(s, n, f) 的功能是A) 从文件f中读取长度为n的字符串存入指针s所指的内存B) 从文件f中读取长度不超过n-1的字符串存入指针s所指的内存C) 从文件f中读取n个字符串存入指针s所指的内存D) 从文件f中读取长度为n-1的字符串存入指针s所指的内存(10)以下程序的功能是进行位运算 main() unsigned char a, b; a=73;

    5、 b= 4 & 3; printf(%d %dn,a,b); 程序运行后的输出结果是A)4 3 B)7 3 C)7 0 D)4 0(11)有以下程序main() int c=35; printf(%dn,c&c);程序运行后的输出结果是 A) 0B) 70C) 35D) 1(12) 设有定义语句:char c1=92,c2=92;,则以下表达式中值为零的是A) c1c2 B) c1&c2 C) c2 D) c1|c2(13) 有以下程序main( ) unsigned char a,b; a=4|3; b=4&3; printf(“%d %dn”,a,b(;执行后输出结果是A) 7 0 B)

    6、0 7 C) 1 1 D) 43 0(14) 有以下程序main() int x=3, y=2,z=1;printf(%dn,x/y&z);程序运行后的输出结果是A) 3 B) 2 C) 1 D) 0(15) 整型变量x和y的值相等、且为非0值,则以下选项中,结果为零的表达式是A) x | y B) x | y C) x & y D) x y(16) 设 int b=2;表达式(b2)/(b1)的值是A) 0 B) 2 C) 4 D) 8(17) 设有如下定义:int x=l,y=-1;,则语句:printf(%dn,(x-&+y);的输出结果是A) 1 B) 0 C) -1 D) 2(18)

    7、 语句:printf(%d n,12 &012);的输出结果是A) 12 B) 8 C) 6 D) 012(19) 在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则A) 称为函数的直接递归调用 B) 称为函数的间接递归调用C) 称为函数的循环调用 D) C语言中不允许这样的递归调用(20) 不合法的main函数命令行参数表示形式是A) main(int a,char *c) B) main(int arc,char *arv)C) main(int argc,char *argv) D) main(int argv,char *argc)二、多项选择

    8、题:(1) C语言规定,程序中各函数之间错误的描述为A) 既允许直接递归调用也允许间接递归调用B) 不允许直接递归调用也不允许间接递归调用C) 允许直接递归调用不允许间接递归调用D) 不允许直接递归调用允许间接递归调用(2)以下关于函数的叙述中错误的是A)每个函数都可以被其它函数调用(包括main函数)B)每个函数都可以被单独编译C)每个函数都可以单独运行D)在一个函数内部可以定义另一个函数(3) 若程序中定义了以下函数 double myadd(double a,double B) return (a+B) ;并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中正确的说明是A

    9、) double myadd(double a,B) ; B) double myadd(double,double);C) double myadd(double b,double A) ;D) double myadd(double x,double y); (4) 若已定义的函数有返回值,则以关于该函数调用的叙述中正确的是A) 调用可以作为独立的语句存在 B) 调用可以作为一个函数的实参C) 调用可以出现在表达式中 D) 调用可以作为一个函数的形参(5) 有以下函数定义:void fun( int n, double x) 若以下选项中的变量都已正确定义并赋值,则对函数fun的错误调用语

    10、句是A) fun(int y,double m); B) k=fun(10,12.5);C) fun(x,n); D) vold fun(n,x); (6) 在一个C程序中错误的描述A) main函数必须出现在所有函数之前 B) main函数可以在任何地方出现C) main函数必须出现在所有函数之后 D) main函数必须出现在固定位置(7) C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型不是A) void B) int C) float D) double (8) 若有以下程序#include void f(int n);main() void f(int n); f(5);voi

    11、d f(int n) printf(%dn,n); 则以下叙述中正确的是A) 若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数fB) 若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数fC) 对于以上程序,编译时系统会提示出错信息:提示对对f函数重复说明D) 函数f无返回值,所以可用void将其类型定义为无值型(9) 以下所列的各函数首部中,错误的是A) void play(var :Integer,var b:Integer)B) void play(int a,b)C) void play(int a,int b)D) Sub play(a as in

    12、teger,b as integer)(10) 以下叙述中正确的是A) 在不同的函数中可以使用相同名字的变量B) 函数中的形式参数是局部变量C) 在一个函数内定义的变量只在本函数范围内有效D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(11) 以下说法中不正确的是A) C语言程序总是从第一个的函数开始执行B) 在C语言程序中,要调用的函数必须在main()函数中定义C) C语言程序总是从main()函数开始执行D) C语言程序中的main()函数必须放在程序的开始部分(12) 在C语言中,不合法的长整型常数是 A) 0L B) 4962710 C) 0.054838743 D) 2

    13、.1869e10 (13) 在下列选项中,正确的赋值语句是 A) +t; B) n1=(n2=(n3=0); C) k=i=j; D) a=b+c=1; (14) 可以把字符串:Hello!赋给数组b的语句是 A) char b10=H,e,l,l,o,!; B) char b10;b=Hello!; C) char b10;strcpy(b,Hello!); D) char b10=Hello!; (15) 若程序中有下面的说明和定义 struct abc int x;char y; struct abc s1,s2; 则不会发生的情况是 A) 编译进错 B) 程序将顺利编译连接执行 C)

    14、能顺利通过编译连接但不能执行 D) 能顺利通过编译但连接出错(16) 不能正确表示a10或a0的关系表达式是 A)a=10 or a=10a=10a=10 a=0 (17) 若有以下程序段,w和k都是整型变量: w=k; LB: if(w=0) go to LE; w-; printf(*); goto LB; LE: 则可以与上面程序段等价的循环语句是 A)for(w=k;w!=0;w-) printf(*); B)for(w=k;w;-w)printf(*); C)w=k; D)w=k; while(w-!=0)printf(*);w+; do w-;printf(*);while(w!=

    15、0); (18) 若有说明,double *p,a;则能通过scanf语句不能正确给输入项读入数据的程序段是 A)*p=&a; scanf(%lf,p); B)p=(double *)malloc(8);scanf(%f,p); C) p=&a;scanf(%lf,a); D)p=&a; scanf(%le,p); (19) 若有以下的说明和语句: main() int t32, *pt3,k; fpr(k=o; k3;k+)ptk=tk; 则以一选项中能不能正确表示t数组元素地址的表达式是 A) &t32 B) *pt0 C) *(pt+1) D) &pt2 (20) 要求函数的功能是在一维

    16、数组中查找值;若找到则返回所在的下标值,否则返回0;数列放在到中。可以正确执行的函数是 A)funa(int *a,int n,int x ) B)funb(int *a,int n,int x) *a=x; int k; while(an!=x)n-; for(k=1;k=10 or a=10a=10a=10 a=0 (29) 若有说明,double *p,a;不能通过scanf语句正确给输入项读入数据的程序段是A)*p=&a; scanf(%lf,p); B)p=(double *)malloc(8);scanf(%f,p);C) p=&a;scanf(%lf,a); D)p=&a; sc

    17、anf(%le,p);(30) 当执行下面程序且输入:ABC时,输出的结果不正确的是#include#includemain() char ss10=12345;gets(ss);printf(%sn,ss); A) ABC B) ABC9 C) 123456ABC D) ABC456789(31) 若有以下的说明和语句:main()int t32, *pt3,k;fpr(k=o; k3;k+)ptk=tk;则以一选项中不能正确表示t数组元素地址的表达式是A) &t32 B) *pt0 C) *(pt+1) D) &pt2(32) 下面程序输出数组中的最大值,由s指针指向该元素.main()

    18、int a10=6,7,2,9,1,10,5,8,4,3,*p,*s;flr(p=a, s=a; p-as B) *p*s C) apas D) p-ap-s(33) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b);在此函数调用语句中实参的个数错误的是A)3 B)4 C)5 D)6 (34) 下面程序的输出不正确的是int w=3;main() int w=10; printf(%dn,fun(5)*w); fun(int k) if(k=0) return w;return(fun(k-1)*k); A)360 B)3600 C)1080 D)1200(3

    19、5) 要求函数的功能是在一维数组中查找值;若找到则返回所在的下标值,否则返回0;数列放在到中。可以正确执行的函数是A)funa(int *a,int n,int x ) B)funb(int *a,int n,int x) *a=x; int k;while(an!=x)n-; for(k=1;k=n;k+)return n; if(ak=x)return k; return 0; C)func(int a,int n,int x ) D) fund(int a,int n,int x ) int *k; int k=0;a0=x;k=a+n; dowhile(*k!=x) k-; k+;re

    20、turn k-n; while(kb)&(n=cd)运算后,n的值不正确的为 A) 0 B) 1C)2D) 3 (41) t为int类型,进人下面的循环之前,t的值为0 while( t=l ) 则以下叙述中不正确的是 A) 循环控制表达式的值为0B) 循环控制表达式的值为1 C) 循环控制表达式不合法D) 以上说法都不对 (42) 以下各选项企图说明一种新的类型名,其中不正确的是 A) typedef v1 int; B) typedef v2=int; C) typedefv1 int v3; D) typedef v4: int; (43) 在调用函数时,如果实参是简单变量,它与对应形参

    21、之间的数据传递方式不正确的是 A) 地址传递 B) 单向值传递 C) 由实参传给形参,再由形参传回实参 D) 传递方式由用户指定 (44) 以下函数值的类型不正确的是 fun ( float x ) float y; y= 3*x-4; return y; A) int B) 不确定 C) void D) float (45) 以下程序的输出结果不正确的是 main() char c=z; printf(“%c”,c-25); A) a B) Z C) z-25 D) y (46) 以下选项中,正确的的字符常量是 A) t B) 17 C)“n” D) xaa (47) 若有说明:int i, j=2,*p=&i;,不能完成i=j赋值功能的语句是 A) i=*p; B) p*=*&j; C) i=&j; D) i=*p; (48) 以下定义语句中,正确的是 A) int a=1,2; B) char *a3; C) char s10=”test”; D) int n=5,an; (49) 以下程序的输出结果错误的是 main() int i, a10; for(i=


    注意事项

    本文(C语言考试问题及答案.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开