版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2008(春)C语言笔试卷,一、选择题(用答题卡答题,答案依次填在2130答题号内,共10分),21下列叙述中正确的是 (21) 。 A. main函数必须出现在其他函数之前 B. main函数中至少必须有一条语句 C. 程序总是从main函数的第一条语句开始执行 D. C程序总是在执行完main函数的最后一条语句后 结束,C,22. 以下常量表示中正确的是 (22) 。 A. xffB. 5L C. aEbD. 3.14U,B,23若程序中已有相应的声明,下列语句中错误的是 (23) 。 printf(i=4 ? %6dn : %6d , i ); i=4 ? printf(%6dn,i )
2、 : printf(%6d , i ) ; for (i=10 ; ; i-) if(i=1) break; for (i=10 ; ; ) if(i-) ; break;,D,24若有声明“float f=123.45678;”,则执行语句“printf( %.3f,f );”后,输出结果是 (24) 。 . 1.23e+02 . 123.457 . 123.456780 . 1.234e+02,B,25若有声明“int x=2,y=1,z=0;”,则下列关系表达式中有语法错误的是 (25) 。 . xy=2 . zyx . xy=1 . x=(x=0,y=1,z=2),A,26若有声明“i
3、nt x10=0,1,2,3,4,5,6,7,8,9,*p;”,则值不为4的表达式是 (26) 。 A p=x,*(p+4) B p=x+4,*p+ C p=x+3,*(p+) D p=x+3,*+p,C,27若有声明“int i,k=1; unsigned j;”,则下列语句执行时会出现无限循环的语句是 (27) 。 . for(j=15;j0;j-=2) k+; . for(j=0;j0;i-=2) k+;,A,28已知A盘根目录下有文本文件“data.txt”且程序中已有声明“FILE *fp;”,若程序需要先从“data.txt”文件中读出数据,修改后再写入“data.txt”文件中,
4、则调用fopen函数的正确形式是 (28) 。 A fp=fopen(a:data.txt,rw); B. fp=fopen(a:data.txt,w+); fp=fopen(a:data.txt,r+); fp=fopen(a:data.txt,r);,C,29以下选项均为fun函数定义的头部,其中错误的是 (29) 。 int fun(int x,int y) B. int fun(int x,int yx) C. int fun(int x,int y3) D. int fun(int x,int *y),B,30以下结构变量stu1的声明形式中,错误的是 (30) 。 typedef
5、struct stu char name10;float score;STU ; STU stu1; #define STU struct stu STU char name10;float score; stu1; struct stuchar name10;float score;stu1; struct stuchar name10;float score;STU; STU stu1;,D,二、填空题(将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分),l 基本概念 1在C语言源程序中,不带任何修饰符的浮点数直接量(例如:3.14)都是按 (1) 类型数据存储的。,doubl
6、e,2若有声明“char s110=ABCDE,s210=A0;” 则语句 “printf(%d,strlen(strcpy(s1,s2);” 的输出结果是 (2) 。,3,3可以改变局部变量的生存期、但不能改变它的作用域的存储类别是 (3) 。,static,4C语言有效的预处理命令总是以 (4) 开头。,#,5若有声明“int a=15,b=20,c=25,e;”,则执行语句“e=ab? -c :+c;”后变量e的值是 (5) 。,26,l 阅读程序 6以下程序运行后的输出结果是 (6) 。 #include #define Count(n) +n main ( ) int x=-3 ,n
7、=8; while(Count(x) n-; printf(%dn,n); ,6,7以下程序运行后的输出结果是 (7) 。 #include int fun(int w1 , int w2) return w2-w1; main( ) int w=1,k ; k=fun(fun(w+1,w),w) ; printf(%dn,k) ; ,2,8下列程序运行后的输出结果第一行是 (8) ;第二行是 (9) 。 #include main( ) int i,a=0,c=2; for(i=0;i2;i+) switch(+a,a*c) case 1: printf(1); case 2: printf
8、(2); case 3: printf(3n);break; default: printf(othern); ,23,other,9以下程序运行后的输出结果是 (10) 。 #include main ( ) char a =369,*p=a; int s=0,t=1; while(*+p) t*=10; p-; while (t) s+=(*p-0)*t; p-; t/=10; printf (%dn,s); ,963,10以下程序运行后的输出结果第一行是 (11) ;第二行是 (12) 。 #include struct num int x,y; st=1,10,2,20,3,30,4,
9、40,-1,-1,s12,s22; main() int i=0,j=0,k; for(k=0;stk.x!=-1;k+) if(stk.x%2) s1i+=stk; else s2j+=stk; printf ( %d n %d n,s10.y ,s20.y ); ,10,20,#include void print(int n); void print_n(int n); main() print(4); void print(int n) if (n=0) return; print_n(n); if (n0) print(n-1); ,11以下程序运行后的输出结果第一行是 (13) 。
10、,void print_n(int n) if(n=0)return; printf(%d,n); if(n1) print_n(n-1); else printf(n); ,4321,12以下程序运行后的输出结果第一行是 (14) ;第二行是 (15) ;第三行是 (16) 。,#include void sot( int a33) int i,j,i0,j1,min,max,temp; min=max=a00; for(i=0;i=max) max=aij;j1=j; ,789,456,123,for(j=0;j3;j+) temp=ai0j; ai0j=a2j; a2j=temp; fo
11、r(i=0;i3;i+) temp=aij1; aij1=ai2; ai2=temp; for(i=0;i3;i+) for(j=0;j3;j+) printf(%d ,aij); printf(n); ,main() int b33=3,2,1,6,5,4,9,8,7; sot(b); ,13以下程序运行时,若在键盘上输入 2,则输出 是 (17) ;若在键盘上输入i,则输出是: (18) 。,#include #include int strch( char *s,char ch) int i; for(i=strlen(s);i=0;i-) if(si-1=ch) return i; i
12、f(i0)return 0; ,7,not found,main() char ch,s1=as123d2nfghjkm; int k; printf(input ch:); ch=getchar(); k=strch(s1,ch); if(k!=0) printf(k=%d n,k); else printf(not foundn); ,l 完善程序,14某餐厅用苹果、桔子、香蕉、菠萝、梨五种水果制作水果拼盘,要求每个拼盘中恰有三种不同水果。以下程序的功能就是计算可以制作出多少种这样的水果拼盘并列出组合方式。,#include typedef enumapple,orange,banana,
13、pineapple,pear Fruit; main() (19) fruits =apple,orange,banana,pineapple,pear; Fruit x,y,z,p; int k=0,i; for (x= (20) ;x=pear;x+) for (y=x+1;y=pear;y+) for (z=y+1;z=pear;z+) printf (n%d %s %s %s , +k,fruitsx,fruitsy,fruitsz); ,char *,apple,15以下程序通过给出的公式计算 的近似值,计算过程在所加项的值小于10-10时终止。,#include main() do
14、uble sum=0.5,t,t1,t2,t3; int odd=1, even=2 ; t=t1=t2=1.0; t3=0.5; while (t1e-10) t1= (21) ; odd+=2; even+=2; t2=1.0/odd ; t3= (22) ; t=t1*t2*t3; sum+=t; printf (nPI=%.8lf, (23) ); ,t1*odd/even,sum*6,t3*0.5*0.5,16以下程序中函数long fun(char *str)的功能是:自左至右取出非空字符串str中的所有数字字符,将这些数字字符组成一个不超过8位的十进制整数并输出。 例如,字符串s
15、tr为“efg32gh76.jbejing08t5y4u2”,程序输出:32760854。,#include long fun(char *str) int i=0; long k=0; char *p=str; while(*p!=0 ,i8,k*10,P+,设某单向链表结点的数据结构定义为: typedef struct node char ch; struct node *next ; linklist ; 以下程序首先建立一个单向链表head(如图1所示),该链表每个结点中保存x数组的一个元素值;输出head链表中每个结点的值;再将head链表变换为倒序链表(如图2所示),输出倒序后h
16、ead链表中每个结点的值。,head链表倒序算法提示:(1)使hp指向head链表,置head为0(head链表为空链表)。(2)从hp指向的链表第一个结点开始,依次从hp链表中删除每个结点,将所删除的结点再依次插入到head链表第一个结点之前,直到hp链表为空时结束。,#include typedef struct node char ch; struct node *next; linklist ;,linklist *create( char x) int i; linklist *pt,*pr,*p=NULL; for(i=0;xi!=0;i+) pt=(linklist*)malloc(sizeof(linklist); pt-ch=xi;pt -next=NULL; if(p=NULL) (27) ; pr=pt; else pr-next=pt; (28) ; return p; ,p=pt,pr=pr -next,linklist *revlist( linklist *head) linklist *hp,*p=NULL; hp=head; head= (29) ; whi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理应用解剖学:解剖学在急诊护理中的应用
- 水产养殖潜水工持续改进评优考核试卷含答案
- 半导体分立器件和集成电路装调工安全生产能力强化考核试卷含答案
- 普通磨工岗前记录考核试卷含答案
- 动车组维修师测试验证能力考核试卷含答案
- 碳五正异构分离装置操作工班组管理评优考核试卷含答案
- 大学生党员思想总结- 网络安全:大学生党员如何防范网络渗透
- 2026年公交广告合同
- 2026年环保集成托管运营协议
- 儿科护理创新与发展
- 2026年青海省海南藏族自治州单招职业适应性测试题库附参考答案详解(模拟题)
- 广告制作公司奖惩制度
- 2026年及未来5年市场数据辽宁省环保行业市场行情动态分析及发展前景趋势预测报告
- 基金会会计监督制度
- 幼儿园课件《认识我们的身体》课件
- 违反无菌技术操作
- 骨髓腔穿刺科普
- 长螺旋钻孔灌注桩基础施工组织设计方案
- 管道酸洗、钝化施工方案
- 苏州市2024年江苏苏州工业园区房地产交易管理中心辅助人员招聘4人笔试历年参考题库典型考点附带答案详解(3卷合一)
- 2025年安徽省合肥市单招职业适应性测试题库附答案
评论
0/150
提交评论