c语言程序设计试题与答案

上传人:第*** 文档编号:33919442 上传时间:2018-02-19 格式:DOC 页数:37 大小:210KB
返回 下载 相关 举报
c语言程序设计试题与答案_第1页
第1页 / 共37页
c语言程序设计试题与答案_第2页
第2页 / 共37页
c语言程序设计试题与答案_第3页
第3页 / 共37页
c语言程序设计试题与答案_第4页
第4页 / 共37页
c语言程序设计试题与答案_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《c语言程序设计试题与答案》由会员分享,可在线阅读,更多相关《c语言程序设计试题与答案(37页珍藏版)》请在金锄头文库上搜索。

1、C 语言程序设计 ( 卷)考核班级学生数 印数 考核方式 闭卷 考核时间 120 分钟(本试卷包括第一卷与第二卷,答卷时间总共 120 分钟)第一卷第一部分:基础知识(20 项,共 40 分)1一个 C 语言程序是由( ) 组成的。A主程序 B子程序 C函数 D过程2转换说明符%x 的输出形式是( ) 。A十进制 B八进制 C十六进制 D二进制3若 a、b 均为 int 型变量,且 a=100,则关于循环语句 for(b=100;a!=b;+a,+b)printf ( “ -“) ;的正确说法是( ) 。A循环体只执行一次 B死循环C循环体一次也不执行 D输出-4若 x、y、z 均为 int

2、型变量,则执行下列语句后的 z 值为 ( ) 。x=1; y=2; z=3; z=(xy)?z :y ; z = (z=1;n-),下列语句实现将 S2 所指字符数组中前 n 个字符复制到 S1 所指字符数组中,其中代码不正确的是( ) 。A*S1+=*S2+ BS1n-1=S2n-1C*(S1+n-1)=*(S2+n-1) D*(+S1)=*(+S2 )17调用函数的实参与被调用函数的形参应该有如下关系( ) 。A只要求实参与形参个数相等 B只要求形参与实参顺序相同C只要求实参与形参数据类型相同 D上述三点均需具备18联合体成员的数据类型 ( ) 。A相同 B可以不同也可以相同 C长度一样

3、D是结构体变量19由系统分配与控制的标准输出文件为( ) 。A键盘 B磁盘 C打印机 D显示器20C 语言标准库函数 fread(fd,buffer,n)的功能是( ) 。A从文件 fd 中读取长度不超过 n 个字节的数据送入 buffer 指向的内存区域B从文件 fd 中读取长度不超过 n-1 个字节的数据送入 buffer 指向的内存区域C从文件 fd 中读取长度不超过 n 个字符送入 buffer 指向的内存区域D从文件 fd 中读取长度不超过 n-1 个字符送入 buffer 指向的内存区域第二部分:简单程序(12 项,共 30 分)21下列程序main() int x,y,z;x=y

4、=2;z=3;y=z+-1;printf(“%dt%dt”,x,y);y=+x-1;printf(“%d t%dn”,x,y);y=z-1;printf(“%dt%dt”,z,y);y=-z-1;printf(“%dt%dn”,z,y);运行后输出的数据为_。A. 3 1 4 2 B. 3 1 3 3 C. 2 2 3 2 D. 2 1 3 22 4 1 3 2 4 2 2 3 3 2 1 1 3 1 222.下列程序main() int i,j;char *a,c;a=”computer”;printf(“%s”,a);for(i=0,j=7;i%sn”,a);c=aj-1,i=2+j;pr

