




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C程序设计试卷一、 单选题(本题共20分,每小题2分)(1)以下C语言常量中,表达错误的是_(1)_。A 0FF B 3.2e0.5 C 5.6 D n(2)C程序的基本结构有_(2)_。A 选择、重复和模块B 顺序、选择和模块C 顺序、选择和循环D 逻辑、物理和程序(3)在C语言程序中,关于字符串的描述正确的是_(3)_。A 可定义一个字符串变量存储字符串;B 可定义一个字符变量存储任意字符串;C 可定义一个字符数组存储字符串;D 可定义一个字符指针存储字符串;(4)在C语言中,用关键字_(4)_定义双精度类型变量。A singleB doubleC floatD int(5)下面叙述中不正
2、确的是_(5)_。A 不同函数中可以使用相同名字的变量B 形式参数是局部变量C 在一个函数内部的复合语句中定义的变量在本函数范围内有效D 在一个函数内部定义的变量只能在本函数范围内有效(6)下面程序段的输出结果是_(6)_。int i=100;while(i>120)i=i+1;printf(%d,i);A 100B 101C 120D 121(7)以下定义语句中正确的是_(7)_。A char a='A' b='B'B float a=b=10.0; C int a=10, *b=&a;D float *a,b=&a;(8)已有定义:in
3、t i, a10, *p;,则合法的赋值语句是_(8)_。A p=100;B p=a5;C p=a2+2;Dp=a+2;(9)设有定义:int a,*p1=&a; 以下scanf语句中能正确为变量a读入数据的是_(9)_。A scanf(“%d”,p1); B scanf(“%d”,a); C scanf(“%d”,&p1); D scanf(“%d”,*p1); (10)以下程序段中与语句=a>b(b>c10)0;功能等价的是_(10)_。A if(a>b)&&(b>c) =1 else =0;B if(a>b)|(b>c)
4、 =1 else =0; C if(a<=b) =0;D if(a>b) =1;二、 程序填空题(本题共30分,每小题2分)阅读下列程序说明和程序代码,在每小题提供的若干可选项中,挑选一个最佳的选项。(1)【程序说明】输入整数n,输出共有n层的金字塔图形。例如:【程序代码】# include <stdio.h>void main() int i,j,n; char c='*' printf("输入层数:"); scanf("%d",&n); for(i=1; (11) ;i+) for(j=1;j<=
5、n-i; (12) ) printf(" "); for(j=1; (13) ;j+) printf( (14) ,c); printf("n"); /换行,在内嵌循环结束后执行 (15) 【选项】(11)A i<=n+1B i<=nC i<nD i=n(12)A i+B j=i+1C j+D i=j+1(13)A j>=2*i-1B j<=2*i-1C j<=2*n-1D j<=n(14)A "%d"B "%s"C "%c"D "%f&quo
6、t;(15)A B )C ;D 以上选项都不正确 (2)【程序说明】输入年份判断是否闰年。【程序代码】#include <stdio.h>main() int year,leap; scanf("%d", (16) ); if (year%4=0) if (year%100=0) if (year%400=0) leap=1; (17) leap=0; else leap=1; else (18) ; if ( (19) ) printf ("%d is ", (20) ); else printf ("%d is not &quo
7、t;,year); printf ("a leap year.n");【选项】(16)A yearB &yearC &nD &leap(17)A else ifBelse;C elseD else if(leap=1)(18)A leap=0B leap=1C year=0D year=1(19)Ayear=1B leapC leap =0D以上选项都不正确(20)AleapB &leapCyearD&year (3)【程序说明】输入十个整数并保存在一维数组中,使数组中每个元素都增加10。【程序代码】#include <stdi
8、o.h>main() int a10,i; (21) p=a; for (i=0;i<10;i+) scanf("%d", (22) ); (23) ; for (p=a;p<(a+10);p+) (24) printf("n"); (25) ; for (;p<(a+10);p+) printf("%d ",*p); 【选项】(21)A int p10B int *p;C int p;D int a;(22)A a+B apC *pD p(23)A p+B a+C*p+D *a+(24)A *a=*a+10;
9、B *p=*(p+10);C *p=*p+10;D *a=*(a+i);(25)A p=a0B p=*aC p=aD *p=&a三、 程序阅读题(本题共20分,每小题2分)阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确的答案。(1)【程序说明】运行程序并回答问题。【程序代码】#include <stdio.h>#include <math.h>void main() int n,s=0; scanf("%d",&n); n=fabs(n); while(n>1) s=s+n%10; n=n/10; print
10、f("%dn",s);【选项】(26)程序运行时输入312,输出_(26)_。A 213B 6C 312D 3为。(27)程序运行时输入-5104,输出_(27)_。A-5104B4015C10D 51.04(2)【程序说明】运行程序并回答问题。【程序代码】# include <stdio.h>void main()int a,b,c,temp;a=5;b=12;c=6;printf("a=%d,b=%d,c=%dn",a,b,c);if(a<b) swap(&a,&b);if(a<c) swap(&a,&
11、amp;c);printf("a=%d,b=%d,c=%dn",a,b,c);if(b<c) swap(&b,&c);printf("a=%d,b=%d,c=%dn",a,b,c);void swap(int *,int *y) int temp; temp=*; *=*y; *y=temp;【选项】(28)程序运行时,第1行输出_(28)_。 A a=5,b=12,c=6B a=%d,b=%d,c=%dC a=5.0,b=12.0,c=6.0D a=12,b=5,c=6(29)程序运行时,第2行输出_(28)_。 A a=5,b=
12、12,c=6B a=6,b=12,c=5C a=12,b=5,c=6D a=12,b=6,c=5(30)程序运行时,第3行输出_(30)_。 A a=5,b=12,c=6B a=6,b=12,c=5Ca=12,b=5,c=6D a=12,b=6,c=5(3)【程序说明】运行程序并回答问题。【程序代码】#include <stdio.h>void main() char s140; int i=0; printf("nInput a string"); scanf("%s",s1); while (s1i !='0') if (
13、s1i>='A' && s1i <='') s1i=s1i+32; i+; printf("n%sn",s1);【选项】(31)程序运行时,输入abc30DCA,输出_(31)_。 A 62B abc30dcaC abcD DCA(32)程序运行时,输入Face,输出_(32)_。 A Face32B FACEC faceD f(4)【程序说明】运行程序并回答问题。【程序代码】#include <stdio.h>void main() FILE *fp; int i,j,y; scanf("%
14、d%d",&i,&j); fp=fopen("t.dat","w"); fprintf(fp,"%dn",i); if (i<j) =j; else if(i>j) =i; else =i+j; fprintf(fp,"%dn",); fclose(fp); fp=fopen("t.dat","r"); fscanf(fp,"%d%d",&,&y); printf("=%d,y=%dn&quo
15、t;,y); fclose(fp);【选项】(33)程序运行时,输入20 12 输出_(33)_。 A =20,y=20B =20,y=12C =12,y=20D =12,y=12(34)程序运行时,输入10 35输出_(34)_。 A =45,y=45B =10,y=10C =10,y=35D =35,y=35(35)程序运行时,输入12 12输出_(35)_。 A =24,y=24B =12,y=12C =24,y=12D =12,y=24四、 程序设计题(本题共30分,每小题10分)(1)编写程序,要求从键盘上输入一个数给,计算并输出分段函数y的值。y= +10 10< 010 5
16、-3 <0提示:平方根函数为:sqrt( ),指数函数为: ep( ),正切函数为: tan( ),正弦函数为: sin( ),所有这些函数在math.h 头文件中。(2)从键盘输入一个正整数n,编写程序计算1/1!+1/2!+1/3!+1/n!的值并输出结果, 要求定义和调用函数fact (n)计算n的阶乘。(3)随机产生20个大于等于1小于等于100的数,并按从大到小排序。请输出排序后的数,要求每行输出5个数。浙江理工大学2005/2006下学期期末考试-C程序设计试题参考答案与评分标准一、单选题(本题共20分,每小题2分)题号12345678910答案BCCBCACDAA二、程序填
17、空题(本题共30分,每小题2分)题号11121314151617181920答案BCBCABCABC题号2122232425答案BDACC三、程序阅读题(本题共20分,每小题2分)题号26272829303132333435答案BCACDBCACD四、编程题(本题共30分,每小题10分)1、# include <stdio.h># include <math.h>void main() float ,y; scanf("%f",&); if(>10) y=+10; else if(>=0) y=(sqrt(5*)+ep()/(+1
18、); else y=tan()*sin(); printf("y=%fn",y); 2、#include<stdio.h>float fact(int n) float t=1.0;int i=1; while (i<=n) t=t*i+; return(t); void main() int n,i ;float sum=1.0; scanf("%d",&n); for (i=2;i<=n;i+) sum=sum+1.0/fact(i); printf("%fn",sum);3、#include<stdio.h>#include<stdlib.h>void main() int i,j,n=0,temp,20; srand(time(NULL); printf("原始数据:n"); for(i=0;i<=19;i+) i=rand()%100+1; /产生20个随机数 if(i%5=0)pr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《Unit 3 Toys Lesson 2》(教学设计)-2023-2024学年人教新起点版英语一年级下册
- 《活动一“红领巾”文具店开张啦》(教学设计)-2023-2024学年四年级下册综合实践活动沪科黔科版
- 梭织服装创业团队介绍
- 电力系统运行稳定控制
- 橡胶制品生产中的胶浆管理
- 物联网在智能家居安防监控中的作用
- 防拥挤踩踏演讲稿
- 2《用浮的材料造船》教学设计-2023-2024学年科学五年级下册教科版
- 绘本的起源和基础知识
- 四年级语文上册 第二单元 习作 小小“动物园”教学实录 新人教版五四制
- 【网红李佳琦直播带货营销策略问题及对策13000字(论文)】
- 2025年安徽省合肥市中考数学模拟考试试卷及答案解析
- CB-T4528-2024《船舶行业企业应急管理要求》
- 保安人员增加补充协议书
- 《智慧农业》教学课件
- 尾矿库“一库一策”安全风险管控方案(编制范本)
- 2020年新人教版必修三《Unit 2 Morals and Virtues》单元教案(附导学案)
- 水质 浊度的测定 浊度计法HJ 1075-2019方法验证报告
- 旋耕机的类型、构造、使用及维护
- 抽象艺术知识讲解
- 医疗废物院感
评论
0/150
提交评论