《SQL Server数据库技术及应用》试卷C答案

《SQL Server数据库技术及应用》试卷C答案
《SQL Server数据库技术及应用》试卷C答案

吉林省经济管理干部学院吉林经济职业技术学院

2007--2008学年第二学期期末试题

系部:班级:姓名:学号:

---------------------装------------订------------线-------------------

《SQL Server数据库技术及应用》试题C

一、选择题(共计12分,每题2分)

1.删除数据库的命令是以下哪个选项?( C )

A.CREATE PROCEDURE

B.ALTER DATABASE

C.DROP DATABASE

D.CREATE DATABASE

2.下面关于聚集索引描述正确的是( C )

A.聚集索引存储关于重要词和这些词在特定列中的位置的信息。

B.添加、修改或删除表中数据时,聚集索引不会自动得到更新。

C.聚集索引会对表和视图进行物理排序,数据记录按聚集索引键的次序存储,因此聚集索引对查找记录非常有效,最适合范围搜索。

D.聚集索引不会改变表中行的物理排列顺序,它只是记录指向表中行的位置的指针,这些指针本身有序,通过这些指针可以在表中快速地定位数据。为一个表建立索引默认都是聚集索引。

3.以下哪些类型是表间的关系?( ABD )

A.一对多关系

B.多对多关系

C.二对二关系

D.一对一关系

4.以下哪个Transact-SQL语句能够向表中添加记录?( C )

A.CREATE

B.UPDATE

C.INSERT

D.DELETE

5.假设表A中存在大量数据,表B是需要使用的数据表,因此需要将表A中的数据完全复制到表B中,下列方法中最好的方法是( C )。

A.重新在新的数据库表中录入数据。

B.使用数据转换服务的输出功能把原来的数据保存为文本文件,再把文本文件拷贝到新的数据库中。

C.使用一个“INSERT INTO [新的表名] SELECT [旧的表名]”的插入语句进行数据添加。

D.使用一个“TRANCATE TABLE”语句进行数据删除。

6.假设ABC表中,A列为主键,并且为自动增长标识列,同时还有B列和C列,所有列的数据类型都是整数,目前还没有数据,则执行插入数据的T_SQL语句“INSERT ABC(A,B,C)VALUE (1,2,3)”的运行结果是( D )。

A.插入数据成功,A列的数据为1

B.插入数据成功,A列的数据为2

C.插入数据成功,B列的数据为3

D.插入数据失败

二、简答题(共计26分,每题2分)

1.SQL Server 2005系统数据库包括哪几个,分别有什么作用?

(1).master数据库

该数据库是最重要的系统数据库,保存了SQL Server系统的全部系统信息,如登录信息、SQL Server的初始化信息、系统的配置信息等。master数据库还记录所有其他数据库是否存在以及这些数据库文件的位置,如果master数据库不可用,则SQL Server无法启动。

(2).tempdb数据库

tempdb是一个临时的数据库,它为全部的临时表、临时存储过程及其他临时操作提供存储空间。每次启动SQL Server时,tempdb数据库都会被重建。

(3).model数据库

model是一个模板数据库。当创建一个新数据库时,系统将复制该数据库的内容到用户数据库中。

(4).msdb数据库

msdb数据库由SQL Server Agent管理警报和作业。

2.将“工商系”更改为“商学院”。

update系部信息set系部名称='商学院'where系部信息='工商系'

3.删除成绩表中状态是“0”(未参加考试)学生的记录。

delete*from成绩where状态='0'

4.创建一默认值,并将该默认值“男”绑定到学生基本信息表中的“性别”字段。

add constraint col_性别_def default'男'for性别

5.编写SELECT语句,显示生产厂家表中的厂家编号、厂家名称列的数据。

select厂家编号,厂家名称from生产厂家

6.查询商品小类表中的小类编号介于00001至00005元之间的信息

select*from商品小类where小类编号between 00001 and 00005

7.在SELECT语句中应用LIKE关键字完成下面功能:显示生产厂家表中厂家名称包含“海”的厂家数据

select*from生产厂家where厂家名称like'%海%'

8.查询商品信息表中条形码及商品名称的列表,结果如图1所示。

图1 在查询中使用常量

select'商品条形码:'+条形码,商品名称from商品信息

9.应用SELECT语句并使用CONVERT函数完成下面功能:列出操作员表中所有人员的操作员编码、姓名及出生日期,要求结果如图2所示形式。

图2 将结果由一种类型转换成另一种类型练习

select'编号为:'+操作员编码,'姓名为:'+姓名,'出生日期为:'+convert(varchar(20),出生日期,102)from操作员

10. 使用SELECT INTO语句创建一个新商品表,将商品信息表中的商品条形码、商品名称及零售价写入到新商品表中。SELECT条形码,商品名称,零售价

INTO新商品表

FROM商品信息

11.查询销售明细表中每种商品的销售次数,结果如图3所示。

图3 11题运行结果

