浙师大c语言题库,c语言程序设计谭浩强浙师大练习题.doc-资源下载在线文库www.lddoc.cn...

《c语言程序设计》谭浩强浙师大练习题.doc

浙江师范大学C语言程序设计考试卷考试形式笔试(闭卷) 使用学生 全校08级理科(非行知)专业 考试时间120分钟出卷时间 2009 年5月31日【说明】1 考生应将全部答案都写在答题纸上,否则作无效处理。2 试题17为程序选择填空题,为每个空格挑选出一个正确答案写在答题纸上。试题89为程序设计题。试题1 每小题2分,共10分阅读下列程序说明和程序,在每小题提供的若干可选答案中,选择一个正确答案. 【程序说明】求多项式的值,直到最后一项的绝对值小于10-4. 【运行示例】sum0.785448 【程序】include stdio.hinclude1 voidmain inti1, flag1; doubleitem, (2) ; do item 3 ;sum sum item ; flag 4 ; while 5 ;printfsum .2f n, sum; 【供选择的答案】 1A.math.hB.string.hC.ctype.hD.stdlib.h 2A.sB.sumC.sum 0D.sum 1 3A.1 / 2*i-1B.1 / 2*i-1C.flag / 2*i-1D.doubleflag / 2*i-14A.0 B.1 C.-1D.- flag5A. item 0.0001B. fabsitem 0.0001C. item 0.0001D. fabsitem 0.0001 试题2 每小题2分,共10分阅读下列程序说明和程序,在每小题提供的若干可选答案中,选择一个正确答案. 【程序说明】输入一个正整数n,然后输入n个单精度实数,用冒泡法将这些实数从低到高排序后输出。【运行示例】Enter n 5Enter 5 floats 75.273 89.5 67.342 -98 5.41After sorted -98.00 5.41 67.34 75.28 89.50【程序】include stdio.hvoidmain intn, i, j;float temp, a100; printfEnter nn0 ;whilescanfd, n, 6 ; 输入正整数nprintfEnter d floats , n;fori0; in; i scanff, (7) ;fori0; in-1; ifor8 ; 9 ; jif (10) temp aj-1;aj-1 aj;aj temp; printf Afer sorted ;fori0; in; iprintf.2f , ai; printfn; 【供选择的答案】 6A.n 0B.n 0C.n 0D.n 07A.aB.aiC.aiD.a 8A.j 0 B.j i C.j n-1D.j n-i9A.j i B.j 0C.j n-iD.j n-i-110A. ai ajB. aj-1 aj C. aj aj1D. aj-1 aj1 试题3 每小题2分,共8分阅读下列程序说明和程序,在每小题提供的若干可选答案中,选择一个正确答案. 【程序说明】输入十六进制整数形式的字符串, 调用函数htod将它转换成十进制整数,然后输出该整数.【运行示例】Enter hexadecimal string 4fDeciamal integer is 79【程序】include stdio.hint ctoichar cif c0 c 9 return c- 0;else if c A c Z return 11 ;else if c a c zreturn 12 ;else return 0;int htod char *hint i, d0;for i0; hi 0 return d;voidmain int dec;char hex10;printfEnter hexadecimal string ;14_;dec htod hex;printfDecimal integer is dn, dec;【供选择的答案】 11A.c - AB.c 10C.c - FD.c A 1012A.c aB.c 10 C.c fD.c a 1013A. d ctoi hi B. d*16 ctoi hiC. d*10 ctoi hiD. d ctoi hi*1614A.hex getchar B.scanf c, hexC.scanfs, hexD.scanfs, hex 试题4每小题2分,共8分【程序说明】数组x7的初值为1, 2, 3, 4, 5, 6, 7,经调用函数f后,数组x的元素被循环左移3位,输出移位后数组x的各元素,屏幕上的输出结果为4 5 6 7 1 2 3【程序】include stdio.hvoid fint a,int n,int kint i,j,t;fori0;ik;i(15);for (16) aj-1 aj; (17) ;void mainint i, x7 1,2,3,4,5,6,7; (18) ; fori0; i7; i printf4d,xi;printfn;【供选择的答案】15 A t ai B t ak C t aj D t a016 A ji; jn; j B j1; jn; j C j1; jk; j D ji1; jn; j17 A ant B an-1ai C an-1t D anai18 A fx,7,3 B fx,7,5 C fx,3,7 D fx,5,7试题5每小题2分,共8分阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。【程序】includestdio.hvoid f1 int x, int y;void f2 int *x, int y ;void f3 int x, int *y ;void f4 int *x, int *y;void mainint a1, b2;f1a, b;printf“ad, bd n”, a,b;a 1, b 2;f2a, b;printf“ad, bd n”, a,b;a 1, b 2;f3a, b;printf“ad, bd n”, a,b;a 1, b 2;f4a,b;printf“ad, bd n”, a,b;void f1int x, int yint t;t x;x y; y t;void f2int *x, int yint t;t *x; *x y; y t;void f3int x, int *y int t;t x; x *y; *y t;void f4 int *x, int *yint t;t*x; *x*y; *yt;19 程序运行时,第一行输出 。A. a1, b2 B. a2, b1C. a1, b1 D. a2, b220 程序运行时,第二行输出 。A. a1, b2 B. a2, b1C. a1, b1 D. a2, b221 程序运行时,第三行输出 。A. a1, b2 B. a2, b1C. a1, b1 D. a2, b222 程序运行时,第四行输出 。A. a1, b2 B. a2, b1C. a1, b1 D. a2, b2试题6每小题2分,共8分阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。【程序】include stdio.hint a 0; void funint a 1; 第4行 printfd,, a;void mainint i;fori 1; i 2; i fun;printfd, a;23 程序运行结果是 。A. 1, 2, 3 B. 1, 2, 0C. 1, 1, 0 D. 0, 1, 224 其它代码不变,将源程序第4行改为“ static int a1; ”,程序运行结果是 。A. 1, 2, 3 B. 1, 2, 0C. 1, 1, 0 D. 0, 1, 225 其它代码不变,将源程序第4行改为“ a1; ”,程序运行结果是 。A. 1, 1, 2 B. 1, 2, 0C. 1, 1, 0 D. 0, 1, 226 其它代码不变,将源程序第4行改为“ ; ”,程序运行结果是 。A. 1, 1, 2 B. 1, 2, 0C. 1, 1, 0 D. 0, 1, 2试题7每小题2分,共8分阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。【程序】include stdio.hincludestring.hstruct studentint num;char name20;char sex; ;void mainstruct student s4, *p ;char *sname Zhao, Qian, Sun, LiM, Ffor i 0; i 4; i si.num i1;strcpy si.name, snamei ; si.sex csex si.num2;p s;第18行printfs, cn, p-name, p-sex;27 运行程序,输出 。A. Zhao, F) B. Qian, MC. Zhao, M) D. Qian, M28 为得到与(27)题相同的运行结果,程序的第18行可改写为 。A. *p s B. p sC. p s0 D.p s029 将程序的第18行改为“p s1”, 运行程序, 输出 。A. Zhao, M) B. Qian, MC. Zhao, F) D. Qian, F30 将程序的第18行改为“p s2”, 运行程序, 输出 。A. Qian, M B. Sun, MC. Qian, F D. Sun, F试题8 程序设计(12分)【编程要求】 输入一个整数n,计算并输出它的各位数字之和。如输入3427,则它的各位数字之和为3427,即16.试题9 程序设计(28分) 【编程要求】(1)用递归方式定义函数fibn,功能是计算菲波那契数列1,1,2,3,5,8,13,的第n项, 其中,数列第1项和第2项均等于1,从第三项开始的各项等于前两项之和。函数返回值类型是int 。(8分)(2)定义函数factn,其功能是计算整数n的阶乘,即n1*2*3n, 函数返回值类型是double。 (8分)(3)定义主函数main,要求输入整数n、计算下列算式的值,并将计算结果按”.2f”的格式写入当前文件夹下的文件”result.dat”中其中,该算式的第i项,分子是菲波那契数列的第i项为分子,分母是阶乘i。要求分别调用在(1)和(2)所定义的递归函数fib和fact计算分子和分母。(12分2008-2009学年第二学期浙江师范大学 计算机基础(C语言)期末考试 A卷 答案与评分标准第一部分选择题( 2*3060分)ACDDBDCCABDDBCDBCAADCBCBADADBD第二部分编程题(1228分)7. (12)includestdio.h1分void mainint n, s0;1分 printfEnter n; scanfd,n ;1分 ifn0 n-n;2分 或 includemath.h nfabsn; while n02分 s n10;2分 n / 10;2分 printfsd n,s ;1分 8. (28)(1) int fibint n 1分ifn1 n2 return 1;3分else return fibn-1fibn-2;4分(2) double factint n1分 if n1 return 1;3分 else return n*factn-1;4分或者double factint n1分double r1;1分int i;1分fori1; in; i2分r r*i;2分return r;1分(3)includestdio.h 1分void mainFILE *fp;1分int i,n;1分double s0;1分fp“result.dat”,”w”; 1分scanf“d”, n;1分fori1; in; i 1分s s fibi/facti; 调用函数2分,累加1分 fprintffp, “.2f”, s;1分fclosefp;1分

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值