c语言程序设计试卷-a卷(正式用卷)

上传人:xzh****18 文档编号:34559868 上传时间:2018-02-25 格式:DOC 页数:12 大小:120KB
返回 下载 相关 举报
c语言程序设计试卷-a卷(正式用卷)_第1页
第1页 / 共12页
c语言程序设计试卷-a卷(正式用卷)_第2页
第2页 / 共12页
c语言程序设计试卷-a卷(正式用卷)_第3页
第3页 / 共12页
c语言程序设计试卷-a卷(正式用卷)_第4页
第4页 / 共12页
c语言程序设计试卷-a卷(正式用卷)_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《c语言程序设计试卷-a卷(正式用卷)》由会员分享,可在线阅读,更多相关《c语言程序设计试卷-a卷(正式用卷)(12页珍藏版)》请在金锄头文库上搜索。

1、C 语言程序设计试卷 共 12 页 第 1 页计算机学院 2008-2009 学年第 2 学期 C 语言程序设计考试试卷A 卷(或 B 卷): A 卷 闭卷(或开卷):闭卷 考试时间:2009 年 6 月 23 日专业 班级 学号 学生姓名 题号 一 二 三 四 五 六 七 总分 核对人题分 10 10 10 10 20 20 20 100得分一、 单项选择题(在下面每小题的 A、B、C、D 四个选项中,只有一个选项是正确的,请选择正确的选项并填写到括号内,选择正确得分。本大题共 10 小题,每小题 1 分,共 10 分。 ) 1、ENUM 是 【 A 】A、合法标识符 B、C 语言的关键字C

2、、合法的字符串 D、既不是 C 语言的关键字,也不是合法的字符串或标识符2、下列数据中属于合法字符常量的是 【 A 】DA、 B、 xag C、45 D、3、下列数据中合法的浮点型常量是 【 C 】A、E+10 B、2E+1.5 C、2E-10 D、0x2.5E104、下列数据中与 256 等值的数为 【 A 】BA、0256 B、0400 C、 0x400 D、0x2565、以下叙述中正确的是 【 B 】A6、局部变量说明为 static 存储类型,其生存期将得到延长B、全局变量说明为 static 存储类型,其作用域将被扩大C、任何存储类型的变量在未赋初值时,其值都是不确定的D、形参可以使