SELECT 条形码,COUNT(条形码) AS 销售次数 FROM 销售明细 GROUP BY 条形码

12.使用HAVING子句查询销售明细表中商品被销售二次以上的商品条形码及销售次数,结果如图4所示。

图4 12题运行结果

SELECT条形码,COUNT(条形码)AS销售次数FROM销售明细GROUP BY条形码HAVING COUNT(条形码)>=2 13.使用COMPUTE BY子句查询商品信息表:查询出每个产品类型中其零售价低于20元的商品,计算每类商品零售价总计,结果如图5所示形式。

图5 计算每类商品零售价总计

SELECT大类编号,条形码,商品名称,进货价,零售价

FROM商品信息

WHERE零售价<=20

ORDER BY大类编号,条形码

COMPUTE SUM(零售价)BY大类编号

三、写出程序运行结果(共计12分,每题2分)

1.SELECT FLOOR(345.67),FLOOR(-345.67),FLOOR($345.67)

2.SELECT STUFF('吉林长春市',3,0,'省')

四、编程题(共计30分,每题10分)

1.声明变量@name、@price,分别赋值为商品信息的商品名称和零售价,并输出变量值,结果如图6所示。

图6 习题14运行结果

DECLARE @name varchar(50),@price decimal(18,2)

SELECT @name=商品名称,@price=零售价FROM商品信息

WHERE条形码='9787040156980'

PRINT'商品名称是:'+@name+' 价格为:'+CONVERT(varchar,@price)

2.定义多语句表值函数SearchProducts,并利用该函数查询零售价大于30元的商品信息,结果如图7所示。

图7 调用多语句表值函数的查询结果

CREATE FUNCTION SearchProducts(@ProductsPrice money)

RETURNS @ProductsInfo TABLE

(

条形码varchar(13),

商品名称varchar(50),

规格varchar(50),

零售价money

)

AS

BEGIN

INSERT @ProductsInfo

SELECT条形码,商品名称,规格,零售价

FROM商品信息

WHERE零售价>@ProductsPrice

RETURN

END

GO

SELECT*FROM SearchProducts(30)

3.存储过程在学生成绩管理系统中的应用:创建存储过程p_stu3,要求能够根据学生学号显示学生的姓名及各科成绩(说明:学生成绩与学生姓名分属于不同的两个表)。

create procedure p_stu3

@stunum varchar(10)

as

select学生基本信息.姓名,成绩.科目,成绩.成绩from学生基本信息,成绩

where学生基本信息.学号=@stunum and学生基本信息.学号=成绩.学号

c语言期末测试题附答案

c语言期末测试题附答 案 集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

课程代码:A100002 座位号: 《计算机技术基础(C 语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年 月 日 第一 部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答 案,答对一题得 2 分,共 30 分) 1、以下关于C 语言标识符的描述中,正确的是 【 】。 A )标 识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与area 是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【 】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d \n”,i,j,k); 3、判断char 类型的变量c1是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是 【 】。 A )’a’&&’b’ B )a<=b C )((a>b)||(b0;i--);后,变量i 的值为 【 】。 A )10 B )9 C )0 D )1 8、若有int *p1, *p2,k; 不正确的语句是 【 】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】

C语言程序设计模拟试题1附答案

《C语言程序设计》模拟试卷一 一、单项选择题(每题2分,共30分) 1、下列有关C语言的叙述中错误的是()。 A) C语句必须以分号结束 B) 任何一个C程序中有且只有一个主函数 C) 复合语句在语法上可被看作一条语句 D) C程序中对数据的任何操作都可由运算符实现 2、以下不能定义为用户标识符的是()。 A) MAIN B) _HJ C) 2ong D) LINE1 3、下列符号中用来表示C语言中的回车换行的是()。 A) \r B) \n C) \b D) \t 4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为()。 A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 1 5、已知ch为字符型变量,下面表达式中正确的是()。 A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ” 6、以下能正确定义一维数组的是()。 A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”; C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5}; 7、以下语句中能正确定义变量并赋初值的是()。 A) char c=65; B) float f=f+1.1; C) double x=12.3e3.6; D) int m=n=2.0; 8、在执行下列程序时输入:1357924,则程序的运行结果为()。 main( ) { int x, y; scanf(“%2d%2d”,&x,&y); printf(“%2d”,x*y); } A) 13 B) 1357 C) 74 D) 741 9、执行下列程序段后输出的结果是()。

c语言期末考试及答案讲解