5、intf(“a%d=%cn”,i,c);运行后输出的数据为_ .A. computer-computer B. computer-retupmoca3=u a5=mC. computer-retupmoc D. computer-retupmoca4=p a2=t23.下列程序int sum(int n) int p=1,s=0,i;for(i=1;imain() char a40,b40;int i,j;printf(“Enter the string:”);scanf(“%s”,a);i=j=0;while(ai!=0) if(!(ai=0&aimain() char a80;int i,

6、j;printf(“Enter the string:”);scanf(“%s”,a);i=0;while(ai!=0) if(ai=A&ai1+2&2|2*4pup.sex (C)(*p).pup.sex (D)(*p).sex18、若已定义了如下的共用体类型变量 x,则 x 所占用的内存字节数为( ) 。union data int i;char ch;double f;x;(A) 7 (B) 11 (C)8 (D) 1019、若有下面的说明与定义:struct test int m1;char m2;float m3;union uu char u15;int u22;ua; myaa;

7、则 sizeof(struct test)的值是 ( ) 。(A) 12 (B) 16 (C) 14 (D)920、若要打开:A 盘上 user 子目录下名为 abc.txt 的文本文件进行读、写操作,下面符合此要求的函数调用是( ) 。(A)fopen(A:userabc.txt , r) (B) fopen(A:userabc.txt,r+)(C)fopen(A:userabc.txt,rb) (D) fopen(A:userlabc.txt,w)第二部分:简单程序(12 题,共 30 分)21、以下程序的运行情况是( ) 。main()int i=1,sum=0;while(i=85);

8、case B:case C:printf(=60);case D:printf(=85 (B)=60 (C)=60=10) break;if(b%3=1) b+=3;continue;printf(%dn,a);(A)101 (B) 6 (C)5 (D)426.以下程序的输出结果是( ) 。int a, b;void fun() a=100;b=200;main() int a=5,b=7;fun();printf(%d%dn,a,b) ;(A) 100200 (B)57 (C)200100 (D)7527.下面的程序执行后,文件 testt 中的内容是 ( ) 。#include void

9、fun(char *fname,char *st) FILE *myf; int i;myf=fopen(fname,w);for(i=0;imain()static char s30=abcdefg;static char t=abcd;int i,j;i=0;while(si!=0)i+;j=0; whi1e(tj!=0) si+j=tj; j+; si+j=0;printf(%sn,s);(A) abcdabcdefg (B)abcdefg (C)abcd (D)abcdefgabcd 29.有如下程序main() char ch25=6937,8254,*p2;int i, j, s=

10、0;for(i=0;i0;j+=2)s=10*s+pij-0;printf(%dn,s);该程序的输出结果是( ) 。(A)69825 (B)63825 (C)6385 (D)69382530.若已建立如下图所示的单向链表结构在该链表中,指针 p,s 分别指向图中所示结点,则不能将 s 所指的结点插入到链表末尾仍构成单向链表的语句组是( ) 。(A) p=p-next;s-next=p;p-next=s;(B) p=p-next;s-next=p-next;p-next=s;(C) s-next=NULL;p=p-next;p-next=s(D) p=(*p).next;(*s).next=(

11、*p).next; (*p).next =s;31.请选择正确的运行结果填入( ) 中。include int x,y;num() int a=15,b=10;int x,y;y=a-b;y=a+b;return;main() int a=7,b=5;x=a+b;y=a-b;num(); printf(%d,%dn , x,y) ;(A) 12,2 (B) 5,25 (C)2,12 (D)不确定32.以下程序的输出结果是( ) 。 #define M(x,y,z) x*y+zmain() int a=1,b=2 ,c=3;printf(%dn,M(a+b,b+c,c+a); (A)19 (B)

12、17 (C)15 (D)12第二卷说明:(1)第二卷含两大题,均属填空题,每题各有 5 个空栏,在阅读与理解原题程序的基础上,在空栏处填入适当的字符、语句,以构成一个正确的 C 语言程序。(2)每空栏填对得 3 分,两大题共 10 个空栏,全对得 30 分。试题一:有一函数,实参传来一个字符串,统计此字符串中字母、数字、空各与其他字符的个数,在主函数中输入字符串以及输出上述的结果。int letter,digit,space,others; /*是全局变量 */ main() int count(char _(1)_);char text80;printf(nlnput string:n);_

13、(2)_;printf(string:);puts(text);letter=O;digit=O;space=O;others=O;_(3)_;printf(letter:%d,digit:%d,space:%d,other:%dn,letter,digit,space,others); int count(char str)int i;for(i=O;stri!=0 ;i+)if(_(4)_=a&stri=A&stri=0&stris2 时,返回它们两者的第一个不同的字符的 ASCII 码差值(如“BOY ”与“BAD” ,第二个字母不同, “O”与“A”之差为 79-65=14);如果 s1s2,则输出正值;如果 sl5)printf(“%dn”,m);elseprintf(“%d n”,m-);A、7 B、6 C 、 5 D、423、 当 a=1, b=3, c=5, d=4 时,执行下面一段程序后,x 的值为_if (amain( ) FILE *fout;char ch;fout=fopen( abc.txt

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号