3、用的存储类型说明符与局部变量完全相同6、 -127 的 16 位补码的十六进制表示是 【 A 】A、0xff81 B、0x807f C、0xff80 D、0x80807、 对于下面的数组声明,正确的是 【 D 】BA、int x5; B、char t =a,b,c,0; C、int n=5 ,an; D、char s5=“abcde”;8、若有以下的说明和语句,则在执行 for 语句后,*(*pt+2)表示的数组元素是 【 D 】int t33,(*pt)3,k;for (k=0;ksC、p-sp-n0 D、(*+p).s*(*p).n-15、链表具备的特点是 【 ABC 】ABDA、链表由一

4、系列包含数据域和指针域的结点组成B、插入和删除不需要移动任何元素C、可随机访问任意一个结点D、所需存储空间与其长度成正比三、 填空题(本大题共 10 小题,每小题 1 分,共 10 分。 )本大题的第 1 题至第 5 题请参考下面的说明,请计算出表达式的值并填入各题后面的括号中,各题的表达式相互无关。得分 评卷人得分 评卷人C 语言程序设计试卷 共 12 页 第 3 页short x = -1,0,1, *p=x;unsigned short y=8;【 8 】1、*(p+1) ? y + x1 : y - x1【 65535 】2、y =x1【 17 】3、x2 | 0x10 【 4 】4、

5、y x2【 7 】5、(*px【 】7、p-c+(p+1)-x【 】8、*(+p)-s【 】9、+p-s1【 】10、*p+ -s+四、判断改错题 (先判断下面各题中是否存在错误;如果存在错误,请改正之;否则不必改。本大题共 5 小题,每小题 2 分,共 10 分。 )1、 计算数学表达式(b 2-4ac)/2 对应的程序段如下:float a,b,c,delta;scanf(%f%f%f,delta=(b*b-4*a*c)*(1.0/2);printf(%f,delta);2、本小题的程序段如下:Int 想, *p1=scanf(%d,p1);printf(%dn,*p1);3、创建一个含有

6、 30 个元素的动态数组 table,元素类型为 struct REC 的程序段如下:struct RECchar name8;char sex;int score; * table;table=(struct REC *)malloc(sizeof(30*struct REC);得分 评卷人C 语言程序设计试卷 共 12 页 第 4 页4、 本小题的程序段如下:const char * sp2=abc,123;sp0= ABC;5、将变量 x 按位左移 n 位的宏定义为:#define ROL(x,n) ((x)b?(bc?B:(ac?c:a):(ac?a:(bc?b:c)3、请写一个 C

7、表达式,将整数 k 的高字节作为结果的低字节,整数 p 的低字节作为结果的高字节,拼成一个新的整数。k8 | p= m/2; i-)*(s + i + n) = *(s + i);for(i = 0;i 提示符下输入 test2009 6 12 38 102 5 71 36 8 85 并回车,程序对应的运行结果如下:6 12 38 102 5 71 36 8 855 6 8 12 36 38 71 85 102 find= 2请将下面程序中、空处应该完善的内容填写在本小题后得分 评卷人C 语言程序设计试卷 共 12 页 第 9 页、后面的下划线处。#include stdio.hint ato

8、i(char *);void shellsort(int a,int n) ;int BinarySearch(int a,int x,int n);/* atoi 是将数字串转换为对应整数的函数 */int atoi(char *s)int j=0,num=0;for(;*(s+j)!=0;j+)num= ;return num;/* shellsort 是 shell 法排序函数 */void shellsort(int a,int n) int gap,i,j,t;for(gap=n/2;gap0; ) for(i=gap;i=0j-=gap)t=aj;aj=aj+gap;aj+gap=

9、t;/* BinarySearch 是二分查找函数 */int BinarySearch(int a,int x,int n)int front=0,back=n-1,middle;while(frontamiddle)front=middle+1; elsereturn ( _ ); return -1; /* 下面是带命令行参数的 main 函数 */C 语言程序设计试卷 共 12 页 第 10 页int main(int argc,char *argv)int n=argc,i,*a,x=8,find;if(argc#includetypedef struct scrnode int s

10、core;struct scrnode *next; C 语言程序设计试卷 共 12 页 第 11 页 ScrNode;ScrNode *load_list(char *filename);void print_list(ScrNode *head);int count_fail( ScrNode *head);void del_nodes( ScrNode *headp,int x);void main(void)ScrNode *head;int n;head = load_list(d:scr.txt); /* 从 scr.txt 中读入成绩,建成后进先出单向链表 */print_lis

11、t(head); /* 显示 */ n=count_fail(head); /* 统计不及格人数 */printf(nFail:%dn,n);_ ; /* 删除所有成绩为 34 的结点 */ print_list(head);/* 从文本文件 filename 中依次读入成绩,将其建成一个后进先出单向链表 */ScrNode *load_list(char *filename)FILE *fin;ScrNode *head=NULL,*p;int x;if(fin= _ )=NULL) exit(-1);while(!feof(fin) p=(ScrNode *)malloc(sizeof(S

12、crNode);fscanf(fin,%d,p-score=x;_ ; head=p;fclose(fin);return(head);/* 输出 head 所指链表中各个结点数据域中成员的值 */void print_list( ScrNode *head)ScrNode *p=head;while(p != NULL)printf(%dt, p-score);p=p-next;C 语言程序设计试卷 共 12 页 第 12 页printf(n);/* 用递归方式统计 head 所指链表中成绩不及格的结点 */int count_fail( ScrNode *head)ScrNode *p=h

13、ead;static n=0;if(p != NULL)if(p-scorenext);else return( _ ); else return 0;/* 删除*head 所指链表中所有与 x 值相同的结点 */void del_nodes( ScrNode *headp,int x)ScrNode *p,*last,*t;p=*headp;while(p!=NULL) while(p-score!=x & p-next != NULL ) /* 查找值 x 的节点 */last=p;p=p-next;if(p-score=x) /* 找到 */if(p=*headp) *headp=p-next; else _ ; t=p;p=p-next;free(t);else break ; 、

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题 > 高中试题/考题

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