C语言考试模拟试卷 1.若有定义:char c;int d;程序运行时输入:c=1,d=2<回车>,能把字符1输入给变量c、整数2输入给变量d的输入语句是 A、scanf("c=%d d=%d",&c,&d); B、scanf("c=%c d=%d",&c,&d); C、scanf("c=%d,d=%d",&c,&d); D、scanf("c=%c,d=%d",&c,&d); 【答案】D 【解析】scanf()函数中,%d对应的参数是整数型地址,%c对应参数为char 型地址,C,A选项错误;如果输入地址有多个,应该用逗号隔开,B选项错误,故答案为D选项。 2.以下叙述错误的是 A、在进行模块化程序设计的时候,应首先完成每个模块的编写调试,再集中考虑主程序中的算法 B、同一程序各模块可由一组人员同时进行编写调试,可提高编写程序的效率 C、模块化的程序设计是采用自顶向下、逐步细化的原则 D、程序的每个模块都可通过三种基本结构实现 【答案】A 【解析】结构化程序设计把一个复杂问题的求解过程分阶段进行,需要保证自顶向下、逐步细化、模块化设计、结构化编码。进行模块化设计时,首先设计框架,并定义和调试好各个模块之间的输入输出关系,然后完成各个模块的编写调试后

再集中编译,模块化的程序设计采用自顶向下、逐步细化的原则,A选项叙述错误,C选项叙述正确。各个模块可以由不同人员同时进行编写调试,提高编写程序的效率,B选项叙述正确。结构化程序主要由3种基本控制结构组成,顺序结构、选择结构、循环结构,这三种基本结构可以解决任何复杂的问题,D选项叙述正确。故选择A选项。 3.设有定义:int a=0,b=1,c=1; 以下选项中,表达式值与其它三个不同的是 A、b=a==c B、a=b=c C、a=c==b D、c=a!=c 【答案】A 【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类型相同才能实现赋值。成功实现赋值后以左值为返回值。逻辑表达式成立则返回1,不成立返回0。A选项逻辑表达式a==c不成立(0),则 b=0,表达式值为0。B选项中将c赋值给b,b=1,再将b赋给a,a=1,表达式值为1。C选项逻辑表达式c==b成立(1),则a=1,表达式值为1。D选项逻辑表达式a!=c成立(1),则c=1,表达式值为1。A选项与其他选项不同,A选项正确。 4.设有两行定义语句:

C语言程序设计模拟试题A附答案

《C语言程序设计》模拟试卷A 一、单项选择题(每题2分,共20分) 1、下列有关C语言的叙述中错误的就是(D)。 A) C语句必须以分号结束 B) 任何一个C程序中有且只有一个主函数 C) 复合语句在语法上可被瞧作一条语句 D) C程序中对数据的任何操作都可由运算符实现 2、以下不能定义为用户标识符的就是(C)。 A) MAIN B) _HJ C) 2ong D) LINE1 3、以下能正确定义一维数组的就是(C)。 A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”; C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5}; 4、执行下列程序段后输出的结果就是(C)。 x = 9; while (x > 7) { printf(“*”); x- -; } A) **** B) *** C) ** D) * 5、设char str1[10] = “ABCDE”, str2[10] = “xyz”; 则执行语句 printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果就是(D)。 解析: strcpy(str1,str2); 后,str1[] 里就是"XYZ", Z 后面有字符串结束符 strcpy(str1,str2); 执行后,函数返回的就是str1, 因为str1[] 里就是新值"XYZ", 而 strlen(strcpy(str1,str2)) 就就是strlen(str1的新值),所以得3。 strlen 统计到字符串结束符以前,即,不计入字符串结束符。 A) 9 B) 8 C) 5 D) 3 6、若用数组名作为函数调用的实参,则传递给形参的就是(A)。

C语言自学考试模拟试题及答案

C语言自学考试模拟试题及答案 一、单项选择题 1.各种基本数据类型的存贮空间正确的长度排列为_____C_____. A.Char12?15:6>7?8:9)的值为____C________. A 9 B 8 C 15 D. 1 7.若x=5,y=3 则y*=x+5;y的值为___D____________. A. 10 B. 20 C. 15 D. 30 8.C语言的输入与输出操作是由______C______完成的。 A.输入语句 B.输出语句

大学C语言期末考试习题集(带详解答案)

一、单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从 C开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是( B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A) %x B) a+b C) a123 D) 123 选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai

C语言期末考试试题及答案

