07-08第二学期C期末试卷B卷
江 苏 大 学 试 题
(2007-2008学年第二学期)
课程名称 计算机基础和程序设计(C语言)(II) 开课学院
使用班级 07级理工专业 考试日期 2008年
江 苏 大 学 试 题 第2页
江 苏 大 学 试 题 第3页
江
苏 大 学 试 题
第4页 ) 。
26.设有以下宏定义,则执行语句“z=2*(N+Y(5+1));”后,z 的值为( #define N 3 #define Y(n)
((N+1)*n) A)出错 B)42 C)48 D)54 27.设有说明: union data{ int i; float f; struct{int x;
char y; }s; double d; }a; 在 16 位 PC 环境下,int 类型的整数占用两个字节,则变量 a 在内存中所占字节数为( A)8 B)17 C)9 D)15 28.设有说明: struct {int x,y;}s[2]={{1,2},{3,4}}, *p=s, *q=s; 则表达式++p->x 和表达式(++q)->x 的值分别为: ( A)1 和 1 B) 1 和 3 C) 2 和 3 D) 3 和 3
) 。
) 。
29.以下选项均为 fun 函数定义的头部,其中错误的是( ) 。 A) int fun(int x,int y[]) B) int fun(int x,int y[x]) C) int fun(int x,int y[3]) D) int fun(int x,int *y) 30.若需要对一个数据文件 abc.txt 中的数据做加密处理并且限定只能做一次打开文件操作,则 在”fp=fopen(“abc.txt”,模式字符串);”中,模式字符串应当是( ) 。 A) "w+" B) "r+" C) "a+" D) "r"
二、 填空题(10 分,每空 1 分) 1.C 语言程序的执行总是从 (1) 函数开始。 2.C 语言源程序文件的后缀(即扩展名)是__(2)_。 3.设有定义:float x=123.4567;,则执行以下语句后的输出结果是 (3) 。 printf("%f\n",(int)(x*100+0.5)/100.0); 4.如在程序中要用到字符串操作函数(如 strcpy 函数) ,则应包含的头文件是 (4) 。 5.字符串"ab\034\\\x79"的长度为 (5) 。 6.定义 int i=1; 执行语句"while(i++<5)";后,i 的值为___(6)__。 7.C 语言中逻辑运算符_(7)___的优先级高于算术运算符。 8.如需定义一个指针 p,使得它所指的对象是有 10 个整型元素的数组,即 p 是行指针。请给出 对 p 的定义语句: (8) 。 9.若有声明“int a=15,b=20,c=25,e;” ,则执行语句“e=a>b?--c:++c;”后变量 e 的值是 (9) 。 10.可以改变局部变量的生存期、但不能改变它的作用域的存储类别是 (10) 。
江
苏 大 学 试 题
第5页
三、阅读程序题(30 分,其中(1)-(6)每空 3 分,(7)-(12)每空 2 分)1.以下程序的输出结果是 (1) main() {int a,b,c; a=25; b=025; c=0x25; printf("%d,%d,%d\n",a,b,c); } 。 (3 分)
2. 以下程序段的输出结果是___(2)____。 (3 分) int f1(int x,int y){return x>y?x:y;} int f2(int x,int y){return x>y?y:x;} main() {int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d)); g=a+b+c+d-e-f; printf("%d,%d,%d\n",e,f,g); } 3.下列程序运行后的输出结果第一行是 (3) ;第二行是 (4) 。 (6 分) #include<stdio.h> main() {int i,a=0,c=2; for(i=0;i<2;i++) switch(++a,a*c) {case 1:printf("1"); case 2:printf("2"); case 3:printf("3\n");break; default:printf("other\n"); } } 4.以下程序段的输出结果是___(5)___。 (3 分) void fun(int *a,int i,int j) { int t; if(i<j) {t=a[i]; a[i]=a[j]; a[j]=t; i++; j--; fun(a,i,j); } }
江 main() {int x[]={2,6,1,8},i; fun(x,0,3); for(i=0;i<4;i++) printf("%2d",x[i]); printf("\n"); }
苏 大 学 试 题
第6
页
5.以下程序的输出结果是 (6) 。 (3 分) main() {int a[4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14},{15,16,17,18}}; int i=0,j=0,s=0; while(i++<4) {if(i==2||i==4) continue; j=0; do{s+=a[i][j]; j++;}while(j<4); } printf("%d\n",s); } 6.下列程序运行后的输出结果第一行是 (7) ;第二行是 (8) ;第三行是 (9) 。 (6 分) int a=5; fun(int b) {static int a=10; a+=b++; printf("%d\n",a); } main() {int c=20; fun(c); a+=c++; fun(c); a+=c++; printf("%d\n",a); } 7.以下程序的输出结果是 (10) 。 (2 分) struct NODE {int k; struct NODE *link; }; main() {struct NODE m[5],*p=m,*q=m+4; int i=0;
江
苏 大 学 试 题
第7页
while(p!=q) {p->k=++i; p++; q->k=i++; q--; } q->k=i; for(i=0;i<5;i++) printf("%d ",m[i].k); printf("\n"); } 8. 以下程序运行时,若在键盘上输入 2<Enter>,则输出是 (11) ;若在键盘上输入 i<Enter>, 则输出是 (12) 。(4 分) #include<stdio.h> #include<string.h> int strch(char *s,char ch) {int i; for(i=strlen(s);i>=0;i--) if(s[i-1]==ch) return i; if(i<0) return 0; } 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 found\n"); }
四、
完善程序题(30 分,每空 2 分) :
1. 以下程序中函数 huiwen 的功能是检查一个字符串是否是回文,当字符串是回文时,函数返回 字符串:yes! ,否则函数返回字符串:no! ,并在主函数中输出。所谓回文即正向与反向的拼 写都一样,例如:adgda,请填空。 #include "string.h" char *huiwen(char *str) {char *p1,*p2; int i,t=0; p1=str; p2= (1) ; for(i=0;i<=strlen(str)/2;i++) if(*p1++!=*p2--) {t=1;break;}
江
苏 大 学 试 题
第8页
if( (2) ) return("yes!\n"); else return("no!\n"); } main() {char str[50]; printf("Input:"); scanf("%s",str); printf("%s\n", (3) ); } 2. 以下程 序中函 数 float fun(int n) 的 功能是:根据下列公 式计算并返 回 s 的值( n 0 ) 。
s i 0
n
( 1)
i
2 i 1
学号
#include<stdio.h> float fun(int n) {float s=0.0,w,f=-1.0;int i; for(i=0;i<=n;i++) {f= (4) ; w=f/(2*i+1); (5) ;} return s; } main() {int n=5; float s; ( 6 ) ; printf("%f\n",s); } 3.求 100 以内的素数 main( ) { int m, n, i=0, prime; for(m=2; m<=100; m++) { (7) ; for(n=2; n<m; n++) if( (8) ) prime=0; if( (9) ) {printf("%6d",m); i++; if (i%5==0) printf("\n");} } if(i%5!=0) printf("\n"); }
学生所在学院
专业、班级
姓名
江
苏 大 学 试 题
第9页
4. 用插入法对输入的 10 个整数按由小到大的顺序排列。 main() { int x[10],j,k,l,t,flag; for(j=0;j<10;j++) { scanf("%d",&t); if(j==0) (10) ; else {for(flag=1,k=0;k<j&&flag;k++) if(x[k]>t) (11) ; if(flag) x[j]=t; else { for(l=j-1;l>=k-1;l--) (12) ; x[k-1]=t; } } } for(j=0;j& …… 此处隐藏:3273字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [外语考试]管理学 第13章 沟通
- [外语考试]07、中高端客户销售流程--分类、筛选讲
- [外语考试]2015-2020年中国高筋饺子粉市场发展现
- [外语考试]“十三五”重点项目-汽车燃油表生产建
- [外语考试]雅培奶粉培乐系列适用年龄及特点
- [外语考试]九三学社入社申请人调查问卷
- [外语考试]等级薪酬体系职等职级表
- [外语考试]货物买卖合同纠纷起诉状(范本一)
- [外语考试]青海省实施消防法办法
- [外语考试]公交车语音自动报站系统的设计第3稿11
- [外语考试]logistic回归模型在ROC分析中的应用
- [外语考试]2017-2021年中国隔膜泵行业发展研究与
- [外语考试]神经内科下半年专科考试及答案
- [外语考试]园林景观设计规范标准
- [外语考试]2018八年级语文下册第一单元4合欢树习
- [外语考试]分布式发电及微网运行控制技术应用
- [外语考试]三人行历史学笔记:中世纪人文主义思想
- [外语考试]2010届高考复习5年高考3年联考精品历史
- [外语考试]挖掘机驾驶员安全生产责任书
- [外语考试]某211高校MBA硕士毕业论文开题报告(范
- 用三层交换机实现大中型企业VLAN方案
- 斯格配套系种猪饲养管理
- 涂层测厚仪厂家直销
- 研究生学校排行榜
- 鄱阳湖湿地景观格局变化及其驱动力分析
- 医学基础知识试题库
- 2010山西省高考历年语文试卷精选考试技
- 脉冲宽度法测量电容
- 谈高职院校ESP教师的角色调整问题
- 低压配电网电力线载波通信相关技术研究
- 余额宝和城市商业银行的转型研究
- 篮球行进间运球教案
- 气候突变的定义和检测方法
- 财经大学基坑开挖应急预案
- 高大支模架培训演示
- 一种改进的稳健自适应波束形成算法
- 2-3-鼎视通核心人员薪酬股权激励管理手
- 我国电阻焊设备和工艺的应用现状与发展
- MTK手机基本功能覆盖测试案例
- 七年级地理教学课件上册第四章第一节




