教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 外语考试 >

07-08第二学期C期末试卷B卷

来源:网络收集 时间:2026-08-25
导读: 江 苏 大 学 试 题 (2007-2008学年第二学期) 课程名称 计算机基础和程序设计(C语言)(II) 开课学院 使用班级 07级理工专业 考试日期 2008年 江 苏 大 学 试 题 第2页 江 苏 大 学 试 题 第3页 江 苏 大 学 试 题 第4页 ) 。 26.设有以下宏定义,则执行

江 苏 大 学 试 题

(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字,全部文档内容请下载后查看。喜欢就下载吧 ……

07-08第二学期C期末试卷B卷.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1694179.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)