个人收集整理-仅供参考 2008-2009学年第一学期期末考试试卷 考试说明:本课程为闭卷考试,可携带书写与修正文具,满分为:100 分. 考试结束后请将后页答题卡与试卷分开上交 ..... 一、单选题<每题2分,共30分) 1.以下叙述正确地是 ______ . A)C程序地每行只能写一条语句 B>语言本身没有输入输出语句 C)在C程序中,注释说明只能位于一条语句地后面 D)在多函数地程序中,main函数必须放在其它子函数地定义之前 2.以下不正确地常量表示形式是 ______ . A> 0.45 B>0XF5 C>‘\85’D> 32.67E-5 3. 以下不正确地变量名是 ______ . A)R&B B> _max C>INT D> SUM3 4. 以下正确地一组语句是 ________. A> int x=y=5; B> int n; scanf("%d",&n>;int a[n]; C> char a,*p; p=&a; D> char s[10]; s="hello"; 5. 若以下变量均已正确定义和赋值,则正确地语句是 ________. A> a=b==5; B> y=x%2.0; C> x+y=10; D> n=8=2*4; 6.下面各组中与给出地程序段功能不等价地是 ________. if(a>0> b=1; else if(a==0> b=0; else b=-1; A>if(a>0> b=1; B>if(a>0> b=1; C>if(a>0> b=1; D>if(a>=0> if(a==0> b=0; else if(a==0> b=0; if(a>0> b=1; if(a<0> b=-1; if(a<0> b=-1; else b=-1; if(a==0> b=0; else b=0; if(a<0> b=-1; 7. 运行下面程序段,若输入abc#,则程序输出是:________. char c;int v1=0,v2=0; while((c=getchar(>>!='#'> { switch(c> { case 'a':v1++; default :v1++;v2++; case 'c':v2++; } } printf("v1=%d,v2=%d\n",v1,v2>; A>2,2 B>3,5 C> 3,4 D>2,5

二级C语言资料模拟及历年考试编程题答案

二级C语言资料模拟及历年考试编程题答案

作者: 日期:

模拟一 试题7某客户为购房办理商业贷款,选择了按月等额本息还款法,在贷款本金(loan )和月利率(rate)一定的情况下,住房贷款的月还款额(mo ney)取决于还款月数(mo nth), 计算公式如下。客户打算在5?30年的范围内选择还清贷款的年限,想得到一张“还款年限—月还款额表”以供参考。 rate(1 rate)month money loa n (1 rate)month 1 (1)定义函数cal_power(x, n)计算x的n次幕(即x n),函数返回值类型是double。 (2)定义函数cal_mo ney(loa n,rate,mo nth)计算月还款额,函数返回值类型是double,要求调用函数cal_power(x, n)计算x的n次幕。 (3)定义函数main(),输入贷款本金loan (元)和月利率rate,输出“还款年限—月还款额表”,还款年限的范围是5?30年,输出时分别精确到年和元。要求调用函数 cal_mon ey(loa n, rate,m on th)计算月还款额。 #in clude double cal_power(double x,i nt n) { int k; double result=1; for(k=1;k<=n; k++) result*=x; return result; } double cal_ mon ey(double loa n, double rate,i nt month) { double result=cal_power(1+rate,m on th); result=loa n*rate*result/(result-1); return result; } void mai n() { int k,year; double loa n,mon ey,rate; sca nf("%lf%lf", &loa n,& rate); for(year=5;year<=30;year++) { mon ey=cal_m on ey(loa n,rate,12*year); prin tf("year=%d,m on ey=%.0f\n",year,m on ey); } } 试题8编写程序,输入一批学生的成绩,遇0或负数则输入结束,要求统计并输出优秀(大 于85)、通过(60?84)和不及格(小于60)的学生人数。 运行示例:Enter scores: 88 71 68 70 59 81 91 42 66 77 83 0 > =85:2

C语言期末考试复习题及答案

C语言期末考试复习题及答案 一、选择题:下列各题A)、B)、C)、D)四个选项中只有一个是正 确的,请将正确的选项涂写在答案纸上。答在试卷上不得分。 (1)C语言规定:在一个源程序中,main函数的位置 D 。 A)必须在最后B)必须在系统调用的库函数的后面。 C)必须在最开始。。D)可以任意 (2) C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 A 。 A)必须为字母或下划线。。B)必须为下划线。 C)必须为字母D)可以是字母、数字和下划线中的任一种字符。 (3)下面四个选项中,均是正确的八进制数或十六进制数的选项是 B 。 A)-10 0x8f -011 B) 010 -0x11 0xf1 C) 0abc -017 0xc D) 0a12 -0x123 -0xa (4) C语言中int型数据在内存中占两个字节,则unsegned int取值范围是 A 。 A)0 ~ 65535 B)0 ~ 32767 C)-32767 ~ 32768 D)-32768 ~ 327687 (5) 若有定义:int a = 7; floa x = , y = ; 则表达式x + a % 3 * (int) (x + y) % 2/4 的值是 D 。 A) B) 0.00000 C) D) (6)已知ch是字符型变量,下面不正确的赋值语句是 B 。 A)ch = 5 + 9 ; B) ch= ' a + b '; C) ch = ' \ 0 '; D) ch= '7' + '6' ; (7) 设x , y和z是int型变量,且x = 3, y = 4 , z = 5 则下面表达式中值为0的

c语言模拟试卷及答案

c语言模拟试卷及答案

