浙江传媒学院《程序设计与数据结构》期终考试

上传人:回**** 文档编号:128259356 上传时间:2022-08-01 格式:DOC 页数:13 大小:40.50KB
收藏 版权申诉 举报 下载
浙江传媒学院《程序设计与数据结构》期终考试_第1页
第1页 / 共13页
浙江传媒学院《程序设计与数据结构》期终考试_第2页
第2页 / 共13页
浙江传媒学院《程序设计与数据结构》期终考试_第3页
第3页 / 共13页
资源描述:

《浙江传媒学院《程序设计与数据结构》期终考试》由会员分享,可在线阅读,更多相关《浙江传媒学院《程序设计与数据结构》期终考试(13页珍藏版)》请在装配图网上搜索。

1、浙江传媒学院程序设计与数据构造期终(考试)(A)卷 年 第 一 学期 任课教师 系 班 姓名 学号 *注:答案请写在答卷纸上。一) 判断题(每题1分,共10分)阐明:在如下提供的若干个陈述中,逐个判断其对的与否,选A表达对的,选B表达错误。1、 C语言觉得,变量Number和number是相似的。2、 (a=3)(b=5)是合法的关系体现式。3、 字符数组char c = string;有6个数组元素。4、 调用strlen(abc0ef0g)的返回值为8。5、 C语言中容许函数“嵌套调用”和“递归调用”,所谓“递归调用”就是指:在调用一种函数的过程中又浮现直接或间接地调用该函数自身。6、 C

2、语言源程序文献通过编译、链接之后,生成一种后缀为.EXE的文献。7、 %f是字符常量。8、 体现式!6的值是6。9、 设变量定义为char cc=12n345,则体现式sizeof(cc)的值是7。10、 while语句先判断循环条件,因此循环体有也许一次也不执行。二)选择题(每题2分,共20分)1、构成C语言程序的是( )A、过程 B、函数 C、子程序 D、主程序和子程序2、下列字符序列中,合法的标记符是( )A、S.b,sum,average,_aboveB、class,day,louts_1,2dayC、#md,&12x,momth,student_n1D、D56,r_1,name,_s

3、t_13、下面函数的功能是( )int fun(char s , char t )int i=-1;while(+i,si= =ti&si!= 0);return (si= =0&ti= =0);A、比较字符串s和t的长度 B、比较字符串s和t的大小C、比较字符串s和t与否相等 D、将字符串t赋给字符串s4、若有如下定义和语句:int a10=1,2,3,4,5,6,7,8,9,10,*p=a;则不能表达 a数组元素的体现式是( )。A、a*p B、a10 C、*a D、ap-a5、下面vc编译环境下的程序有两个printf语句,如果第1个printf语句输出的是194,则第2个printf语

4、句的输出成果是( )void main()int a10=1,2,3,4,5,6,7,8,9,0,*p;p=a;printf(%xn,p);printf(%xn,p+8);A、224 B、226 C、1b4 D、1b66、设有定义语句“int w34=0,1,2,4,5,8, (*p)4=w;”,则数值为4的体现式是( )A、*w1+1 B、p+,*(p+1) C、w22 D、p117、在循环体中执行continue语句,其作用是( )A、终结程序运营B、继续执行continue语句之后的循环体各语句C、结束本次循环,进行下次循环D、跳出该循环体,提前结束循环8、struc STUchar n

5、ame10;int num;void f1(struct STU c) struct STU b=LiSiGuo,2042;c=b;void f2(struct STU *c) struct STU b=SunDan,2044; *c=b;void main( ) struct STU a=YangSan,2041,b=WangYin,2043; f1(a);f2(&b); printf(%d %dn,a.num,b.num);执行后的输出成果是( )A、2041 2044 B、2041 2043 C、2042 2044 D、2042 20439、对于如下递归函数f,调用函数f(2, 1, 2

6、, 3)的输出成果是( )。void f(int n,char a,char b,char c) if(n=1) printf(%c-%c#,a,b); else f(n-1,a,c,b); printf(%c-%c#,a,b); f(n-1,c,b,a); A、1-2#1-3#3-2# B、3-2#1-2#1-3#C、1-3#3-2#1-2# D、1-3#1-2#3-2#10、设变量定义为:int n,*p;char ch,*q,*g;,则语句( )是不对的的。A、p=&n;g=q=&ch; B、p=&n;q=&ch; C、p=&n;g=&ch D、p=&n;q=&ch;g=p;三)程序填空

7、题(每题2分,共20分)阐明:阅读下列程序阐明和相应程序,在每题提供的若干可选答案中,挑选一种对的答案。程序1【程序阐明】 输入100个整数,将其中的前20个数从小到大排序,然后输出这100个数。# include stdio.hvoid sort( (1) ) int i, k, m, t; for(i = 0; i n-1; i+) k=i; for(m=i+1; mn; m+) if( (2) ) k=m; (3) void main( ) int k, a100; for(k=0; k100; k+) scanf(%d, &ak); (4) ; for(k=0; kam B、am-1a

8、m C、akam3、A、ak = ai; ai = ak; B、ak = t ; ak = ai; ai = t; C、t = ak; ak = ai; ai = t; D、ai = ak; ak = ai;4、A、sort(a, 20) B、sort(a , 20) C、sort(a20) D、sort(a )程序2【程序阐明】验证哥哥德巴赫猜想:任何一种不小于6的偶数均可表达为两个素数之和。例如6=3+3,8=3+5,18=7+11。将6100之间的每个偶数都表达到两个素数之和。函数prime(m)用于判断m与否为素数。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。程序#inc

9、lude stdio.h#include math.hvoid main() int i, k; int prime(int m); for (i=6;i=100;i=i+2)for(k=3;k=50;k+) if ( (5) ) printf (%d = %d+%dn, i, k, i-k); break; int prime(int m) int k, n;if(m = = 1) return 0;n = (int)sqrt (m);for (k = 2; k = n ;k+) (6) ; (7) ; 5、A、prime(i) B、prime(i) & prime(k) C、prime(k

10、) & prime(i-k) D、prime(k)6、A、if (m%k!=0) return 0 B、if(m%k=0) return 0 C、if(m%k=0) return 1 D、if(m%k !=0) return 17、 A、return 0 ; B、return 1; C、else return 0; D、else return 1;程序3【程序阐明】输入 10 个整数, 将它们存入数组 a 中 , 再输入一种数 x, 然后在数组中查找 x, 如果找到, 输出相应的下标 ( 如有多种元素与 x 相等, 只要输出下标值最小的那个元素的下标 ), 否则, 输出 Not Found 。