模拟试题 模拟试卷一 一、选择题 1.逻辑运算符两侧运算对象的数据____ A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型数据 D.可以是任何类型的数据 2.下面程序段的输出结果是____ int a=023; printf("%d\n",--a); A.23 B.17 C.18 D.24 3.若有定义:int a[3][4]; 下面不能表示数组a[1][1]的是____。 A. *(a[1]+1) B. *(&a[1][1]) C.(*(a+1))[1] D. *(a+5) 4.设有语句:char str1[]="string",str2[8],*str3,*str4="string";则______不是对库函数strcpy的正确调用。 A. strcpy(str1,"HELLO1"); B. strcpy(str2,"HELLO2"); C. strcpy(str3,"HELLO3"); D. strcpy(str4,"HELLO4"); 5.设有定义: int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*prt)[3]=a,*p=a[0]; 则下列能够正确表示数组元素a[1][2]的表达式是______。 A. *((*prt+1)[2]) B. *(*(p+5)) C. (*prt+1)+2 D.*(*(a+1)+2) 6.有以下程序 struct abc { int a, b, c; }; main() { struct abc s[2]={{1,2,3},{4,5,6}}; int t; t=s[0].a+s[1].b; printf("%d\n",t); } 程序运行后输出结果是____。 A.5 B.6 C.7 D.8 7.有以下程序: #include union pw { int i; char ch[2]; } a; main()

2019年C语言期末考试题及答案

的一个)。, 求最小值出现的位置(如果最小值1、给定n个数据例如:输入的数组为:求出第一次出现的位置即可)。出现多次, 1 2 3 4 1 5 6 12 18 9k+1i<=n最大值第三行五行 10 11 2的值并输出。计算公式为:2、编写程序求无理数e e=1+1/1!+1/2!+1/3!+......+1/n! 求出的最大数为18,行坐标为2,列坐标为1。。当1/n!<0.000001时e=2.718282 7、求一个n位自然数的各位数字的积。(n 是小于10的 自然数)求一批数中最大值和最小值的积。3、 2、某一正数的值保留位小数,对第三位进行四舍48、计算n门课程的平均值,计算结果作为函数值返回。五入。例如:若有5门课程的成绩是:92,76,69,58,88,

则函数的值为76.599998。 x,5、从键盘上输入任意实数求出其所对应的函数值。 z=(x-4)的二次幂(x>4) 9、求一批数中小于平均值的数的个数。 z=x的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10)z=|x|+20(其他) M×N求出、6整型数组的最大元素及其所在的行坐标10、编写函数判断一个整数m的各位数字之和能否被7整除,及列坐标(如果最大元素不唯一,选择位置在最前面 0。调用该函数找出可以被7整除则返回1,否则返回 100~200之间满足条件的所有数。 15、实现两个整数的交换。 例如:给a和b分别输入:60和65,输入为:a=65 b=60 void fun(int tt[M][N],int pp[N]),11、请编一个函数16、将字符串中的小写字母转换为对应的大写字母, N列的二维数组,求出二维数组每列M tt指向一个行其它字符不变。

C语言模拟题目及答案

:题.选择一1.设float x,y;则以下不合法的赋值语句是______。 x*=y+8; x=y=0; ++x; y=(x%2)/10; 2. 设int k=017,g=111; 执行语句printf(%d,%x,k,g); 的输出是_____。 15,6f f,6f f,111 15,111 3. 对语句for(i=0; ; i++);可理解为_____。 for(i=0;0;i++); for(i=0;!0;i++); for(i=0;3>4;i++); for(i=0;!5;i++); 4. 下面对数组的初始化,错误的是_____。 char s[5]=abc; char s[5]={'a','b','c'}; char s[5]= ; char s[5];s=abc; 5. 设有程序段:int k=10;while(k=0)k=k-1;则下面描述中正确的是______。 是无限循环 while循环执行10次 循环体语句一次也不执行循环体语句只执行一 次 6. 如果x为int型且为5,则执行if(x--<5) printf(%d,x);else printf(%d,x++);后输出结果是______。 3 4 5 6 7. 有如下函数调用语句func(rec1, rec2+rec3, (rec4, rec5));,该函数调用 语句中,含有的实参个数是____。 3 4 5 有语法错 8. 在C语言的if语句中,可用作条件判断的表达式为_____。 算术表达式逻辑表达式 关系表达式任意表达式 9. 若给定条件表达式(n)?(c++):(c--),则与表达式中(n)等价的表达式是_____。 n==0 n==1 n!=0 n!=1 10. 一个函数返回值的类型取决于_____。 调用该函数的主调函数的类型定义函数时指定或缺省 的函数类型调用函数时临时决定 return语句中表达式的类型答案:D A B D C B A D C B 二.填空题: 1.如果static int y=8;main(){ int y=3;printf(%d, y);}则输出结果是______。 2. 若int x=120,y=50; 执行printf(%d,(y,x));后输出结果是______。 3. 若int i, a[10]; 则执行语句 for(i=9;i>=0;i--) a[i]=i+5; 后,a[8]的 值为__________。 4. 在C语言中是没有输入输出语句的,而是通过提供库函数______和printf

大一c语言期末试题及参考答案word版本

2004级信息学院《C语言设计》考试试题 一、判断下列语句或程序的对错。 10分√ 1 int x=y=z=’0’; (×) y,z没有定义 2 #include ; (×)不能有分号,#开头的结尾均不能有分号; 3 printf(“%s\n”,”c language”); (√) 4 float a[100]; int *p=a; (×)数据类型不匹配 5 char str[20]; 6 int data[4]={0,1,2,3,4}; (×)五个元素,但是只有四个单元 7 float x=1.45e+310L; (×)数值越界 8 int xyz-1=2; (×) 9 int x=‘\xae’ ; (√) 10 int *p,a[2][3] ; p=a ; (×)数据类型不匹配 二计算下列表达式的值 10分 设 unsigned int a=10,b=17,c=5,d=3; float f ; (1)f=b/c ( 3.0 ) (2)!(a+b)+c-1&&b+c/2 ( 1 ) (3)(a^b)+(c>>1+d) ( 0x1b ) (4)a+=b%=a=b ( 17 ) (5)a=2,b=a*++b ( 2 ) 三程序改错 10分 (1)求两个浮点数的平方和及平方差 #include float calculate (float x,float y,float *sub);添加函数原型声明 main () { float a,b; float add_reasult, sub_result; scanf (“%f,%f”,a,b); add_result=calculate(a,b,&sub_result); printf( “a*a+b*b=%d,a*a-b*b=%d\n”,add_result,sub_result); } float calculate (float x,float y,float *sub) 添加函数类型 { float *temp; 应该直接定义为变量float temp; sub=a*a-b*b ; *sub=a*a-b*b;

C语言程序设计模拟题(含答案).doc

C语言程序设计试题 一、单项选择题(本题共 25 小题,每小题 2 分,共 50 分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其正确答案涂写在答题卡 上。错选、多选或未选均无分。 1.以下正确的 C 语言自定义标识符是 __A____。 A. _1a B. 2a_ C. do D. 2.在 C 语言中,错误的常数表示是 ___D____。 A. 0L C. '6' D. 设 int a, x=2; 执行语句 a=x>03*x:x=10 ;后,变量x 的值是 ___B____。 A. 1 B. 2 C. 6 D. 10 4.设有以下程序段: int x=2,y=2,z=0,a; a=++x||++y&&z++; printf("%d,%d,%d\n",x,y,z); 执行后输出的结果是 ___C______。 A.2,2,0 B. 3, 3,1 C.3,2,0 D.3,2,1 5. 在 C 语言中,字符串"\\TOP\t\65\""的长度是__B_____。 A. 5 B. 7 C. 8 D. 12 6. 设 float x ,由键盘输入: , 能正确读入数据的输入语句是 ___C_____A_。 A. scanf("%5f",&x) B. scanf("%5d",&x); C. scanf("%f",x); D. scanf("%s",&x); 7.逗号表达式a=2*6,a*3,a+5的值是___B______。

A. 12 B. 17 C. 36 D. 41 8.C 语言程序中 , 整型常量的书写形式不包括 ___A______。 A.二进制 B.八进制 C. 十进制 D.十六进制 9.在C语言中,下列运算符中结合性属于自右向左的是________B_。 A. && B. -- C.<< D. -> 10.设int x;,则与计算︱x︱等价的表达式是___B______。 A. x>0-x:x B. x>0x:-x C. x<0x:-x D. x<0-x:-x 11.执行下面的程序段后, k 的值是 __A_____B。 int k=1,n=325; do { k*=n%10;n/=10;}while(n); A. 3 B. 30 C. 523 D. 325 12. 表达式的值为0 的是 ________C_。 A. 5/5%5 B. 5>2 C. !4 D. 0x7&&7 13. 设 int a=11, b=2 ;执行下述程序段后,变量 a 和 b 的值分别是 ___B____。 do { a/=b++; }w hile(a>b); A. 1,3 B. 1,4 C. 2,3 D. 2,4 14.在C语言中,下列错误的说法是_______C。 A.函数可以递归调用

C语言期中测试题(含答案)

1.C 语言源程序文件的后缀是 .c 。 2.结构化程序由 顺序结构 、 选择结构 、 循环结构 三种基本结构组成。 3.在C 语言中,用关键字 int 定义基本整型变量,一个基本整型变量系统分配 2 字节,用关键字 float 定义单精度实型变量,一个单精度实型变量系统分配 4 字节,用关键字 double 定义双精度实型变量,一个双精度实型变量系统分配 8 字节。 一、选择 1. 以下选项中正确的实型常量是( A ) A .12. B .-20 C . 1,000 D . 4 5 6 2.以下选项中不正确的实型常量是(无正确答案) A . B . C . D . 456e-2 3. 以下选项中不合法的用户标示符是( C ) A. _123 B .A12_1 C . A $ D .Dim 4.C 语言中运算对象必须是整型的运算符是( A ) A .% B ./ C .! D .* 5. 若变量已正确定义并赋值,符合C 语言语法的表达式是( B ) A .a=a+7 ; B .a=7+b+c,a++ C . int%4) D .a=a+7=c+b 6.下面合法的赋值语句是( C ) A .a=b=58 B .k=int(a+b) C . a=58,b=58 D .--i 7.若变量已正确定义为int ,要给a,b,c 输入数据,正确的输入语句是( D ) A .read(a,b,c) B .scanf(“%d%d%d ”,a,b,c) C .scanf(“%D%D% D ”,&a,&b,&c) D .scanf(“%d%d%d ”,&a,&b,&c) 8.若变量a,b,t 已正确定义,要将a 和b 中的数进行交换,以下选项中不正确的语句 组是( C ) A .a=a+b,b=a-b,a=a-b; B . t=a,a=b,b=t; C .a=t;t=b;b=a D .t=b;b=a;a=t; 9.若有正确定义语句: double x=; 语句printf(“%f\n ”,(int)(x*1000+/(double)1000);的输出结果是( D ) A .输出格式说明与输出项不匹配,输出无定值 B . C .! D . 10. 若有以下程序段: int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf(“%d,%d,%d\\n ”,a,b,c); 执行后的输出结果是( B ) A .3,0,-10 B .0,0,5 C .-10,3,-10 D .3,0,3 11.下列运算符中优先级别最高的是( A ) A . ! B .% C .-= D .&& 12.为表示关系:z y x ≥≥,应使用的C 语言表达式是( A ) A .(x>=y)&&(y>=z) B .(x>=y)AND(y>=x) C .(x>=y>=z) D .(x>=y)&(y>=z) 13.设a 、b 和c 都是int 型变量,且a=3,b=4,c=5,则以下的表达式中值为0的表达式 是( D )

C语言程序设计模拟试题3(附答案)

《C 语言程序设计》模拟试卷三 一、填空题。(每空2分,共16分) 1 ?在内存中,短整型变量占 _______ 字节,单精度实型变量占 ___________ 字节,字符型变量占 ____________ 字 节。 2?一个C 语言文件就是由若干个 _______________ 组成。 3 ?设有以下变量定义,并已赋确定得值 char w; int x; float y; double z; 则表达式:w*x+z-y 所求得得数据类型为 ____________________________ 。 4?若x 为int 类型,请以最简单得形式写岀与逻辑表达式 !x 等价得C 语言关系表达 式 _______________________________ 。 5.若有如下图所示五个连续得 int 类型得存储单元并赋值如下图,a[0]得地址小于a[4]得地址。p 与s 就 是基类型为int 得指针变量。请对以下问题进行填空。 a[0] a[1] a[2] a[3] a[4] (1 )若p 已指向存储单元 a[1]。 是 。 (2)若指针s 指向存储单元a[2],p 二、单项选择题。(每题 通过指针p,给s 赋值,使s 指向最后一个存储单元 a[4]得语句就 指向存储单元a[0],表达式s-p 得值就是 ________________________________ 2分,共40分) 1.设有int x=11; 则表达式(x++ * 1/3) 得值就是( ) A ) 3 B ) 4 C ) 11 D ) 12 2 ?下列程序得输岀结果就是() A) 3 B) 3、2 C) 0 main() {double d=3、2; int x,y; x=1、2; y=(x+3、8)/5、0; printf( “ %d \n ” , d*y); } 3?下列程序执行后得输岀结果就是 A) 6 6 6、0 6、0 C) 6 6 6、0 6、 7 D) 3、07 (小数点后只写一位)( ) B ) 6 6 6、7 6、7 D ) 6 6 6、7 6、0 main() { double d; float f; long l; int i; i=f=l=d=20/3; printf("%d %ld %f %f \n", i,l,f,d); scanf("%d", &d); } 4?下列变量定义中合法得就是(

c语言期末测模拟试题(附答案)

C 语言程序设计期末模拟试题 第 1页(共8页) 《C 语言程序设计期末模拟试题》 姓名: 学号: 专业: 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 【 】1、以下关于C 语言标识符的描述中,正确的是? A )标识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与area 是不同的标识符 【 】2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是? int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d \n”,i,j,k); A )12345678 B )123,456,78 C )123,45678 D )123,*45678 【 】3、判断char 类型的变量c1是否为数字字符的正确表达式为? A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 【 】4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是? A )’a’&&’b’ B )a<=b C )((a>b)||(b

大学C语言期末考试试题及答案

大学C语言期末考试试题 一选择题(7分,每小题0.5分) 1。C语言源程序的基本单位是()。 A 过程B函数C子程序D标识符 2.下列程序的输出结果是()。 main( ) { inta=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A7 B8 C9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534;a=(int)125.521%4;a=5<<2; A125,31,1 B125,1,20 C 125,31,20D125.534,2,20 5。设有如下程序段,下面描述中正确的是( )。 int k=10;while(k=0)k=k—1; A循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次 6。以下程序的输出结果为( ). int i; void prt() { for(i=5;i<8;i++) printf(”%c”,'*’); printf("\t"); } main( ) { for(i=5;i<=8;i++)prt( ); } A *** B ************ C *** *** D * ** 7。在C语言程序中,以下说法正确的是()。 A函数的定义可以嵌套,但函数的调用不可以嵌套 B函数的定义不可以嵌套,但函数的调用可以嵌套 C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8。以下函数调用语句中含有( )个实参. func((e1,e2),(e3,e4,e5)); A 2 B3 C5 D语法错误 9.以下程序的输出结果为(). #defineADD(x)x*x main( ) {int a=4,b=6,c=7,d=ADD(a+b)*c; printf(”d=%d",d);

C语言试卷及答案

一、选择题(每题2分,共40分) 1、C语言源程序的基本单位是( ) A.程序行 B.语句 C.函数 D.字符 2、C语言规定:在一个源程序中,main函数的位置()。 A.必须在最开始B.必须在系统调用的库函数的后面 C.可以任意D.必须在最后 3、在下列字符列中,合法的标识符是( ) A.p12&.a B.stud_100 C. water$12 D.88sum 4、在C语言中,要求运算的数必须是整数的运算符是() A./ B.! C.% D.= = 5、设有语句 int a =3;则执行了语句a + = a - = a*a;后,变量a的值是() A、3 B、0 C、9 D、-12 6、设a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a > b)&&(n=c>d)后n的值为() A、1 B、2 C、3 D、4 7、执行下列程序时输入:1234567,程序的运行结果是() main() { int x,y; scanf(“%2d%*2c%1d”,&x,&y); printf(“%d\n”,x+y); } A.17 B.46 C.15 D.9 8、下述程序的输出结果是() #include void main() {int x=-1,y=4; int k; k=++x<=0&&!(y--<=0); printf("%d,%d,%d",k,x,y);} A.0,0,3 B.0,1,2, C.1,0,3, D.1,1,2 9、为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 10、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是() main() {int x; scanf(“%d“,&x); if(x++>5)printf(“%d”,x); else printf(“%d\n”,x--); } A.7和5 B.6和3 C.7和4 D.6和4 11、若变量c为char类型,能正确判断出c为小写字母的表达式是( ) A. 'a'<=c<= 'z' B. (c>= 'a')||(c<= 'z') C. ('a'<=c)and ('z'>=c) D. (c>= 'a')&&(c<= 'z') 12、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。 if(x>y) z=x; x=y; y=z; A.x=10, y=20, z=30 B.x=20, y=30, z=30 C.x=20, y=30, z=10 D.x=20, y=30, z=20 13、以下程序的输出结果为

2019年C语言期末考试题与答案

1、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。 最大值第三行i<=n五行k+1 2、编写程序求无理数e的值并输出。计算公式为: e=1+1/1!+1/2!+1/3!+......+1/n! 当1/n!<0.000001时e=2.718282。 3、求一批数中最大值和最小值的积。 4、某一正数的值保留2位小数,对第三位进行四舍 五入。 5、从键盘上输入任意实数x,求出其所对应的函数值。 z=(x-4)的二次幂(x>4) z=x的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10) z=|x|+20(其他) 6、求出N×M整型数组的最大元素及其所在的行坐标 及列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。例如:输入的数组为: 1 2 3 4 1 5 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。 7、求一个n位自然数的各位数字的积。(n 是小于10的 自然数) 8、计算n门课程的平均值,计算结果作为函数值返回。 例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。 9、求一批数中小于平均值的数的个数。 10、编写函数判断一个整数m的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。 .专业资料.

.专业资料. 11、请编一个函数void fun(int tt[M][N],int pp[N]), tt 指向一个M 行N 列的二维数组,求出二维数组每列 中最大元素,并依次放入pp 所指一维数组中。二维 数组中的数已在主函数中赋予。 12、编写函数fun 用比较法对主程序中用户输入的具有10 个数据的数组a 按由大到小排序,并在主程序中输出 排序结果。 13、编写main 程序调用函数fact 求解从m 个元素选n 个元 素的组合数的个数。计算公式是:组合数=m!/(n!.(m-n)!)。 要求:m 不能小于n ,否则应有容错处理。 说明:函数fact(x)的功能是求x!。 14、找出一批正整数中的最大的偶数。 15、实现两个整数的交换。 例如:给a 和b 分别输入:60和65,输入为: a=65 b=60 16、将字符串中的小写字母转换为对应的大写字母, 其它字符不变。 17、求一个四位数的各位数字的立方和。 18、求一组数中大于平均值的数的个数。 例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函 数值为3。 19、对任意输入的 x ,用下式计算并输出 y 的值。 5 x<10 y= 0 x=10 -5 x>10 20、求给定正整数m 以内的素数之和。 例如:当m=20时,函数值为77。 21、判断整数x 是否是同构数。若是同构数,函数返回1; 否则返回0。x 的值由主函数从键盘读入,要求不大

相关文档
最新文档