11、【程序】#include void main () int k,sub,x;int a10;for (k=0;k 10;k+)scanf(%d,&ak);printf(Input x n);scanf(%d,&x);sub=-l;for (k=0; (8) ;k+)if(ak=x) (9) if (10) printf(Index is %d n,sub);else printf(Not Found n);8、A 、k10 B 、k=10 C 、 k9 D 、k 89、A 、sub=k; B 、 break ; C 、 sub=k;break ; D 、sub=k;break ;10、A 、s

12、ub!=-1 B 、sub !=0 C 、sub=-1 D 、sub=0四) 程序阅读题(每题2分,共20分)阐明:阅读下列程序,将运营时的输出成果写在答卷纸的相应题号下。程序1#include void main()int a=-1,b=1;void f1(int x,int y),f2(int *x,int *y);void f3(int *x,int * y),f4(int x,int y);f1(a,b);printf(%d,%d)n,a,b); a=-1,b=1;f2(&a,&b); printf(%d,%d)n,a,b); a=-1,b=1;f3(&a,&b); printf(%d

13、,%d)n,a,b);a=-1,b=1;f4(a,b); printf(%d,%d)n,a,b);void f1(int x,int y)int *t=malloc(sizeof(int);*t=x;x=y;y=*t;void f2(int *x,int *y)int *t;t=x;x=y;y=t; void f3(int *x,int *y)int t;t=*x;*x=*y;*y=t;void f4(int x,int y)int t;t=x;x=y;y=t;1、程序运营时,第1行输出_ A.(1,-1) B.(-1,-1) C.(-1,1) D.(1,1)2、程序运营时,第2行输出_ A.

14、(1,-1) B.(-1,-1) C.(-1,1) D.(1,1)3、程序运营时,第3行输出_ A.(1,-1) B.(-1,-1) C.(-1,1) D.(1,1)4、程序运营时,第4行输出_ A.(1,-1) B.(-1,-1) C.(-1,1) D.(1,1)程序2#include struct cardchar * face;char * suit;void filldeck(struct card * wdeck,char *wface,char * wsuit)int i;for(i=0;i4;i+)wdecki.face=wfacei%2;wdecki.suit =wsuiti/

15、2;void deal(struct card * wdeck)int i;for(i=0;i4;i+)printf(%2s of %-6s)n,wdecki.face,wdecki.suit);void main()struct card deck4;char * face=A,B;char * suit=Heart,Club;filldeck(deck,face,suit);deal(deck);5、程序运营时,第1行输出_ A.( A of Heart ) B.( B of Heart ) C.( A of Club ) D.( B of Club )6、程序运营时,第1行输出_ A.(

16、 A of Heart ) B.( B of Heart ) C.( A of Club ) D.( B of Club )7、程序运营时,第1行输出_ A.( A of Heart ) B.( B of Heart ) C.( A of Club ) D.( B of Club )8、程序运营时,第1行输出_ A.( A of Heart ) B.( B of Heart ) C.( A of Club ) D.( B of Club )程序3 #include int f(int number,int digit)int count=0;while(number!=0)if(number%

17、10=digit)count+;number=number/10; return count;void main()printf(count=%dn,f(11299,2);printf(count=%dn,f(11299,9);9、程序运营时,第1行输出_ A.count=0 B.count=3 C.count=5 D.count=1 10、程序运营时,第2行输出_ A.count=3 B.count=9 C.count=2 D.count=5五) 程序改错题(每项2.5分,共10分)阐明:程序在”*N*”的下一行中有错误,请改正,注意,不得加行、减行、加句、减句,否则算错。1、程序功能:输入

18、n以及不不小于n个字符的字符串,将字符串中所有小写字母改为相应的大写字母后,输出该字符串。#include #include #include void main() int n,i; /* 1 */ char str; scanf(%dn,&n); str=(char*)malloc(n); gets(str); /* 2 */ for(i=1;i=a& stri=z) stri=stri-(a-A); puts(str);2、该程序功能:运营时若输入a、n分别为3、6,则输出下列体现式的值:3+33+333+3333+33333+333333#include void main() int

19、 i,a,n; long t=0; /* 1 */ s=0; scanf(%d%d,&a,&n); for(i=1;i=n;i+) /* 2 */ t=t*10+n; s=s+t; s=s*a; printf(%ldn,s);六) 程序设计(每题10分,共20分)1、 编写程序,输入100个学生的英语成绩,记录并输出该门课程的平均分以及不及格学生的人数,并将平均分及不及格人数以%6.2f和%d的方式写入“design.dat“中。#define N 100#include void main()float englishN;float sum=0,avg; /总分,平均分int bjg=0; /不及格人数int i;FILE * fp; /* 完毕程序*/2、 编写程序,输入一种正整数n,计算并输出下列式子的值。规定在main()中调用函数total(n),计算并返回1+1/2+1/3+1/n的值,函数返回值的类型为double。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!