2010 C语言实验与习题2010final

时间:2019-05-12 16:59:40下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《2010 C语言实验与习题2010final》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《2010 C语言实验与习题2010final》。

第一篇:2010 C语言实验与习题2010final

一、目录一、二、1.2.三、四、1.2.3.4.5.6.7.8.9.10.11.12.五、1.2.3.六、1.2.3.4.5.6.1)2)

七、目录.............................................................................................................................................................................1 编程环境介绍.............................................................................................................................................................2

前言:..............................................................................................................................................................2 编程环境介绍...................................................................................................................................................2 福建省高等学校计算机应用水平等级考试 二级(C语言)考试大纲.................................................................3 理论习题.....................................................................................................................................................................6

第一章 第二章.................................................................................................................................................6 第三章 数据类型、运算符和表达式.............................................................................................................7 第四章 顺序程序设计...................................................................................................................................10 第五章 选择程序设计...................................................................................................................................11 第六章 循环控制...........................................................................................................................................14 第七章 数组..................................................................................................................................................15 第八章 函数..................................................................................................................................................18 第九章 预处理命令.......................................................................................................................................21 第十章 指针..................................................................................................................................................23 第十一章 结构体与共用体...........................................................................................................................27 第十二章 位运算...........................................................................................................................................30 第十三章 文件...............................................................................................................................................30 实验部分...................................................................................................................................................................32 编程题............................................................................................................................................................32 填空题............................................................................................................................................................40 改错题............................................................................................................................................................47 真题训练(历届试题选编)....................................................................................................................................54 数据类型、运算符与表达式.........................................................................................................................54 分支语句........................................................................................................................................................58 循环................................................................................................................................................................65 数组................................................................................................................................................................72 综合题............................................................................................................................................................79 程序改错........................................................................................................................................................89 要求................................................................................................................................................................89习题................................................................................................................................................................89 教学大纲...................................................................................................................................错误!未定义书签。

二、编程环境介绍

1.前言:

C是最常见的一种高级程序设计语言,高等院校理工科专业都开设“C程序设计”课程作为程序设计入门语言。为此,福建省高校计算机水平考试委员会将其列入福建省高等院校计算机应用水平等级考试(二级C)考试科目,旨在让学生初步掌握程序设计的方法,为今后学习其他计算机课程打下基础,也为今后工作打下计算机应用基础。

目前,以Turbo C为平台介绍各种算法、试题解答的书还不多。笔者从2005年担任诚毅学院工科类专业的“C程序设计”课程教学,多年来注意搜集、整理、编写Turbo C有关的算法例题、试题解答,在课堂上进行融通讲解,系统地从数值处理、图形输出、数据处理、过程模拟、算式求值、文件(字符、)指针处理、数字组合、图形设计八个方面详细地介绍算法例题、试题解答程序,着重培养学生分析问题、解决问题、调试纠错的能力,让学生在扩大计算机知识面的同时,提高实际编程能力、操作能力。编写仓促,错误之处难免,欢迎指正。

2.编程环境介绍

时间:共120分钟。编程环境:Turbo C2.0 常用快捷键:  Alt键+菜单上的红色字母可打开相应的菜单,例如:

Alt+F 打开文件菜单(加载一个已存在的程序、保存程序均在此菜单下)Alt+R 打开运行菜单 

Alt+Tab 切换考试程序与turbo C Alt+Enter 切换turbo C窗口大小 

Alt+F5 查看程序运行结果 F5:全屏/恢复 F6:切换活动窗口

本学期作为非计算机专业学生具体要求

1-9章要求学生掌握理论的基础上自己设计程序 10章以后要求学生理解知识点,能够读懂程序2

三、福建省高等学校计算机应用水平等级考试 二级(C语言)考试大纲

I、考试目的

本考试考查考生以下知识与能力: 1.掌握C语言的基本概念和语法知识;

2.了解C语言程序与函数的结构特点,主函数及程序执行流程; 3.正确使用顺序、选择、循环三种结构,具有结构化程序设计的能力; 4.掌握常用算法,能运用算法描述工具——流程图;

5.能使用Turbo C集成开发环境,完成源程序的编写、编译,运行与调试程序; 6.具有综合运用以上知识编写程序,解决计算与数据处理类问题的初步能力。

II、考试内容

一.C语言基础

1.C语言特点(识记); 2.C语言程序基本组成(识记): C语言程序的结构与主函数,程序的书写格式与规范; 3.基本数据类型:

标识符与基本数据类型(识记),常量与变量(领会),内存的概念(识记); 4.基本输入、输出函数(领会):

格式输入和格式输出函数,非格式化输入、输出函数; 5.运算符与表达式(简单应用):

算术运算,增1与减1运算,关系运算,逻辑运算,条件运算,位运算,赋值运算,类型转换,逗号运算,长度运算符,运算符的优先级与结合性。

二.程序控制结构

1.C语言的语句(识记):

C语言语句的语法及书写规范; 2.顺序结构(领会):

程序设计的流程图,程序控制结构中的顺序结构,复合语句; 3.分支结构(简单应用):

if结构、if结构的多种形式,switch 结构与多分支结构; 4.循环结构(综合应用):

当型循环,直到型循环,break语句与continue语句。

三.构造型数据

1.数组(综合应用):

一维数组,字符数组,二维数组;

期末复习题集

2.结构类型:

结构类型的概念,结构类型定义及结构变量说明,结构变量的使用(领会),结构变量的初始化,结构数组的初始化(识记); 3.联合类型(识记):

联合类型的概念,联合类型定义和联合变量说明,联合类型的使用; 4.枚举型(识记):

枚举型的定义和使用枚举型变量; 5.typedef的用途(识记):

使用typedef定义新类型名。

四.指针

1.指针与指针变量(识记):

指针的基本概念,指针变量的定义,指针变量的赋值; 2.指针运算符(领会):

地址运算符与指针运算符、间接寻址; 3.指针与数组(简单应用):

指针与一维数组,移动指针及两指针相减运算,指针比较,指针与字符串,指针与二维数组;

4.指针数组与指向指针的指针(识记):

指针数组,定义指针数组,指针数组的应用,指向指针的指针,定义指向指针的指针变量,指向指针的指针变量的应用; 5.指针与结构(领会):

指向结构变量的指针变量,指向结构数组的指针变量。

五.函数

1.常见的系统库函数(识记):

输入、输出函数(stdio.h): printf, scanf, getchar, putchar, puts,gets;字符与字符串函数(string.h):strcpy, strcat, strcmp, strlen; 简单数学函数(math.h):sqrt, fabs, sin, cos, exp, log, log10, pow; 2.用户自定义函数(简单应用):

函数定义、调用和说明,函数返回值,函数参数; 3.函数之间的数据传递(领会):

函数数据按数值传递,函数数据按地址传递,利用函数返回值和外部变量进行函数数据传递,结构变量作为函数参数传递; 4.函数的嵌套调用及递归调用(领会):

函数的嵌套调用、函数的递归调用; 5.局部变量与全局变量(识记):

局部变量与全局变量的定义、初始化及作用范围; 6.变量的存储类型与变量的初始化(领会):

局部变量与全局变量的生存期,静态变量与动态变量的定义、初始化、作用范围及生存期;

C语言练习题

7.编译预处理(领会):

文件包含,无参宏定义。

六.文件

1.文件的基本概念,C语言中的两种文件(识记);

2.文件的打开、关闭和文件结束测试,文件的读写,文件的定位(识记)。

七.算法与编程(综合应用)

1.用C表达式或函数计算相对应的数学表达式; 2.连加与连乘的计算,级数的计算; 3.冒泡法排序与选择法排序; 4.矩阵的简单运算与显示; 5.字符串操作; 6.文件编程应用。

八.使用Turbo C集成开发环境调试程序 1.源程序的编写、编辑与改错(领会); 2.集成环境下的求助Help(识记); 3.程序的编译与目标代码的生成(识记); 4.程序的调试(综合应用):

单步运行程序,运行到光标处,断点设置,变量内容的跟踪、显示与修改;5.了解Turbo C程序的常见错误提示(识记)。

Ⅲ、考试说明

一.考试形式

采用无纸化上机考试;

考试环境: Windows XP 简体中文版,Turbo C 2.0或以上集成环境(IDE); 考试时间: 90分钟。

二.试卷题型结构

1.选择题(20小题)40%;

2.程序改错题(2小题)20%;

3.程序填空题(2小题)20%;

4.编程题(2小题)20%。

期末复习题集

四、理论习题

1.第一章 第二章

1.C语言的函数体由()括起来。A)<>

B)

{}

C)

[]

D)

()2.下面叙述错误的是()A)一个C源程序可由一个或多个函数组成 B)构成C语言源程序的基本单位是语句 C)C源程序中大、小写字母是有区别的 D)若一条语句较长,可分写在下一行或多行上

3.下面叙述正确的是()A)每行最多只能写两条语句

B)main()函数必须位于源程序文件的开头

4.C源程序中main()函数的位置()。A)必须位于程序的最前面 B)必须在自定义函数前面

5.结构化程序设计不包括()。A)最优化

B)自顶而下,逐步细化

6.下面叙述中,()不是结构化程序设计中的三种基本结构之一。A)数据结构

B)

选择结构

C)所有语句都必须以分号;结束 D)

程序中必须含有自定义函数

C)必须在系统库函数后面 D)

可以在自定义函数后面

C)模块化设计 D)

结构化编码

C)

循环结构

D)顺序结构

C语言练习题

2.第三章 数据类型、运算符和表达式

1.()为非法的字符串常量 A)“056”

B)

„123‟

2.()为正确的用户标识符。A)min-5

B)

max_at 3.以下()是正确的变量名。A)a.bee

B)

-p11 4.以下()是正确的变量名。A)5f

B)

if 5.以下()是正确的常量。A)E-5

B)

1E5.1 6.以下()是不正确的字符串常量。A)'abc'

B)

“12'12” 7.以下()是正确的字符常量。A)“c”

B)

'' 8.char型变量存放的是()。A)ASCII代码值 B)字符本身

9.()为合法的常量。A)5,236

B)

1.23E+8 10.()为正确的字符常量 A)‘84’

B)

‘bcd’

11.若有定义:int b=-15;则()为正确的赋值表达式。A)*b=6

B)

b=*5 12.若有定义:int x=2;则正确的赋值表达式是()。A)a-=(a*3)

B)

double(-a)13.若有定义:float x=2,y; int a=3 ;语句y=1*(x+a)/3;运行后,y的值为(A)2.0

B)

1.666667 14.若有定义:int a,b=5;语句a=(b/2)+b%2;运行后,a的值为()A)3

B)15.下面叙述正确的是()

A)2/3与2%3等价

B)5/(int)4.0与5/4等价

16.若有定义:int a,b=6;语句a=--b;运行后,a、b的值分别是()。A)6 6

B)17.若有定义:int i=3,j=6;则表达式(--i)*(j++)的值为()。

C)

C)

3_row

C)

int

C)

f.5

C)

'a12'

C)

“0”

C)

'W'

C)十进制代码值 D)

内码值

C)

‘b_k’

C)

‘165’

C)

b+10=-5

C)a*3)。C)

1.0

C)

0

C)++2与- -3等价D)

++2与3等价

C)

D)

“case”

D)

union

D)

p_11

D)

_f5

D)

32766L

D)

“ ”

D)

“32a”

D)

3.21E-6.5

D)

‘@’

D)

b+=b*3

D)

a*4=3

D)

0

D)

D)

期末复习题集

A)10

B)18.语句x=(a=3,b=++a);运行后,x、a、b的值依次为()。A)3,3,4

B)

4,4,3 19.已知int a='R';则正确的表达式是()。A)a=int(3e2)B)2*a=a++ 20.已知char a='R';则正确的赋值表达式是()。A)a=(a++)%4

B)

a+2=3 21.语句a=(3/4)+3%2;运行后,a的值为()。A)0

B)22.若有定义:int x,a;则语句x=(a=3,a+1);运行后,x、a的值依次为()。A)3,3

B)

4,4 23.设整型变量a为5,使b不为2的表达式是()。A)b=(++a)/3

B)

b=6-(--a)24.设单精度型变量f、g的值均为2.0,使f为4.0的表达式是()。A)f+=g

B)

f-=g+2 25.若有定义:int k,i=2,j=4;则表达式k=(++i)*(j--)的值是()。A)8

B)26.若有定义: int a=3;语句a+=a-=a*a;运行后,a的值为()A)-6

B)

0 27.若有定义:float x=3.5,y=5.5;则表达式()的值为2.A)(int)x+y%7 B)(int)(x+y)%7 28.若有定义:int b=-15;则()为正确的赋值表达式。A)b=*5

B)

*b=6 29.下面叙述正确的是()。A)2/3 与 2.0/3.0 等价 B)(int)2.0/3 与 2/3 等价

30.若有定义int x=1,y=2,n=3;则()为正确的表达式。A)x=y*3,y=(x+n)/y B)(x+y)(y+n)31.若有定义:int x,y,z;语句x=(y=z=3,++y,z+=y);运行后,x的值为()A)7

B)32.若有定义:float x=3.5;int z=8;则表达式 x+z%3/4 的值为()。A)3.75

B)

3.5 33.若有定义:float x=3.5,y=3.6,则表达式()的值为6。A)(int)x+(int)y B)(int)(x+y)

C)

C)

4,4,4

C)a=a+a=a+3 D)

a%10

C)

a+=256--

C)

C)

4,3

C)

b=a%2

C)

f*=g-6

C)

C)

-12

C)int(x+y)%7 D)

(x+y)%7

C)

b+10=-5

C)++5 与 6 等价 D)

'A'与“A”等价

C)float(y/n)D)

x=ny

C)

C)

C)int(x+y)D)

x+y

D)

D)

3,4,3

D)

a='78'

D)

D)

3,4

D)

b=a/2

D)

f/=g*10

D)

D)

-3

D)

b+=b*3

D)

D)

C语言练习题

34.下面叙述正确的是()。A)(3+9)++是正确的表达式 B)“abc”+”xxx”是正确表达式

C)c语言中整型与字符型变量的混合运算表达式的结果是整型 D)模运算符%两边运算数的数据类型是任意的

35.若有定义:int x;char c=‟A‟;则正确的赋值表达式是().说明‘A’的ASCII码的十进制值为65,‘a’的ASCII码的十进制值为97 A)x=c+’ABC’ C)x=c+’CBA’ B)x=c+32

D)

x=’ABC’

36.若有定义:char c1=‟A‟,c2=‟B‟;语句printf(“%d+%d=%d”,c1,c2,c1+c2);运行后的结果为()。说明:‘A’的ASCII码的十进制值为65 A)65+65=AB

B)

A+B=131

C)

65+66=131

D)

A+B=AB 37.下面叙述错误的是()。A)算术运算符中只有“*”、“/”优先级高于关系运算符 B)模运算符“%”是C语言基本的算术运算符 C)算术运算符中不包含“=”运算符

D)自加和自减运算符只能用于变量,而不能用于常量或表达式

38.下面叙述正确的是()。A)强制类型转换运算的优先级高于算术运算 B)若a和b是整型变量,(a+b)++是合法的 C)'A'*'B' 是不合法的 D)“A”+“B”是合法的

39.下面关于算术运算符的叙述,错误的是()。A)%(模运算符)的运算对象只能为整型量 B)算术运算符的结合方向是“自左至右” C)自加和自减运算符的结合方向是“自右至左” D)其运算对象不包含函数

期末复习题集

3.第四章 顺序程序设计

1.Getchar()函数的功能是获取终端输入的(A)B)一个字符 多个字符)

C)D)

一个整型变量表达式 一个实型变量值

2.只能向终端输出一个字符的是().A)B)

3.若有定义int a=8,b=5;要实现输出形式为:8*5=40,正确的printf()函数调用语句是()A)B)

4.若有定义float x;要从键盘输入数据6.02赋给x,则应选用()语句。A)B)

5.若有定义:int x=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”, x, y, z);运行后的输出结果为()。A)B)

6.若有语句int a;char c;scanf(“%3d%c”,&a,&c);为将整数135赋给a,字符‘6’赋给c,正确的数据输入方式是()。说明:代表换行,_代表空格 A)B)

7.若有定义:int a;则表达式()不能用来判断a值为奇数是“真”,偶数是“假” A)

8.若有定义:int a;且表达式!a的值为0,则表达式()的值为1.A)B)

9.若有定义:int a=1,b=2,c=3,d=4,t=2,k=2;语句(t=a

10.已知 char a;使用scanf()函数输入一个字符给变量a,不正确的函数调用是()。A)B)

scanf(“%d”,&a);scanf(“%lf”,&a);

C)D)

scanf(“%c”,&a);scanf(“%u”,&a);2

B)

C)

0

D)a= =0 a=0

C)D)

!(a<0||a>0)a!=0 a%2==1

B)

!(a%2==0)

C)

a%2

D)

!(a%2)135_6_ 135_6

C)D)

1356 1356 123412312 ***41231231231212

C)D)

1234+1234+1234 1234+123+12 scanf(“%8.2f”,&x);scanf(“%4.2f”,&x);

C)D)

scanf(“%f”,&x);scanf(“%1.2f”,&x);printf(“%d*%d=%dn”,a,b,a*b);printf(“a*b=%dn”,a*b);

C)D)

printf(“%d*%d=a*bn”,a,b);printf(“a*b=a*bn”);printf()函数 getchar()函数

C)D)

scanf()函数 putchar()函数

C语言练习题

4.第五章 选择程序设计

1.若有定义:int x=1,y=2,z=3;则表达式()的值为0。A)!((xy || x

D)

x<=y 2.下列运算符中优先级最低的是()。A)*

B)

=

C)

> 3.以下运算符中优先级最高的是()。A)>

B)

||

C)

&& 4.若有定义:int x=3,y=4;则表达式!x||y 的值为()。A)1

B)

0

C)5.若有定义:int i=7,j=8;则表达式 i>=j||i

C)0 B)变量i的值

D)

变量j的值

6.若有定义:int x,a;赋值语句a=(x%3= =0)?0:1;与()语句不等价。

A)If(!(x%3= =0))a=1;else a=0;C)If(x%3!=0)a=1;else a=0;B)If(x%3)a=0;else a=1;

D)

If(x%3= =0)a=0;else a=1;7.若有定义:int a=1,b=2,c=3,d=4,x=5,y=6;则表达式(x=a>b)&&(y=c>d)的值为()。A)0

B)

C)8.若有定义: int a=1,b=2,c=3,d=4,t=2,k=2;语句(t=a

B)

C)9.若有定义:int a=6,b=7,k=0,t=1;语句(k=a

B)

C)

0 10.若有定义:int a=3,b=5,c=8;则表达式!(a-b)||(c-b)的值为()A)1

B)

0

C)11.若有定义:int a;且表达式!a的值为0,则表达式()的值为1。A)a=0 C)!(a<0||a>0)B)a!=0

D)

a==0 12.以下程序段运行后x的值为()int a=3,b=6,x;x=(a==b)?a++;--b;A)4

B)

C)13.若有定义:int a=1,b=2,c=3;则执行以下程序段后a,b,c的值分别为()。if(a

D)

a=2,b=1,c=1

D)!

D)

+

D)

D)

D)

0

D)

0

D)

D)

期末复习题集

14.以下程序段运行后变量a的值为()。int x=6,y=5;int a;a=(--x==y++)?x:y+1;A)0

B)15.C语言对if嵌套语句的规定:else总是与()配对。A)第一个if B)之前最近的且尚未配对的if 16.以下程序段运行时,若从键盘输入5,则运行结果是()。int a,y=10;scanf(“%d”,&a);if(a>10)y=a+6;printf(“%dn”,y+a);A)10

B)17.以下程序的运行结果是()。void main(){int a,b=2,c=6;a=3;if(a>6)a=a+b;else if(a==6)

b=a+c;else

a=b+c;printf(“%dn”,a);} A)8

B)18.以下程序段的运行结果是().int s = 15;switch(s/4){case 1:

printf(“One ”);case 2:

printf(“Two ”);case 3: printf(“Three ”);default:

printf(“Over ”);} A)Three Over

B)

One Over

C)

C)缩进位置相同的if D)

之前最近的if

C)

C)

C)

Two Over

D)

D)

D)

D)

Three

C语言练习题

以下程序段的运行结果是()。int s=15;switch(s/4){default: printf(“Over ”);

case 1:

printf(“One ”);

break;

case 2:

printf(“Two ”);} A)Two

B)

Over Two

C)

Over One

D)

One 19.期末复习题集

5.第六章 循环控制

1.下面叙述正确的是()

A)在for循环中,不能用break语句跳出循环体

B)For循环的循环体可包含多条语句,但必须用花括号{}括起来 C)For循环是先执行循环体语句,后判断表达式 D)For循环只能用于循环次数已经确定的情况

2.若有定义:int i,x=0;语句for(i=1;i<=3;i++)x+=2;与下列()程序段不等价。A)i=1;for(;i<=3;i++)x+=2;C)for(i=1;i<=3;){x+=2;i++;} B)i=1;for(;;i++)x+=2;

D)

i=1;for(;i<=3;){x+=2;i++;} 3.以下程序段运行后x的值为()int i=0,x=0;for(;i<=5;i++,i++){x+=3;} A)12

B)

C)

D)4.若有定义:int i,x;()不是死循环 A)for(i=10;;i--);C)for(x=5;x>0;x--);B)while(x=1);

D)

for(;;i+=2);5.以下程序运行后x的值为()。int i=0,x=2;while(i++<=5){x+=2;} A)8

B)

C)

D)6.对于整型变量x,与while(!x)等价的是()。A)while(x!=0)C)while(x!=1)B)while(x==0)

D)

while(~x)7.对于整型变量x和y,语句

for(x=0,y=0;(y!=123)&&(x<4);x++)y++;中的“y++;”被执行()。A)4次

B)

0次

C)

123次

D)8.在c语言中while循环和do--while循环的主要区别是()。A)do--while循环体内可以使用break语句,while循环体内不能使用break语句 B)do--while循环体内可以使用continue语句,while循环体内不能使用continue语句 C)while的循环体至少无条件执行一次,do--while的循环体不是 D)do--while的循环体至少无条件执行一次,while的循环体不是

9.设有整型变量x,下述语句()不会出现死循环。A)for(;;x+=1);

C)while(1){x++;} B)for(;(x=getchar())!='n';);

D)

for(x=10;;x--);

3次

C语言练习题

6.第七章 数组

1.下面叙述错误的是()A)数组中每个元素都属于同一个数据类型 B)C语言数组长度在定义数组时可不作确定 C)C语言数组名称是数组在内存中的首地址

D)C语言规定可逐个引用数组元素但不能一次引用整个数组。

2.()是正确的数组定义。A)int n=5;int arr[n];B)int n;n=5;int arr[n];3.下列数组声明中,正确的是()。A)int a[5]={0};B)int a[]={0 1 2};4.已知 int a[10];则对a数组元素引用不正确的是()。A)a[10]

B)

a[3+5] 5.设有如下数组定义:

char str[8]={ “FuJian”};则分配给数组str的存储空间是()个字节。A)6

B)6.下列数组声明中,正确的是()。A)int a[10];B)int n=10,a[n];7.若有定义:int a[3]={0,1,2};则a[1]的值为()。A)0

B)8.有如下定义

int a[][3]={1,2,3,4,5,6,7,8};则数组a的行数是()。A)2

B)9.若有定义:int a[10],i=2;能正确引用a数组元素的是().A)a[9+i]

B)

a[10] 10.以下数组定义中,正确的是()。A)int a[2][3]={1,2,3,4,5,6,7};B)int a[][]={{1,2,3},{4,5,6},{7,8,9}};C)int a[2][]= {1,2,3,4,5,6};D)int a[][4]= {6};11.以下能对一维数组a进行正确初始化的语句是()。A)int a[5]=(0,0,0,0,0);B)int a[5]=[0];12.以下程序段运行后x的值为()。

C)int arr[10];D)

int N=5,arr[N];

C)int a[5]=0;D)

int a[];

C)

a[10-10]

D)

C)

D)

C)int N=10;int a[N];

D)

int n;scanf(“%d”,&n);int a[n];

C)

D)

C)

D)

C)

a[10-i]

D)

C)int a[5]={1,2,3,4,5,6,7};D)

int a[]={0};

a[5]

无法确定的a(7)

期末复习题集

Int a[8]={1,2,3,4,5,6,7,8},i,x=0;For(i=1;i<8;i++,i++)

x=x+a[i];A)18

B)

C)13.若有定义:int arr[15],n=5;无法正确引用arr数组元素的是()A)arr[n]

B)

arr[0]

C)

arr[10+n] 14.C语言中,二维数组元素在内存中的存放顺序是()

A)随机存放 C)由用户自己定义 B)按行存放

D)

按列存放 15.以下程序段的运行结果是()int t[][3]={1,2,3,4,5,6,7,8,9,10,11,12}; printf(“%dn”,t[1][1]);A)4

B)

C)16.以下程序段运行后x的值为()int a[]={1,2,3,4,5,6,7,8};int i,x,*p;x=1;p=&a[1];for(i=0;i<3;i++)x*=*(p+i);A)24

B)

120

C)17.若有定义:int a[3][4]={{1,2},{3,4},{5,6,7}};则a[1][1]的值为()。A)3

B)

C)18.以下程序段运行后s的值是()。int a[3][3]={1,2,3,1,2,3,1,2,3};int i,j,s=0;for(i=0;i<3;i++)

for(j=i;j<3;j++)

s+=a[i][j];A)15

B)

C)19.设有如下程序段:

int a[3][3]={1,0,2,1,0,2,1,0,1},i,j,s=0;for(i=0;i<3;i++)

for(j=0;j

s=s+a[i][j];则执行该程序段后,s的值是()。A)0

B)

C)20.若有定义:int i=0,x=0;int a[3][3]={1,2,3,4,5,6,7,8,9};则以下程序段运行后x的值为()。for(;i<3;i++)x+=a[i][2-i];A)0

B)

C)21.以下程序段的运行结果是()char a[]=”abcdef”;

D)

D)

arr[15-n]

D)

D)

D)

D)

D)

D)

C语言练习题

char b[]=”xyz”;strcpy(a,b);printf(“%c”,a[2]);A)22.z

B)

y

C)

b

D)

c 若有定义:char str1[10],str2[10]=”Fujian”;,能将字符串”Fujian”赋给数组str1的正确语句是()A)strcpy(str2,str1);C)B)str1=”Fujian”;

D)

23.以下程序段的运行结果是()char str[]={“FuJian”};printf(“%d”,strlen(str));A)9

B)

C)

24.以下程序段的运行结果是()。char a[]=“abc ”;char b[]=“xyz”;char c[10];strcpy(c,a);strcat(c,b);printf(“%s”,c);A)abc xyz

B)

abc

C)

25.以下程序段运行后a的值为()int a=2;a=strcmp(“miss”,”miss”);A)true

B)

0

C)

26.设有以下变量定义:

char str1[]=“string”,str2[8],*str3,*str4=“string”;()是正确的。A)strcpy(str1,“China”);C)B)str2=“China”;

D)

27.以下程序段运行后屏幕输出为()。char a[]=“abcmis”;printf(“%d”,strlen(a));A)5

B)

C)

28.若有定义:char a[]=“abcdef”;char b[]=“xyz”;则以下程序段运行后屏幕输出为()。strcpy(a,b);printf(“%c”,a[2]);A)c

B)

z

C)

29.若有定义:int a=2;则语句a=strcmp(“miss”,“miss”);运行后a的值为()。A)1

B)

0

C)

strcopy(str1,str2);strcpy(str1,str2);

xyzabc

strcpy(*str3,“China”);strcpy(str4[0],“China”);

D)

D)

xyz

D)

D)

D)

d

D)

期末复习题集

7.第八章 函数

1.以下程序的运行结果是()int a=2,b=3;int min(int a, int b){ int c;c=a

printf(“%d”,min(a,b));} A)2,3

B)

C)2.C语言中,若缺省定义函数返回值类型,则改函数默认返回值类型是()A)double

B)

int

C)3.以下程序的运行结果是()int f(int c){ c+=2;return c;} main(){ int a=2;c=5;a=f(a);printf(“%d %dn”,a,c);} A)4 5

B)4

C)4.C语言中,数组名作为函数调用的实参时,下面叙述正确的是()A)传递给形参的是数组第一个元素的值 B)传递给形参的是数组元素的个数 C)传递给形参的是数组中全部元素的值

D)形参数组中各元素值的改变会使实参数组相对元素的值同时发生变化

5.以下程序的运行结果是()。int fun(int array[3][3]){ int j;for(j=0;j<3;j++)array[1][j]++;printf(“n”);} main(){ int j,a[3][3]={0,1,2,1,0,4,2,4,5};fun(a);

long 5

D)

D)

void

D)4

C语言练习题

for(j=0;j<3;j++)printf(“%2d”,a[1][j]);printf(“n”);} A)2 1 5

B)

0 1 2 6.以下程序的运行结果是()int fun(int array[3][3]){ int j;for(j=0;j<3;j++)array[1][j]++;printf(“n”);} main(){ int j,a[3][3]={0,1,2,1,0,4,2,4,5};fun(a);for(j=0;j<3;j++)printf(“%2d”,a[1][j]);printf(“n”);} A)0 1 2

B)0 4 7.以下程序运行后屏幕输出为()。

#include int f(int x,int y){

return(x+y);} main(){

int a=2,b=3,c;

c=f(a,b);

printf(“%d+%d=%dn”,a,b,c);} A)0

B)

2+3=0 8.以下程序运行后屏幕输出为()。

#include int a=2,b=3;int max(int a,int b){

int c;

c=a>b?a:b;

return(c);} main(){

int a=4;

C)0 4

C)1 5

C)

3+2=5

D)2 3

D)2 3

D)

2+3=5

期末复习题集

printf(“%d”,max(a,b));} A)2,3

B)9.以下程序的运行结果是()。int fun(int array[4][4]){ int j;

for(j=0;j<4;j++)printf(“%2d”,array[2][j]);

printf(“n”);} main(){ int a[4][4]={0,1,2,0,1,0,0,4,2,0,0,5,0,4,5,0};

fun(a);} A)2 0 0 5

B)0 0 4 10.设有如下函数定义: int fun(char *str){ char *p=str;

while(*p!= '')p++;

return(p-str);} 则以下语句执行后的输出结果是()。printf(“%dn”,fun(“Student”));A)7

B)11.以下程序运行后屏幕输出为()。

#include void f(int i){

int a=2;

a=i++;

printf(“%d,”,a);} main(){

int a=1,c=3;

f(c);

a=c++;

printf(“%d”,a);} A)4,3

B)

3,3

C)

C)

0 1 2 0

C)

C)

4,5

D)

D)

0 4 5 0

D)

D)

3,5

C语言练习题

8.第九章 预处理命令

1.若有定义:#define F 2+3 ,则表达式F*F的值为()A)17

B)

C)

D)2.下面叙述错误的是()A)B)C)“#define PRICE 30”命令的作用是定义一个与30等价的符号常量PRICE “#include”命令的作用是在预处理时将stdio.h文件中的实际内容代替该命令 C源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率 D)宏定义也是C语句,必须在行末加分号

3.下面叙述正确的是()A)预处理命令也是C语句,必须以分号结束 B)宏展开不占用运行时间,只占用编译时间 C)宏名必须用大写字母表示

D)一个源程序只能有一个预编译处理命令行

4.以下程序运行后,屏幕输出为()。#define MIN(a,b)((a)<(b)?(a):(b))main(){int x=2,y=3,z;

z=2*MIN(x,y);

printf(“%d”,z);} A)2

B)

C)

5.若有定义:#define PI 3,则表达式PI*2*2的值为()。A)12

B)

C)

6.若有以下宏定义,#define MOD(x,y)x%y 则执行以下程序段后,z的值是()。int z,a=15,b=100;z=MOD(b,a);A)100

B)

C)

7.以下程序的运行结果是()。#define X a+b main(){ int a=3,b=4,s1;

s1=2*X;

printf(“%dn”,s1);} A)6

B)

C)

D)

D)

不确定

D)

D)

期末复习题集

8.若有定义:

typedef int NUM[100];NUM n;则()语句是正确的。A)n[0]=2;

B)

n=2;

C)

NUM=2;

D)

NUM=n;9.若有定义:

typedef int * INTEGER;INTEGER p;则下面叙述正确的是()。A)p是与INTEGE相同的类型 B)p是一个整型变量

C)程序中可用INTEGER定义int类型指针变量 D)程序中可用INTEGER定义int类型变量

10.以下叙述中,正确的是()。A)“#define PRICE=30”定义了与30等价的符号常量PRICE B)预编译处理命令行都必须以“#”开头 C)宏名只能包含大写字母和数字字符 D)在程序的一行上可以书写几个有效的宏定义

11.以下的叙述中不正确的是()。A)宏展开不占用运行时间,只占用编译时间 B)宏名无类型

C)宏名必须用大写字母表示 D)预处理命令行都必须以#号开始

C语言练习题

9.第十章 指针

1.若有定义:int a=4,*p=&a;,则以下()均表示地址。A)a,p

B)

a,*p

C)

&a,p

D)

&a,*p 2.若有定义:int *p1,*p2;,则不能用于指针变量p1、p2之间的运算符是()。A)+

B)

= 3.执行以下程序段的输出结果是()。

int a=10,*p=&a;

printf(“%d”,++*p);A)10 B)11 4.以下程序段运行后x的值为()int a[]={1,2,3},b[]={4,3,3};int *p,*q;int i,x;p=a;q=b;for(i=0;i<3;i++)

if(*(p+i)= =*(q+i))

x=*(p+i)*2;A)不确定

B)5.以下程序段运行后*(++p)的值为()。

char a[5]=“work”;char *p;p=a;A)'w' B)存放'w'的地址

6.以下程序段运行后*(p+3)的值为()。

char a[]=“good”;char *p;p=a;A)'d' B)'' 7.设有以下语句,则()是对a数组元素的不正确引用,其中0≤i<10。

int a[10]={0,1,2,3,4,5,6,7,8,9}, *p=a;A)a[p-a]

B)

*(&a[i])8.以下程序段运行结果是()int x[3]={1,2,3};int *p;

C)

= =

C)变量a的地址 D)

变量a的地址 + 1

C)

C)'o'

D)

存放'o'的地址

C)存放'd'的地址 D)

'o'

C)

p[i]

D)

D)

D)

*(*(a+i))

期末复习题集

p=x;for(p++;p<&x[2];p++)printf(“%d”,*p);A)3

B)3

C)9.以下程序的运行结果是()。main(){int x,y;int *p,*q,*t;x=23;y=45;p=&x;q=&y;t=p;p=q;q=t;printf(“%d,%dn”,x,y);} A)23,23

B)

23,45

C)

45,45 10.下列程序段运行后,()对数组a元素的引用是错误的。(其中0≤i<4, 0≤j<3)

int i,j,(*p)[3];int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12};p=a;A)*(p[i]+j)C)*(*(a+i)+j)B)p[i][j]

D)

*(*(p+i)[j])11.若有定义:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[4];p=a;,()对数组a元素的引用是正确的。A)(**p)[2]

B)

**(p+4)

C)

*(p[2]+3)12.以下程序的运行结果是()main(){ int a[3]={1,2,3};int *num[3];int **p,i;for(i=0;i<3;i++)num[i]=&a[i];p=num;printf(“%d”,**p);} A)1

B)

num

C)13.以下程序的运行结果是()main(){ char a[]=”137”,*p;for(p=a;p

D)

45,23

D)

*(p[4])

D)

&a[0]

C语言练习题

} A)137377

B)14.以下程序段运行后*(p+1)的值为()char a[]=”good”;char *p;p=a;A)‘o’

B)

‘g’

15.设有如下变量定义:

char aa[][3]={'a','b','c','d','e','f'};

char(*p)[3]=aa;则以下程序段的运行结果是()。

p++;

printf(“%c”,**p);A)a

B)

b 16.以下程序段运行后x的值为()。

int a[9]={1,2,3,4,5,6,3,8,9};int *p,*q;int i,x;p=&a[0];

q=&a[8];for(i=0;i<3;i++)

if(*(p+i)==*(q-i))

x=*(p+i)*2;A)2

B)17.下面叙述错误的是()

一个变量的地址称为该变量的指针

任何指针变量都可以与空指针NULL进行比较 可以将一个整数值赋值给指针变量 一个指针变量只能指向同一类型的变量

18.()能正确定义一个指向函数的指针 A)(int *)p()

B)

int *p()19.若函数fun的函数头为:

int fun(int i, int j)且函数指针变量p定义如下:

int(*p)(int i, int j);则要使指针p指向函数fun的赋值语句是()。A)p=*fun;

B)

p=fun;20.C语言的基本数据类型包括()。A)整型、实型、逻辑型

C)

13737

C)

不确定

C)

c

C)

C)

int(*p())

C)

p=fun(i,j);

B)

整型、实型、字符型

D)

137

D)

a[1]的地址

D)

d

D)

不确定

D)

int(*p)()

D)

p=&fun;

期末复习题集

C)21.整型、实型、空类型

D)

整型、字符型、指针型

对于基类型相同的两个指针变量之间,不能进行的运算是()。A)<

B)

22.设有如下函数定义: int fun(char *str){ char *p=str;

while(*p!= '')p++;

return(p-str);} 则以下语句执行后的输出结果是()。printf(“%dn”,fun(“Student”));A)7

B)

23.以下程序段运行后x的值为()。

int a[]={1,2,3,4,5,6,7,8};int i,x,*p;x=1;p=&a[2];for(i=0;i<3;i++)x*=*(p+i);A)不确定

B)

=

C)

+

C)

C)

120

D)

D)

D)

C语言练习题

10.第十一章 结构体与共用体

1.若有定义: struct data { char a;

float b[3];

long c;}d1;则变量d1的长度是()。

A)4

B)2.若有定义 struct teacher { int num;char name[10];char sex;int age;}t1={2001,”Li Ming”,’M’,35};则下列()对结构变量引用是正确的。A)t1.name[0] B)t1->name[0] 3.下列程序段运行后,表达式()的值为3。struct point { int x;int y;}*p;struct point a[3]={1,2,3,4,5,6};p=a;A)*(p+2)

B)

p[2].x 4.若有定义: struct teacher { int num;

char sex;int age;}teacher1;则下面叙述错误的是()。A)num、sex、age都是结构变量teacher1的成员 B)struct是结构类型的关键字 C)teahcer1是结构类型名

D)struct teacher是用户定义的结构类型

5.设有以下定义语句:

C)

C)t1->name D)

t1.name

C)

p[1].x

D)

D)

p[3].x

期末复习题集

struct student { int num;

char name[10];

float score;} wang,zhang;则不正确的叙述是()。A)B)C)D)struct是结构体类型的关键字 zhang是结构体变量名 wang是结构体类型名

num,name,score都是结构体类型student的成员名

6.设有以下定义语句: struct student { int num;

char name[10];

float score;} wang,zhang;则变量wang所占的内存字节数是()。A)14

B)7.若有定义: struct teacher {int num;char name[10];char sex;int age;float score;}teacher1;则变量teacher1所占用的内存字节数是()。A)5

B)8.以下程序段的运行结果是()union { int num1;int num2;}s;s.num1=20;s.num2=30;printf(“%d”,s.num1);A)2030

B)9.若有定义: union u_type { int x;float y[3];char z;C)

C)

C)

D)

D)

D)

C语言练习题

}a;则变量a的长度是()A)

10.对枚举类型进行定义,不正确的是()。A)B)

11.若有定义:enum day{sun,mon,tue,wed,thu,fri,sat};,则枚举常量sun,mon的值分别为(); enum b{1, 2, 3};enum a{A, B, C};

C)D)

enum c{D=3, E, F};enum d{X=0, Y=5, Z=9};12

B)

C)

D)A)0

B)

C)

12.若有定义:enum num{a1,a2=3,a3,a4=10};,则枚举常量a2、a3的值分别为()。A)3 4

B)

C)

13.若有定义: char ch;int j,k;enum day{sun,mon,tue,wed,thu,fri,sat};int s[sat];则()对下列语句是否复合语法规则的判断是正确的。sun=0;/*语句1*/ j=mon+tue;/*语句2*/ if(a[mon]>0)j++;/*语句3*/ A)语句1、2、3均错误

C)B)语句1错误,语句2和语句3正确

D)

14.()是关于C语言数据类型的正确叙述。A)不允许使用空类型 C)B)枚举类型不是基本类型

D)

15.设有如下定义语句: union u_type

{ int i;

double x;

float f;

};struct str_type

{ char str[100];

union u_type u[2];

};则语句“printf(“%d”, sizeof(struct str_type));”的输出结果是()。A)100

B)

116

C)

D)

D)

语句2正确,语句1和语句3错误 语句1、2、3均正确

数组不是构造类型

变量使用前应定义相应的数据类型

120

D)

200

期末复习题集

11.第十二章 位运算

1.对于整型变量x,与while(!x)等价的是()。A)while(x==0)C)while(x!=1)B)while(x!=0)

D)

while(~x)2.在对于无符号数的位运算中,操作数右移一位相当于()。A)操作数除以2 C)操作数除以4 B)操作数乘以2

D)

操作数乘以4 3.若有定义:int a=20,b=28,c;则执行语句c=(a^b)<<2;后c的值为()。A)2

B)

C)

12.第十三章 文件

1.若当前工作目录下有一文本文件test.txt,其内容为“cprogram”(不包含引号),则以下程序段的运行结果是()FILE *fp;char *str;if((fp=fopen(“test.txt”,”r”)!=NULL)printf(“%s”,str);fclose(fp);A)cpro

B)

gram

C)

cprog 2.下面程序运行后,文件d_f.dat的内容是()main(){ FILE *fp;int i=10,j=20;fp=fopen(“d_f.dat”,”w”);fprintf(fp,”%d ”,i);fclose(fp);fp=fopen(“d_f.dat”,”a”);fprintf(“%d”,j);fclose(fp);} A)20 10

B)

C)3.()不是文件读库函数 A)fgetc()

B)

fputs()

C)

fscanf()4.下面程序运行后,屏幕显示write ok!,则下面叙述正确的是()。main(){ FILE *fp;

D)

D)

ogram

D)20

D)

fread()

C语言练习题

fp=fopen(“data.txt”,”wt”);if(fp!=NULL){ fprintf(fp,”%sn”,”File write successed!n”);fclose(fp);printf(“write ok!n”);} } A)当前工作目录的data.txt文件已经关闭 B)当前工作目录下找不到data.txt文件

C)当前工作目录下存在data.txt文件,其中的内容是“write ok!” D)当前工作目录的data.txt文件已经打开

5.以下程序的功能是()。#include main(){ FILE *fp;

long int n;

fp=fopen(“wj.txt”,“rb”);

fseek(fp,0,SEEK_END);

n=ftell(fp);

fclose(fp);

printf(“%ld”,n);} A)计算文件wj.txt的起始地址 B)计算文件wj.txt的终止地址 C)计算文件wj.txt内容的字节数 D)将文件指针定位到文件末尾

期末复习题集

6.标准函数fgets(s, n, f)的功能是()。A)B)C)D)

从文件f中读取长度为n的字符串存入指针s所指的内存 从文件f中读取长度不超过n-1的字符串存入指针s所指的内存 从文件f中读取n个字符串存入指针s所指的内存 从文件f中读取长度为n-1的字符串存入指针s所指的内存

五、实验部分

1.编程题

#include #include double func(double x){ /**/

return(3*x*sin(x)+tan(x))/(1.5+fabs(x));

/**/ } void main(){

clrscr();

printf(“func(0.26)= %6.3lfn”, func(0.26));

printf(“func(5.00)= %6.3lfn”, func(5.00));

printf(“func(8.50)= %6.3lfn”, func(8.50));

getch();}

#include

C语言练习题

int fun(int a[],int n,float *f){

/**/ int i,count=0;

float sum=0;

for(i=0;i

sum+=a[i];

*f=sum/n;

for(i=0;i

if(*f<=a[i])count++;

return count;/**/ }

void main(){

int a[] = {23,40,8,32,18,2,9,16,27};

int i,k = sizeof(a)/sizeof(int);

int count=0;

float aver=0.0;

printf(“Array a:n”);

for(i=0;i

printf(“%d ”,a[i]);

printf(“n”);

count=fun(a,k,&aver);

printf(“aver is %f, count is %dn”,aver,count);

getch();}

#include #include double func(double x){ /**/ return(exp(x)+sin(x-6))/(x*x+1);/**/ } void main(){

clrscr();

期末复习题集

printf(“func(0.26)= %6.3lfn”, func(0.26));

printf(“func(5.00)= %6.3lfn”, func(5.00));

printf(“func(8.50)= %6.3lfn”, func(8.50));

getch();}

#include #include int find(int a[],int n,float x){

/**/ int i,j=0;double min=fabs(a[0]-x);

for(i=0;i

if(min>fabs(a[i]-x)){min=fabs(a[i]-x);j=i;}

return a[j];/**/}

void main(){

int a[] = {23,40,8,32,18,2,9,16,27};

int i,k,n = sizeof(a)/sizeof(int);

float x=20.3;

printf(“Array a:n”);

for(i=0;i

printf(“%d ”,a[i]);

printf(“n”);

k=find(a,n,x);

printf(“It is %dn”,k);

getch();}

#include #include double fun1(float x){ /**/

C语言练习题

if(x<3)return sin(x);

else if(x==3)return x;

else return cos(2*x+1);/**/ }

void main(){

float x;

double y;

clrscr();

printf(“Please input a number:n”);

scanf(“%f”,&x);

y = fun1(x);

printf(“fun1(%.2f)=%.2fn”,x,y);

getch();}

#include #include int fun(int bg,int fn){

/**/ int i,j,k,count=0;

for(i=bg;i<=fn;i++)

{

k=sqrt(i);

for(j=2;j<=k;j++)

if(i%j==0)break;

if(j>k)count++;

}

return count;

/**/ }

void main(){

int count;

count=fun(100,500);

printf(“nThe total of prime is %d”,count);

getch();}

期末复习题集

#include #include double fun1(float x){ /*运行结果与示例不符,若要与示例相同则 1.0/3 改成1/3 */ if(x<3)return(pow(2.5+fabs(x),1.0/3)/(sin(x)+3));else return x;/**/ }

void main(){

float x;

double y;

clrscr();

printf(“Please input a number:n”);

scanf(“%f”,&x);

y = fun1(x);

printf(“fun1(%.2f)=%.2fn”,x,y);

getch();}

#include double fun(int n){

/**/ int i,j=1;

double sum=0;

for(i=1;i<=n;i++)

{

sum+= 1.0/(i*(2*i+1))*j;

C语言练习题

j*=-1;

}

return sum;/**/ }

void main(){

int n;

printf(“Input n: ”);

scanf(“%d”,&n);

printf(“fun(%d)=%lfn”,n,fun(n));

getch();}

#include #include double fun1(float x){ /**/ if(x<10)return sqrt(2.5+cos(x))/(x*sin(x)+3);else return x*x;/**/ }

void main(){

float x;

double y;

clrscr();

printf(“Please input a number:n”);

scanf(“%f”,&x);

y = fun1(x);

printf(“fun1(%.2f)=%.2fn”,x,y);

getch();}

期末复习题集

#include #include int bTrue(int a[][4],int n){ /**/ int i,j;

for(i=0;i

{

for(j=0;j<4;j++)

if(a[i][j]!=a[j][i])break;

if(j!=4)break;

}

if(i!=n)return 0;

else return 1;/**/ }

void main(){

int a[4][4],i,j;

int bT;

printf(“Input array a:n”);

for(i=0;i<4;i++)

for(j=0;j<4;j++)

scanf(“%d”,&a[i][j]);

bT = bTrue(a,4);

if(bT == 1)

printf(“Yesn”);

else

printf(“Non”);

getch();}

C语言练习题

#include #include double fun1(float x){ /**/ if(x<100)return(3*log10(x)-3)/(sin(x)+3);

else return x-100;/**/ }

void main(){

float x;

double y;

clrscr();

printf(“Please input a number:n”);

scanf(“%f”,&x);

y = fun1(x);

printf(“fun1(%.2f)=%.2fn”,x,y);

getch();}

#include #include int fun(int a[],int n){

/**/ int i,j,sum=0,max;

for(i=0;i

sum+=a[i];

sum/=n;

max=fabs(a[0]-sum);

j=0;

for(i=0;i

if(max

return a[j];/**/ }

void main(){

int a[] = {10,22,8,33,17,5,9,13,27};

期末复习题集

int i,n = sizeof(a)/sizeof(int);

int k;

printf(“Array a:n”);

for(i=0;i

printf(“%d ”,a[i]);

printf(“n”);

k=fun(a,n);

printf(“It is %dn”,k);

getch();}

2.填空题

#include #include void main(){ /**/ int /**/ a,b,temp;

scanf(“%d,%d”,&a,&b);

if(a

{ /**/ temp=a;a=b;b=temp;

/**/

}

while /**/(--a>b)

/**/

{

if(a%3==0)

printf(“ %d ”,a);

}

printf(“n”);

getch();}

C语言练习题

#include double fun(/**/ int n

/**/){

double y = 0.0;

int i,j;

for(i=1;i<=n;i++)

{y = y +/**/ 1.0/(8+3*i)

/**/;

}

return(/**/ y /**/);}

void main(){

clrscr();

printf(“fun(7)= %8.3lfn”, fun(7));

getch();}

#include void main(){

int m,n;

for(m=1;/**/ m<=5;

/**/ m++)

{ printf(“n”);

for(n=1;n<= /**/ 2*(m-1);

/**/ n++)

printf(/**/ “ ”

/**/);

for(n=9;n>=m*2-1;n--)

printf(“* ”);

}

getch();}

期末复习题集

#include main(){

void fun(int);

int v=300;

fun(/**/ v

/**/);

getch();}

void fun(int m){

int c1,c2;

for(c1=1;/**/ c1<=m/10

/**/;c1++)

{ for(c2=1;c2<=15;c2++)

if(c1*10+c2*20==/**/ m

/**/)

printf(“c1=%d,c2=%dn”,c1,c2);

} }

#include #include void main(){ int num1,num2,ans,flag;char op;clrscr();printf(“Please input an expression:”);scanf(“%d%c%d”, /**/ &num1,&op,&num2

/**/);flag=0;/**/ switch(op)

/**/

{

case '+': ans=num1+num2;break;

case '-': ans=num1-num2;break;

case '*': ans=num1*num2;break;

case '/': ans=num1/num2;break;

default:

C语言练习题

{ printf(“Error!n”);flag=1;}

}

if /**/(!flag)

/**/

printf(“%d %c %d = %dn”,num1,op,num2,ans);

getch();} #include #include void main(){

char src[40],tag[40];

void ch_pw();

printf(“Please input a string: ”);

gets(src);

strcpy(tag,src);

ch_pw(tag);

printf(“nThe source string: %sn”,src);

printf(“nThe target string: %sn”,tag);

getch();}

void ch_pw(/**/ char str[]

/**/){ char tab[4][2]={{'a','d'},{'s','f'},{'d','a'},{'f','s'}};int j=0,i;while(str[j])

{

for(i=0;i<=3;i++)

{

if(str[j]==tab[i][0])

{

/**/ str[j]

/**/=tab[i][1];

break;

}

}

/**/ j++

/**/;

} }

期末复习题集

#include #include void main(){

char str[80];

char c;

int i;

/**/ i=0;

/**/

printf(“nPlease input the string: ”);

while((c=getchar())!='n')

{

if(c>='A'&&c<='Z'||c>='a'&&c<='z')

/**/ str[i++]=c;

/**/

}

str[i]= /**/ '';

/**/

puts(str);

getch();}

#include #include #define N 9

void ivs(int a[ ]){int i,temp;for(i=0;/**/ i

{temp=a[i];

a[i]=a[N-1-i];/**/

a[N-1-i]=temp

/**/;

} }

void main(){int arr[N],i;

printf(“Please input %d numbers:n”,N);

C语言练习题

for(i=0;i

scanf(“%d”, &arr[i]);

ivs(/**/ arr

/**/);

printf(“nInverse order is: n”);

for(i=0;i

printf(“%d ”, arr[i]);

printf(“n”);

getch();}

#include #include void main(){

/**/ char

/**/ str[80];

int i,len, sum=0;

printf(“nPlease input the string: ”);

gets(str);

len = strlen(str);

for(i=0;i

{

if(str[i]>='A'&&str[i]<='Z'||str[i]>='a'&&str[i]<='z')

/**/;

/**/

else

/**/ sum++;

/**/

}

printf(“%dn”,sum);

getch();}

#include #include void main(){

int hcf(int,int);

int a,b,k;

printf(“Enter a b: ”);

期末复习题集

scanf(“%d%d”,&a,&b);

k=hcf(/**/ a,b

/**/);

printf(“H.C.F=%d n”, k);

getch();}

int hcf(int x,int y){

int r;

r=x%y;

while(r!=0)

{ x=y;

y=/**/ r

/**/;

r=x%y;

}

return(/**/ y

/**/);}

#include #include void main(){

char s1[100], s2[100];

int i,len;

printf(“Please input string: n”);

gets(s1);

len = strlen(s1);

for(i=0;i

{

if(s1[i] >= '1' && s1[i] <= '9')

/**/ s2[i]=s1[i]-1;

/**/

else if(s1[i] == '0')

/**/ s2[i]='9';

/**/

else

s2[i] = s1[i];

}

s2[i] =/**/ ''

/**/;

puts(s2);

getch();

C语言练习题

}

#include #include void sct(char s1[],/**/ char s2[]

/**/){char * p1,*p2;

p1=/**/ s1 /**/;

p2=s2;

while(*p1)

p1++;

while(*p2)

*(p1++)= *(p2++);

}

void main(){

char str1[60]=“Nothing ”, str2[]=“final”;

sct(/**/ str1

/**/ ,str2);

printf(“n%sn”,str1);

getch();} 3.改错题

#include void main(){

int a,b,c;

/**/ float f;/**/

clrscr();

printf(“Please input a b :”);

scanf(“%d%d”,/**/&a,&b/**/);

f=/**/(float)a/b;/**/

c=(int)((f-(int)f)*10);

printf(“n%f

%dn”,f,c);

getch();}

期末复习题集

#include void find(/**/int m /**/){

int a1,a2;

a1=m%10;

a2=m/10;

if(m%3==0 &&(/**/ a1==4 || a2==4 /**/))

printf(“%dn”,m);}

void main(){ int k;

for(k=10;k<=99;k++)

/**/ find(k)/**/;

getch();}

#include void main(){ /**/ int a,tag;/**/

int num1=0,num2=0;

clrscr();

printf(“please input numbers :”);

scanf(“%d”,/**/ &a /**/);

tag=a;

while(a)

{ scanf(“%d”,&a);

/**/ if(!a)/**/ continue;

else if(a

else if(a>tag)num2++;

}

printf(“n%d %dn”,num1,num2);

getch();}

#include long int fsum(int n){

C语言练习题

long int k;

if(n==1)

/**/ k=1 /**/;

else

k=n*fsum(n-1);

return(/**/ k /**/);}

void main(){ int i;

long int sum;

sum=0;

for(i=1;i<=9;/**/ i++,i++ /**/)

sum+=fsum(i);

printf(“sum=%ldn”,sum);

getch();}

#include void main(){ int i,a=0;

/**/char c1,c2;/**/

clrscr();

printf(“Enter an 8 bit binary number :”);

c2=getchar();

/**/ for(i=1;i<=7;i++)/**/

{ c1=getchar();

a=a*2+c1-'0';

}

/**/ if(c2=='1')/**/ a=(-1)*a;

printf(“n%d n”,a);

getch();}

#include void main(){

int i,n;

期末复习题集

/**/ n = 0;/**/

for(i=10;i<=100;i++)

if(i/10==i%10)

{printf(“%5d”,i);

n++;

if(/**/ n%9==0 /**/)

printf(“n”);

}

for(i=100;i<=999;i++)

if(/**/ i/100==i%10 /**/)

{printf(“%5d”,i);

n++;

if(n%9==0)

printf(“n”);

}

getch();}

#include void main(){

/**/ int a[10];/**/

int i,j,k,x;

printf(“Enter 10 numbers:”);

scanf(“%d”,/**/ &x /**/);

a[0]=x;

for(k=1;k<=9;k++)

{ scanf(“%d”,&x);

for(i=0;i

if(a[i]>x)break;

if(i

for(j=k;j>i;j--)a[j]=a[j-1];

a[i]=x;

}

/**/ for(i=0;i<10;i++)/**/

printf(“%d ”,a[i]);

printf(“n”);

getch();}

第二篇:C语言习题

第一章 C语言概述

1.1选择题

【题1.1】以下不是C语言的特点的是()A.C语言简洁、紧凑

B.能够编制出功能复杂的程序 C.C语言可以直接对硬件进行操作 D.C语言移植性好

【题1.2】以下不正确的C语言标识符是()。A.ABC B.abc C.a_bc D.ab.c 【题1.3】以下正确的c语言标识符是()。A.%x B.a十b C.a123 D.test!【题1.4】一个c程序的执行是从().A.main()函数开始,直到main()函数结束 B.第一个函数开始,直到最后一个函数结束 C.第一个语句开始,直到最后一个语句结束

D.main()函数开始,直到最后一个函数结束 【题1.5】一个C语言程序是由()。A)一个主程序和若干子程序组成 B)函数组成 C)若干过程组成 D)若干子程序组成

【题1.6】一个c程序是由()。A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成

【题1.7】C语言派程序的基本单位是()。A.过程 B.函数 c子程序 D.标识符 【题1.8】编辑程序的功能是()。

A.建立并修改程序 B.将c源程序编译成目标程序 C.调试程序 D.命令计算机执行指定的操作

1.2填空题

【题1.9】c语言符号集包括【】。

【题1.10】一个c程序有且仅有一个【】函数。

【题1.11】C程序的基本单位是【】。

【题1.12】一个c派程序有【 】个main()函数和【】二个其他函数。【题1.13】在一个C源程序中,注释部分两侧的分界符分别是【】和【】。【题1.14】结构化设计中的三种基本结构是【】。

【题1.15】在C语言中,输入操作是由库函数【】完成的,输出函数是由库函数【】完成的。

1.3编程题

【题1.16】编写一个程序,在屏幕上输出你的姓名。试着上机编辑、编译、运行你的程序。

第二章 数据类型、运算符与表达式

2.1选择题

【题2.1】以下结果为整数的表达式(设有int i;char c;float f;)().A.i十f B.i*c C.c十f D.i十c十f 【题2.2】以下使i的运算结果为4的表达式是()。A.int i=0,j=0;(i=3,(j十十)十i); B.int i=1,j=0;j=i=((i=3)*2); C.int i=0,j=1;(j==1)?(i=1);(i=3); D.int i=1,j=1;i+=j十=2;【题2.3】设n=10,i=

4、则赋值运算n%=i+1执行后,n的值是().A.0 B.3 C.2 D.1 【题2.4】逗号表达式(a=3*5,a*4),a十15的值为(),a的值为()。

①A.15 B.60 C.30 D.不确定 ②A.60 B.30 C.15 D.90

【题2.5】如果a=1,b=2,c=3,d=4,则条件表达式a<b?a:c<d?c:d的值为().A.1 B.2 C.3 D.4 【题2.6】下面不正确的字符串常量是()A)’abc’ B)”12’12” C)”0” D)” ”

【题2.7】在程序中可以用来作为变量名的合法的标识符是:_______ A.)static B)23_b1 C)stu_1t D)#33 【题2.8】若有代数式3ae/bc,则不正确的C语言表达式是()A)a/b/c*e*3 B)3*a*e/b/c C)3*a*e/b*c D)a*e/c/b*3 【题2.9】以下不正确的叙述是()

A)在C程序中,逗号运算符的优先级最低

B)在C程序中,APH和aph是两个不同的变量

C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变

D)当从键盘输入数据时,对于整形变量只能输入整形数值,对于实型变量只能输入实型数值

【题2.10】以下正确的叙述是().A)在C程序中,每行中只能写一条语句

B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数 C)在C程序中,无论是正数还是实数,都能被准确无误的表示 D)在C程序中,%是只能用于正数运算的运算符

【题2.11】已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=’A’+’6’-‘3’;后,c2的值为().A)D B)68 C)不确定的值 D)C 【题2.12】在C语言中,要求运算数必须是整形的运算符是().A)/ B)++ C)!= D)% 【题2.13】若以下变量均是整形,且num=sum=7;则计算表达式sUM=num++,sUM++,++num后sum的值为().A)7 B)8 C)9 D)10 【题2.14】 在C语言中,int、char和short三种类型数据在内存中所占用的字节数()。

A)由用户自己定义

B)均为2个字节

C)是任意的D)由所用的机器的机器字长决定 【题2.15】 若有说明语句: char c=‘72’; 则变量c()。

A)包含1个字符

B)包含2个字符

C)包含3个字符

D)说明不合法,c的值不确定

【题2.16】 设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为()。

A)int

B)float C)double

D)不确定

【题2.17】设int n=3;则十十n的结果是(),n的结果是()A)2 B)3 C)4 D)5 【题2.18】设有说明: char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为()。

A)float B)char

C)int

D)double.【题2.19】语句(1,2,3,4)的结果是()。

A)1

B)2

C)3

D)4

2.2填空题

【题2.20】表达式10%3的结果是【】

【题2.21】 执行下列语句后,a的值是【】

int a=12;a+=a-=a*a;【题2.22】 定义int x,yl执行y=(x=1,十十x,x十2)5语句后,y的值是【】 【题2.23】 在C语言中的实型变量分为两种类型,他们是【单精度型(或:float型)】和【双精度型(或;double型]】。

【题2.24】 若a、b和c均是int型变量,则计算表达式后,a值为【】,b值为【】,c值为【】。

a=(b=4)+(c=2)【题2.25】 若有定义:char c=’10’;则变量c中包含的字符个数为【】。

【题2.26】 若x和n均是int型变量,且x的初值为12,n的初值为5,则计算表达式后x的只为【】。

x%=(n%=2)【题2.27】 C语言中的标识符只能由三种字符组成,它们是【】,【】和【】。

【题2.28】 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=’a’+’8’-‘3’的值为【】.【题2.29】 设int a=1,b=2.c=3,d;执行d=!(a十b十c)后,d的结果是【】

第三章 最简单的C程序设计

3.1 选 择 题

【题3.1】以下C程序正确的运行结果是().main(){long y=-43456;printf(“y=%-8ldn”,y);printf(“y=%-08ldn”,y);printf(“y=%08ldn”,y);printf(“y=%+8ldn”,y);} A)y=-43456 B)y=-43456

y=-43456 y=-43456 y=-0043456 y=-0043456 y=-43456 y=+ 43456 C)y=-43456 D)y=-43456 y=-43456 y=-0043456 y=-0043456 y=00043456 y=-43456 y=+43456 【题3.2】以下C程序正确的运行结果是().main(){long y=23456;printf(“y=%3xn”,y);printf(“y=%8xn”,y);printf(“y=%#8xn”,y);} } A)y = 5ba0 B)y = ︼ ︼ ︼5ba0 y = ︼ ︼ ︼ ︼5ba0 y = ︼ ︼ ︼ ︼ ︼ ︼ ︼5ba0 y = ︼ ︼0x5ba0 y =︼ ︼0x5ba0 C)y = 5ba0 D)y = 5ba0 y = 5ba0 y = ︼ ︼ ︼ ︼5ba0 y = 0x5ba0 y = # # # #5ba0 【题3.3】已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据是,正确的数据输入方式是()。(注:︼表示空格,表示回车)

int a1,a2;char c1,c2;scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);A)10A︼20B B)10︼A︼20︼B C)10A20B D)10A20︼B 【题3.4】已有定义int x;float y;且执行scanf(“%3d%3f”,&x,&y);语句时从第一列开始输入数据12345︼678<回车>,则x的值为(),y的值为()。(注:︼表示空格)

【1】A)12345 B)123 C)45 D)345 【2】A)无定植 B)45.000000 C)678.000000 D)123.000000 【题3.5】已有如定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A 和B,当从第一列开始输入数据时,正确的数据输入方式是()。(注:表示回车)

int a1,a2;char c1,c2;scanf(“%d%d”,&a1,&a2);scanf(“%c%c”,&c1,%c2);A)1020AB B)10︼20 AB C)10︼ ︼20︼ ︼AB D)10︼20AB 【题3.6】已有程序和输入数据的形式,程序中输入语句的正确形式应当为()。

(注:︼表示空格,表示回车)main(){ int a;float f;printf(“nInput number:”);输入语句

printf(“nf=%f,a=%dn”,f,a);} Input number:4.5︼ ︼2 A)scanf(“%d,%f”,&a,&f);B)scanf(“%f,%d”,&f,&a);C)scanf(“%d %f”,&a,&f);

D)scanf(“%f %d”,&f,&a);【题3.7】根据定义和数据的输入方式,输入语句的正确形式为()。

已有定义:float f1,f2;数据的输入方式:4.52 3.5 A)scanf(“%f,%f”,&f1,&f2);B)scanf(“%f%f”,&f1,&f2);C)scanf(“%3.2f%2.1f”,&f1,&f2);D)scanf(“%3.2f,%2.1f”,&f1,&f2);【题3.8】阅读以下程序,当输入数据的形式为:25,13,10,正确的输出结果为()。

main(){ int x,y,z;scanf(“%d%d%d”,&x,&y,&z);printf(“x+y+z=%dn”,x+y+z);} A)x+y+z=48 B)x+y+z=35 C)x+z=35 D)不确定值

【题3.9】根据题目中已给出的数据的输入和输出形式,程序中输入输出语句的正确内容是()。

main(){ int x;float y;pringf(“enter x,y;”)输入语句 输出语句 } 输入形式 enter x,y:2 3.4 输出形式 x+y=5.40 A)scanf(“%d,%f”,&x,&y);printf(“nx+y=%4.2f”,x+y);B)scanf(“%d%f”,&x,&y);printf(“nx+y=%4.2f”,x+y);C)scanf(“%d%f”,&x.&y);printf(“nx+y=%6.1f”,x+y);D)scanf(“%d%3.1f”,&x,&y);printf(“nx+y=%4.2f”,x+y);【题3.10】以下说法正确的是().A)输入项可以为一个实型常量,如scanf(“%f”,3.5);

B)只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d”);C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f”,&f);D)当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);【题3.11】根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为().main(){ char ch1,ch2,ch3;输入语句

printf(“%c%c%c”,&ch1,&ch2,&ch3);} 输入形式:A B C

输出形式:A B scanf(“%c%c%c”,&ch1,&ch2,&ch3);scanf(“%c,%c,%c”,&ch1,&ch2,&ch3);scabf(“%c %c %c”,&ch1,&ch2.&ch3);scanf(“%c%c”,&ch1,&ch2,&ch3);【题 3.12 】有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是()。(注:——表示空格)

A)132《回车》 B)1,3,2《回车》 C)a=1——b=3——c=2《回车》 D)a=1,b=3,c=2《回车》

【题3.13】 以下能正确的定义整形变量a,b,c并为其付初值5的语句是().int a=b=c=5; int a,b,c=5; a=5 ,b=5,c=5;a=b=c=5;【题 3.14】 已知ch是是字符形变量,下面不正确的赋值语句是().ch=`a+b`;ch=`o`;ch=`7`+`9`;ch=5+9;【题 3.15 】 已知ch是是字符形变量,下面正确的赋值语句是().ch= `123`;ch=`xff`;ch=`8`;ch=””;【题3.16 】 若有以下定义,则正确的赋值语句是().int a,b;float x A)a=1,b=2 B)b++;C)a=b=5 D)b=(int)x;【题 3.17】 设X,Y均为FLOAT变量,则以下不合法的赋值语句是()A)++x;B)y=(x%2)/10;C)x*=y+8;D)x=y=10;【题3.18】有如下程序,对应正确的数据输入是()。#include main(){ float a,b;scanf(“%f%f”,&a,&b);printf(“a=%f,b=%fn”,a,b);} A.2.04 5.56 B.2.01,5.67 C.A=2.04,B=5.67 D.2.045.67 【题3.19 】以下程序的执行结果是()。

#include main(){ int sum,pad;sum=pad=5;pad=sum++;pad++;++pad;printf(“%dn”,pad);} A.7 B.6 C.5 D.4 【题3.20 】巳知字母A的ASCII码是65,以下程序的执行结果是()。#include main(){ char c1='A',C2='Y';printf(“%d,%dn”,c1,c2);A.A,Y B.65,65 C.65,90 D.65,89 3.2 填空题

【题3.21 】 以下程序的输出结果为【 】.main(){printf(“*%f,%4.3f*n”,3.14,3.1415);} 【题3.22】以下程序的输出结果为【 】.main(){ int x=1,y=2;printf((“x=%d y=%d*sum*=%dn”,x,y,x+y);printf(“10Squared is : %dn”,10*10);} 【题3.23 】假设变量a,b,c为整形, 以下语句借助中间变量把a,b和c中的直进行交换,把b 的直给a, 把c 的直给b, 把a 的直给c,例如,交换前,a=10,b=20,c=30,交换后,a=20,b=30,c=10请填空 【 】;a=b;b=c;【 】.【题3.24 】 假设变量x,为整形变量,则执行下面语句后x的直为【】.x=7;x+=x-=x+x;【题3.25 】以下程序的执行结果是【】。#include main(){ char c='A'+10;printf(“c='%cn”,c);} 【题3.26 】以下程序输入123<cR>后的执行结果是【】.#include main(){ int a,c;char b;scanf(“%d%c%d”,&a,&b,&c);printf(“a=%d,b=%c,c=%dn”,a,b,c);}

【题3.27 】以下程序输入ABC<CR>后的执行结果是【】.#include main(){ char c;scanf(“%3c”,&c);printf(“c=%cn”,c);} 3.3编程题 【题3.28 】“水仙花数”是指一个三位数,它的三个数位数字的立方和这个数的数值相等,编程打印所有的水仙花数。

解:本题适于使用穷举法求解,注意穷举范围为三位数100~999,穷举条件为:三位数的三个数位数字的立方和等于这个数的数值。需要使用循环结构。程序如下:

#include main(){ int d0,d1,d2,n;printf(“The numbers are :”);for(n=100;n<=999;n++){ d0=n%10;d1=n%100/10;d2=n/100;if(n==d0*d0*d0+d1*d1*d1+d2*d2*d2)printf(“%5d”,n);} printf(“n”);}

第三篇:教材实验习题

高中生物教材实验强化训练

1.用一个紫色洋葱的鳞片叶可做下列哪些实验的材料?(多选)

A.观察植物细胞减数分裂B.观察植物细胞的质壁分离和复原 C.观察细胞中DNA和RNA的分布D.叶绿体中四种色素的提取和分离

2.“检测生物组织中还原糖、脂肪和蛋白质”、“观察DNA和RNA在细胞中的分布”、“探究温度对酶活性的影响”三个实验中,其共同点是

A.实验结果都有颜色变化B.实验过程中都要用到斐林试剂 C.实验过程中都要用到显微镜D.实验设计中都需要有对照组 3.下列有关生物学实验操作、材料、条件等方面的叙述,正确的是

A.“探究水族箱中的群落的演替”实验中,水族箱应放在黑暗密室中 B.“观察细胞有丝分裂”实验中,洋葱根尖细胞用吡罗红染色 C.“探究酵母菌种群数量动态变化”实验中,用培养液培养酵母菌

D.“用高倍显微镜观察叶绿体和线粒体”实验中,叶绿体和线粒体都不需染色

4.用显微镜观察某标本时,已知目镜的放大倍数为10×,物镜的放大倍数为40×,则物象的放大倍数为

A.长度和宽度均放大400倍B.面积放大了400倍C.长度或宽度放大400倍D.体积放大了400倍 5.下列试剂与鉴定的物质及颜色变化对应不正确的一组是 A.双缩脲试剂-蛋白质-紫色;健那绿染液-线粒体-蓝绿色

B.苏丹Ⅲ染液-脂肪-橘黄色;碘液-淀粉-蓝色;重铬酸钾溶液-酒精-灰绿色 C.甲基绿-DNA-绿色;苏丹Ⅳ染液-脂肪-红色;斐林试剂-麦芽糖-砖红色 D.龙胆紫染液-染色体-紫色;吡罗红-DNA-红色

6.下列关于“探究生长素类似物促进插条生根的最适浓度”的实验叙述中,错误的是 A.探究的问题:所选定的生长素类似物促进某种植物插条生根的最适浓度是多少 B.实验中用生长素类似物处理插条的方法可选用浸泡法或沾蘸法

C.如果用浸泡法,实验中不同浓度生长素类似物溶液浸泡不同插条的时间长短要有不同的梯度 D.在正式实验前先做一个预实验,目的是为正式实验摸索条件

7.在“观察DNA和RNA在细胞中的分布”实验中,将口腔上皮细胞置入8%的盐酸溶液的主要目的是

A.使细胞中的DNA水解成脱氧核苷酸

B.用盐酸改变生物膜的通透性,加速染色剂进入细胞 C.杀死细胞,便于染色

D.使染色体中的DNA与蛋白质分离,有利于吡罗红与DNA结合 8.关于生物学实验的描述正确的是

A.观察有丝分裂时,换用高倍镜后视野会变暗,这时应该使用较大光圈或用平面镜反光 B.观察洋葱根尖细胞有丝分裂时在高倍镜的视野中可以看到一个细胞从前期到中期的变化 C.观察低温诱导染色体数目的变化时,最好选择均处于分裂中期的正常细胞和变异细胞进行观察比较 D.取人口腔上皮细胞,用吡罗红甲基绿染色并制成临时装片,在高倍镜下可观察到蓝绿色的线粒体。9.下列关于实验的描述,正确的是

A.将在蔗糖溶液中已经发生质壁分离的洋葱表皮细胞转到更高浓度的蔗糖溶液中则发生质壁分

离的复原

B.将斐林试剂加入到蔗糖溶液中,加热后出现砖红色沉淀

C.将肝脏研磨液煮沸冷却后,加入到过氧化氢溶液中立即出现大量气泡。D.将双缩脲试剂加入到蛋清稀释液中,溶液变成紫色 10.下列有关酶特性的实验设计中,最科学、严谨的一项是

12.下列有关生物实验的叙述,正确的是

A.a-淀粉酶的最适宜的温度是37摄氏度B.可用无水乙醇提取叶绿体中的色素 C.氨基酸溶液中加入双缩脲试剂产生紫色反应

D.观察有丝分裂、质壁分离及复原中,细胞始终处于生活状态

13.在高中生物学实验中多次用到酒精,下列关于酒精使用的叙述,正确的是()A.有丝分裂实验中,解离液是15%的盐酸和95%的酒精按1:1的比例配制的 B.体积分数为95%的酒精常用作医用和实验室的消毒

C.在脂肪鉴定实验中,可用体积分数为50%的酒精溶液固定脂肪滴 D.用体积分数为70%的酒精提取绿叶中色素,实验现象不受影响 14.(多选)下列是有关实验的操作方法或结果,错误的是 A.甘蔗中含有大量的糖,可用作还原糖鉴定实验的替代材料B.低温和秋水仙素都是通过抑制纺锤体的形成导致染色体数目的变化 C.记名计算法适于调查个体较大、种群数量有限的动物类群

D.蝗虫减数分裂期短,观察一个精母细胞就可见减数分裂的连续变化

15.某生物兴趣小组对某小学调查了人的眼睑遗传情况,对调查结果进行汇总和整理,根据上表中的数据,说法正确的是

A.根据①可以判断双眼皮为显性性状,且双亲为杂合体

B.根据上表中的数据可以判断子代数量553数据是一个错误数据 C.根据③可以判断双眼皮为显性性状,且双亲为纯合体 D.根据①可以判断双眼皮为显性性状,且双亲为纯合体

16.图1所示的是高中生物的有关实验,请据图判断下列叙述正确的是

A.图甲显示四种色素都能溶解在层析液中,b色素的溶解度最大 B.若要观察洋葱根尖细胞的有丝分裂,应选择图乙中细胞①

C.图丙显示的是高倍镜下黑藻细胞中叶绿体的移动方向,而实际移动方向与其相反D.图丁可以反映出细胞的物质运输效率与细胞大小之间的关系

17.甲、乙、丙、丁、戊、己是有关显微镜的几个操作步骤,下边两图是在显微镜下观察到的番茄果肉细胞的视野图,要将左图转换成右图,正确顺序应是甲:转动粗准焦螺旋乙:转动细准焦螺旋丙:调节反光镜和光圈丁:转动转换器戊:移动载玻片己:调节通光孔

A.甲→乙→己→丙→戊B.丁→乙→己→丙 C.戊→丁→乙→丙D.丁→戊→甲→丙 18..观察洋葱根尖细胞有丝分裂,若由于细胞染色较轻而影响观察效果,此时一般应如何调节显微镜视野

A.放大光圈或使用平面反光镜B.放大光圈或使用凹面反光镜 C.缩小光圈或使用平面反光镜D.缩小光圈或使用凹面反光镜 19

合理的是

A.缺少正常pH的对照组B.实验结果预期不正确 C.检验实验结果的试剂选择不恰当D.实验操作步骤的安排合理

21、下图为探究酵母菌进行的呼吸作用类型的装置图,下列现象中能说明酵母菌既进行有氧呼吸,同时又进行无氧呼吸的是()

A.装置1中液滴左移,装置2中液滴不移动 B.装置1中液滴左移,装置2中液滴右移 C.装置1中液滴不动,装置2中液滴右移D.装置1中液滴右移,装置2中液滴左移

22、下图是某同学为自己的研究课题而设计的实验装置。下列分析正确的是()

①该同学的研究课题可能是光合作用是否需要CO2作原料 ②实验中的石灰水的作用是检验空气中的CO2是否完全除去 ③过滤泵的作用可能是阻止有机物的运输 ④该实验不需要再设计对照实验

A.①②③④B.①②③C.①②D.①②④

23、下列有关生物学实验的叙述,正确的是:

A.探究培养液中酵母菌种群数量随时间变化的实验中需要另设置对照实验 B.模拟细胞大小与物质运输的关系实验表明细胞体积越大,物质运输效率越高 C.绿叶中色素的分离原理是色素能溶解在无水乙醇中,且不同色素溶解度不同 D.恩格尔曼的水绵实验中好氧细菌的作用是确定水绵光合作用释放氧气的部位

24、将甲种伞形帽伞藻的A部分与乙种菊花形帽伞藻的B部分(如图)嫁接在一起,第一次长出的帽状体呈中间类型,若切除这一帽状体,第二次长出的帽状体为与甲相同的伞形帽。下列分析不正确的是: A.甲、乙两种伞藻细胞均含有多种具膜的细胞器 B.中间类型可能同时含甲、乙两种伞藻的蛋白质 C.若再次切除帽状体,长出的帽状体仍为伞形帽 D.该实验证明了帽状体的形态建成只受细胞核控

26.某小组进行观察洋葱根尖分生组织细胞有丝分裂的实验,下列关于该实验的叙述正确的是

A.盐酸和酒精混合液主要起固定作用

B.碱性染料吡罗红(派洛宁)可用于染色体染色

C.观察到分裂末期细胞内细胞板向四周扩展形成新的细胞壁

D.细胞内染色体的存在状态可作为判断有丝分裂各时期的依据

27、下列关于酶特性试验设计的叙述中,正确的是 A、验证酶的专一性时,自变量是酶的种类 B、验证酶的高效性时,自变量是酶的浓度 C、探究温度对酶活性影响时,自变量是温度

D、探究酶催化作用的最适PH时,应设置过酸、过碱、中性三组

28.观察与实验是生物科学研究中的重要手段。以下是四位同学在实验室中利用光学显微镜观察后的记录,你认为符合事实的是

A.有丝分裂实验中,洋葱根尖分生区的细胞中染色体正向两极移动 B.在高倍镜下可看到,黑藻具有双层膜结构的叶绿体

C.将在蔗糖溶液中已经发生质壁分离的洋葱表皮细胞转移到更高浓度的蔗糖溶液中,则发生质壁分离复原

D.若观察的细胞是无色透明的,为了取得明显的效果,应调节出较暗的视野 29.下列是教材相关实验,有关叙述正确的是

①花生子叶组织中脂肪的检测②观察植物细胞的质壁分离和复原 ③观察植物细胞的有丝分裂④探究酵母菌种群的数量变化 ⑤叶绿体色素的提取和分离⑥低温诱导染色体加倍 A.除⑤外,以上实验都需要进行染色处理B.实验⑤中,分离色素采用的是纸层析法C.只有实验②③⑥需要使用显微镜观察D.②③④⑥中细胞要始终处于生活状态 30.下列实验操作能达到预期结果的是

A.在“观察根尖分生组织细胞的有丝分裂”实验中,统计每一时期细胞数占细胞总数的比例,能比较细胞周期各时期的时间长短

B.在鉴定还原糖时为避免样液本身颜色的干扰,应选取接近白色或无色的小麦淀粉提取液 C.将载有水绵和好氧细菌的装片置于黑暗且缺氧的环境中,用极细光束照射后,细菌集中于

有光照的部位,能说明光合作用产生的氧气来自于水

D.在单侧光照射下,金丝雀虉草胚芽鞘向光弯曲生长,去尖端的胚芽鞘不生长也不弯曲,能说明生长素具有极性运输的特点

31.酒精是生物实验常用试剂之一,下列实验中关于酒精的使用,不正确的是()

A.用苏丹III染液对花生种子中的脂肪颗粒染色后,一般要用体积分数为50%的酒精洗去浮色B.色素的提取和分离实验中,用无水酒精作有机溶剂提取色素

C.色素的提取和分离实验中,也可用95%的酒精加适量的无水碳酸钠提取色素D.制作洋葱根尖细胞装片时,用体积分数为95℃的酒精对解离后的根尖漂洗 32.下列有关实验操作的叙述中,正确的是

A.通常以标志重捕法调查土壤中小动物类群的丰富度

B.在叶绿体色素提取和分离实验中,可用培养皿盖住小烧杯以避免层析液挥发 C.探究生长素类似物促进插条生根的最适浓度实验中,插条不能带有芽与叶 D.用过氧化氢作实验材料来探究温度对过氧化氢酶活性的影响 33.下面4项有关生物学实验研究的表述,正确的是()

A.切断小鼠大脑皮层与下丘脑的神经联系,小鼠不能维持体温恒定

B.用

3H标记的鸟嘌呤可研究DNA在细胞周期中含量的变化

C.用带有3

5S和3

2P的培养基培养的T2噬菌体分别侵染大肠杆菌,可以证明DNA是遗

传物质

D.利用血球计数板统计培养液中的酵母菌数量来探究种群数量的变化 34.在使用普通光学显微镜进行的观察实验中,下列叙述不正确...的是 A.在用洋葱外表皮做质壁分离实验时,可看到液泡变小,颜色变深 B.观察动物细胞减数分裂过程时,可选用小鼠卵巢组织进行 C.用口腔上皮细胞观察线粒体时,不需要解离和漂洗过程 D.用菠菜叶下表皮观察保卫细胞时,可以看到叶绿体 35.下列有关实验的说法正确的是A.“观察DNA和RNA在细胞中的分布”中,盐酸的作用是使细胞彼此分离

B.使用溴麝香草酚蓝水溶液检测酵母菌无氧呼吸产生酒精,其颜色变化是蓝→绿→黄C.用斐林试剂鉴定梨果肉组织的还原糖时,溶液的颜色变化为浅蓝色→砖红色

D.“用高倍显微镜观察线粒体”的实验中,可取藓类的小叶滴加健那绿盖盖玻片观察 36.下面对高中生物有关实验的叙述,正确的是()

A.将小麦发芽的种子研磨液置于试管中,加入斐林试剂,试管内立即呈现砖红色沉淀,说明发芽的小麦种子中含有还原糖

B.用显微镜观察小麦根尖成熟区表皮细胞,可观察到有丝分裂的图象,从而判断出每个细胞中有42条染色体

C.经碱性染料染色的洋葱表皮细胞,镜检时可看到每条染色体被染成深色 D.显微镜下观察根尖的有丝分裂,在细胞呈正方形的区域易找到分裂期的细胞 37.下列关于低温诱导染色体加倍实验的叙述,错误的是()A.实验原理是低温抑制纺锤体的形成,使子染色体不能移向两极 B.解离后的洋葱根尖应漂洗后才能进行染色 C.龙胆紫溶液可以使细胞中的染色体着色

D.显微镜下可以看到大多数处在分裂期,细胞中的染色体数目发生改变 38只有在保持细胞活性的条件下,才能显示细胞中某物质或结构的实验是 A.苏丹Ⅲ染色体观察花生种子子叶细胞中的脂肪 B.龙胆紫染色观察洋葱根尖分生区细胞的有丝分裂 C.健那绿(詹纳斯绿B)染色观察动物细胞的线粒体

D.甲基绿、派洛宁(呲罗红)染色观察动物细胞中的DNA和RNA

39.下列关于科学研究方法与实验目的叙述正确的是

A.研究减数分裂中染色体变化可以用模型构建的方法

B.观察叶绿体、线粒体和质壁分离与复原的实验材料不全为活体 C.用纸层析法可以提取和分离植物细胞中的各种光合色素 D.用样方法、标志重捕法可调查种群密度和物种的丰富度

40以下关于实验材料和方法的叙述,错误..的是 A 检测还原糖和蛋白质都要使用浅色实验材料

B 观察质壁分离和探究酵母菌的呼吸方式都要使用活体材料 C 样方法和标志重捕法都必须随机取样

D制作小生态瓶时,应定时向瓶内通气,保证生物的有氧呼吸 41.下列与酶相关实验的叙述中,正确的是()A.探究酶的高效性时,自变量可以是酶的种类 B.探究酶的专一性时,自变量一定是酶的种类 C.探究pH对酶活性的影响时,自变量不止一种 D.探究温度对酶活性的影响时,因变量不止一种

42.下列实验中适合采用菠菜的叶肉细胞作实验材料的是

A.检测生物组织中的还原性糖B.观察DNA和RNA在细胞中的分布 C.观察植物细胞的有丝分裂D.观察植物细胞的叶绿体 43.下列实验操作能达到预期结果的是

A.在“叶绿体中色素提取和分离”实验中,将提取出的色素滤液迅速连续画在已制备好的滤纸条上,放入层析液中,达到分离出四种色素的目的B.在“探究酵母菌种群数量变化”实验中,培养期内定时取样,用血球计数板计数,计算出平均密度,即可绘制出酵母菌种群增长曲线

C.在“探究a-萘乙酸促进插条生根的最适浓度”实验中,用高浓度的a-萘乙酸溶液浸泡插条基部一天后,观察生根情况以确定最适浓度

D.在“生物组织中蛋白质的鉴定”实验中,将2mL豆浆稀释液与2mL现配制出的双缩脲试剂混合后摇匀,水浴加热后观察颜色变化,证明豆浆中含有蛋白质

44、下列哪一项试剂在两个实验中的作用相同()

A.酒精在观察植物细胞有丝分裂和检测生物组织中的脂肪中的作用

B.硫酸铜在检测生物组织中的还原糖和检测生物组织中的蛋白质中的作用 C.盐酸在观察植物有丝分裂和低温诱导植物染色体数目的变化中的作用

D.蒸馏水在提取纯净的动物细胞膜和探究生长素类似物促进插枝生根的最适浓度中的作用

45、下列有关生物科学研究方法的表述中,错误的是()

A.假说—演绎法中,演绎推理的结论不一定正确

B.类比推理得出的结论,不一定具有逻辑上的必然性

C.数学模型方法就是指借助具体的实物,对认识的对象进行形象化描述 D.同位素标记法通过追踪同位素标记的化合物,来研究化学反应的详细过程 46.下列调查活动或实验中,计算所得数值与实际数值相比,可能偏小的是()A.标志重捕法调查褐家鼠种群密度时标志物脱落B.调查某遗传病的发病率时以患者家系为调查对象

C.样方法调查蒲公英种群密度时,在分布较稀疏的地区取样

D.用血球计数板计数酵母菌数量时,统计方格内和在相邻两边上的菌体

47、以下关于实验材料选择原因的叙述,错误的是()

A.孟德尔选择豌豆做杂交实验是因为豌豆为闭花受粉的作物,易获得纯种B.选择蛋清或豆浆作蛋白质鉴定是因其富含蛋白质而且不干扰显色反应C.选择根尖分生区作为观察细胞有丝分裂的材料是因为该区细胞容易染色D.选择紫色洋葱表皮作为观察植物细胞质壁分离是因为紫色液泡便于观察

48、科学方法是生物学学习与研究的精髓之一,下列有关叙述错误..的是()A.模型是人们为了某种特定目的而对认识对象所作的一种简化的概括性的描述,如DNA双

螺旋结构模型,种群“J”型增长的数学模型

B.差速离心法分离细胞器是利用在高速离心条件下的不同离心速度所产生的不同离心力,将

各种细胞器分离开来

C.摩尔根及其同事运用假说—演绎法,合理地解释了果蝇红白眼性状的遗传现象,并用实验

证明基因在染色体上

D.调查菊花植株蚜虫种群密度不能用样方法只能用取样器取样法 49.下列实验操作方法或结果,正确的是()

A.检测还原糖时可用番茄汁代替苹果汁做材料,用苏丹Ⅳ代替苏丹Ⅲ B.用光镜观察质壁分离时,可看到细胞壁、细胞膜、叶绿体和染色体 C.用纸层析法分离色素时扩散最快的是在层析液中溶解度最大的胡萝卜素 D.用光镜观察洋葱根尖有丝分裂时,可看到细胞壁、染色体和赤道板

50.下表是生物科学史上一些经典实验的叙述,表中“方法与结果”和“结论或观点”能匹配的1—

5、A C A D6—10DBCDD11—15 CBAC16-20 DCCBD

21-25BADDC26—30 DCDBA31-35DBDBC36-40DDCAD 41-45DDBCC46—51CCDCAB

第四篇:《实验核医学》习题

《实验核医学》习题

一、填空题

第一章

12311Na是稳定性核素,从中质比看,则2411Na将发生

β-

衰变,2211Na将发生

β+

衰变。

2具有相同质子数的一类原子核称为某一

核素,同种元素各核素间

互为

同位素。

3原子核内的质子数相同,中子数也相同,但所处能态不一致的核素间互为

同质异能素。

放射性核素的主要衰变方式有

α衰变、β-衰变、β+衰变、电子俘获衰变

γ衰变。

α粒子的本质是

氦核,β-粒子的本质是

负电子,β+粒子的本质是

正电子,γ射线的本质是

光子(电磁波),X射线的本质是

电磁波。

6带电粒子与物质相互作用的类型有

电离、激发、弹性碰撞

韧致辐射。

γ射线与物质相互作用的类型有

光电效应、康普顿效应

电子对生成效应。

8韧致辐射是

高能β

粒子受物质原子核电场作用的结果,湮没辐射是

β+

粒子的吸收形式。

9高能β粒子穿过物质时,在物质原子核电场的作用下,产生

韧致辐射,β+粒子与物质相互作用,当其动能完全耗尽后,和周围的一个自由电子结合,产生

湮没辐射。

10俄歇电子能量来自核外电子,内转化电子能量来自

原子核。

11核跃迁规律用放射性活度表示为

A=A0e-λt,放射性活度的单位可用Bq和Ci等表示,1mCi等于

MBq。

12吸收剂量的国际专用单位是

Gv,当量剂量的国际专用单位是

Sv。

13辐射剂量限制的目的是

防止发生对健康有害的确定性效应(接受放射治疗的患者除外)、限制随机效应发生的几率,即将随机效应的发生率控制在被认为可以接受的水平。

14放射实践的防护原则是

实践的正当化、辐射防护的最优化

个人剂量限值。

15辐射生物效应按效应发生规律和性质分

随机效应

个人剂量限值。

16为了防止对职业人员健康有害的确定性效应,对眼晶体的年当量剂量限值不得超过

150

mSv,对其它组织不得超过

500

mSv。为了防止随机效应发生,职业人员在全身均匀照射情况下年当量剂量限值为

mSv,在全身不均匀照射情况下的有效剂量为

∑TWTHTR

≤20

mSv。

非职业人员(公众)年当量剂量限值为

mSv。

17外照射防护的基本方法有

时间防护、距离防护、屏蔽防护

源项控制法。

18对γ射线的屏蔽防护宜选

宜选高原子序数

原子序数的材料,对高能β射线宜选

原子序数的材料,外层再加一层

原子序数的材料。

19选用铅以屏蔽防护

γ

射线,选用有机玻璃+铅以屏蔽防护

高能β射线。

α、β、γ三种射线的外照射危害的顺序是

γ>β>α,内照射危害的顺序是

α>β>γ。

21放射性物质侵入机体的途径有

消化道、呼吸道

皮肤。

22放射性废物的治理途径有

静置衰变法、稀释排放法

浓缩贮存法。

23对生物体来说,电离辐射的直接作用是其作用于

生物大分子,引起

生物大分子损伤。

24对生物体来说,电离辐射的间接作用是其作用于

水,主要产生

OH、eaq-(水合电子)、H2O2

等产物再作用于生物大分子。

25组织细胞对电离辐射的敏感性与其分裂能力成正比,与其分化程度成反比。

26局部组织由于氧浓度的增高而对辐射的敏感性

增高,此现象称

氧效应

;机体组织温度增加而对辐射敏感性

增高,此现象称

温度效应。

第二章

27绝对测量所得的单位是

衰变数•分-1(dpm)、衰变顺•秒-1(dps、Bq),相对测量所得的单位是

计数•分-1(cpm)、计数•秒-1(cps)。

28固闪测量仪的探头部分是由

闪烁体、光导

光电倍增管

组成,其中能将辐射能转化成光能的部分是

闪烁体,对于γ探测器,其成分是

NaI(T1)晶体。

29液闪测量中的化学发光是由于

闪烁液内发生化学反应

引起。

30磷光是由于

闪烁液受到光照后

产生,而液闪仪的符合线路可排除。

31液闪测量时特殊本底计数的主要来源有样品瓶、静电感应、化学发光

磷光。

32液体闪烁测量使用的闪烁液其组成包括

溶剂、闪烁剂和添加剂、33淬灭产生的原因主要有

局部淬灭、浓度淬灭、化学淬灭和

颜色淬灭。

34进入脉冲高度分析器的脉冲信号,最后能通过反符合线路输出的是

脉冲信号。B

A

低于下甄别器

B

高于下甄别器,低于上甄别器

C

高于上甄别器

D

低于下甄别器,高于上甄别器

第三章

35制备放射性核素标记化合物的方法有

化学合成法(S或N)、同位素交换法(S或G)

生物合成法(U或S)。

36标记化合物的主要质量指标有

放射化学纯度、放射性比活度

放射性浓度和生物活性与免疫活性。

37标记化合物的辐射分解方式有

初级内分解、初级外分解

次级分解。

38辐射自分解的次级分解是指

作用而使标记物分解。

A

射线与标记物本身

B

核衰变

C

射线与周围其它物质

D

氧化、还原或微生物

39辐射自分解的初级内分解是指

作用而使标记物分解。

A

射线与标记物本身

B

核衰变

C

射线与周围其它物质

D

氧化、还原或微生物

40辐射自分解的初级外分解是指

作用而使标记物分解。

A

射线与标记物本身

B

核衰变

C

射线与周围其它物质

D

氧化、还原或微生物

第四章

41核素示踪的原理是

同位素核素化学性质相同原理

同位素核素物理性质不同原理。

42放射自显影的材料包括

感光材料

放射性核素或其标记物。

43宏观自显影片制备常用

接触法

法,光镜自显影片制备常用

对扩散性示踪剂应采用接触法;对非扩散性的示踪剂,多采用液体乳胶浸膜法、湿贴法或揭膜乳胶法

法,电镜自显影片则要制备

超薄组织切片。

第五章

放射免疫分析-RIA

免疫放射分析-IRMA

受体的放射性配基结合分析-RBA

抗原-Ag

抗体-Ab

放射性标记抗原-*Ag

放射性标记抗体-*Ab

RIA的基本试剂包括

基本试剂包括标准品(Ag)、特异性结合抗体(Ab)

标记抗原(*Ag)。

RIA的基本条件包括

*Ag与Ag免疫活性相同、*Ag与Ab恒量、和

*Ag与Ag总量大于Ab有效结合位点。

RIA中鉴定抗血清质量的指标主要有

亲和力、特异性和

滴度。

RIA的*Ag-Ab与

Ag

比,IRMA的Ag-*Ab

Ag呈

比。

RIA的B0管结合率最

大,IRMA的B0管就是

管。

RIA中若适当提高*Ag的比活度

和Ab的滴度,可提高方法的灵敏度,而工作曲线相对变

陡(斜)。

RIA使用

质控血清(样品)

进行质量控制。

RBA的多点饱和实验可获得

RT

KD。

RBA中使用的非标记配体用作是为了获取

非特异结合率(NSB)。

RBA类型有

饱和

实验、动力学

实验和

竞争取代实验。

RIA的NSB(非特异结合)管不含

Ab,IRMA的NSB管就是

0

管。

RIA中若适当提高*Ag的和Ab的,可提高方法的灵敏度。

A

放射性比活度、亲和力

C

放化纯度、滴度

B

放射性活度、特异性

D

放射性比活度、滴度

二、名词解释

第一章

1实验核医学

2核素

3同位素

4同质异能素

5放射性核素

6核衰变

7俄歇电子

8内转换电子

9放射性活度(A)

10放射性比活度

11衰变常数(λ)

12半衰期(T1/2)

13电离

14激发

15韧致辐射

16湮灭辐射

17契仑科夫辐射

18光电效应

19康普顿效应

20电子对生成效应

21随机效应

22确定性效应

23吸收剂量(D)

24当量剂量(HTR)

25辐射权重因数(WR)

26组织权重因数(WT)

27有效剂量(E)

28基本限值

29直接作用

30间接作用

31氧效应

32温度效应

第二章

33绝对测量

34相对测量

35衰变率

36计数率

37探测效率

38本底

39化学发光

40磷光

41淬灭

第三章

42放射性核素标记化合物

43同位素标记

44非同位素标记

45放射化学纯度

46辐射自分解

第四章

47放射自显影术

第五章

48体外放射分析

49亲和常数K

50交叉反应率

51抗血清的滴度

三、问答题

第一章

1什么样的原子核是稳定的?什么样的原子核是不稳定的?

2γ射线的发射能否影响原子核的原子序数和质量数?为什么?

3简述核跃迁的种类。

4何谓一次核跃迁的定律?怎样用数学式表达?

5带电粒子与物质相互作用有哪些类型?

6γ射线与物质相互作用有哪些类型?

7辐射剂量限制的目的是什么?放射防护的原则有哪些方面?

8辐射效应有哪几种分类方法?怎样分类?

9放射工作人员年当量剂量限值的标准有哪些内容?

g射线由外照射防护的基本方法有哪些?

11简述β射线由外照射防护的主要内容。

12开放型放射性物质可通过哪些途径侵入机体?内照射防护主要措施有哪些?

13放射性废物按形态分哪几种?其处理原则有哪几方面?

14电离辐射生物效应有哪些影响因素?

第二章

15叙述光电倍增管的基本结构和工作原理。

16叙述固体闪烁的基本过程。

17试述液体闪烁的基本过程。

18叙述单道脉冲高度分析器的组成和工作原理。

19在液体闪烁测量中使用的闪烁液由哪几部分组成?各有什么作用?

20何谓淬灭?淬灭产生的原因有哪几方面?

第三章

21制备放射性核素标记化合物的方法有哪些?

22放射性核素标记化合物的质量控制指标有哪些?

23叙述放射性碘标记蛋白质的基本原理。

第四章

24应用放射自显影技术进行生物医学示踪实验包括哪些环节?

第五章

25体外放射分析有哪几种类型?

26试述RIA的原理和基本条件。

27试述竞争性与非竞争性体外放射分析的基本原理。

28试述IRMA的原理。

RIA与IRMA的基本原理有哪些不同点?

RIA使用的抗血清质量指标有哪些?

RIA质量控制的内容包括哪些方面?试述其实验室内部质量控制的方法。

32影响免疫放射分析的主要因素有哪些?

33受体放射分析的实验方法包括哪几方面?可获得哪些参数或信息?

四、计算题

第一章

1已知108Au的半衰期(T1/2)为3天,求其衰变常数(λ);

40kBq的108Au经过6天后,其放射性活度(A)还剩多少Bq?

2某核医学科ECT室于5月18日上午8时给一患者做99mTc-MIBI

心肌显像,从99Mo-99mTc产品说明书上得知,99Mo的放射性活度

为29.6GBq,标定时间是5月10日上午8时,求使用99mTc当天

99Mo的放射性活度为多少GBq?(99Mo的T1/2=66h)

3某放射性物质10mg,溶解于2ml的稀释液中。取5μl进行放

射性测量,计数率为25830cpm,仪器探测效率为60%,求该物

质的放射性活度是多少Bq?其放射性比活度和放射性浓度各是

多少?

第五篇:实验一 语言实验

微机原理与接口技术实验(1)

实验一 汇编语言程序上机过程 1 实验二 屏幕字符显示程序 3 实验三 音乐程序 5 实验四 键盘和窗口程序 7 实验五 活动图形显示程序 9 实验六 磁盘文件操作程序 12

实验

一、实验二必做,其余可以选做

实验一 汇编语言程序上机过程

实验目的:

1、掌握常用工具软件 PE,MASM和LINK的使用。

2、伪指令: SEGMENT,ENDS,ASSUME,END,OFFSET,DUP。

3、利用的 1号功能实现键盘输入的方法。

4、了解.EXE文件和.COM文件的区别及用INT 21H 4C号功能返回系统的方法。程序: data segment message db 'This is a sample program of keyboard and disply' db 0dh,0ah,'Please strike the key!',0dh,0ah,'$' data ends stack segment para stack 'stack' db 50 dup(?)stack ends code segment assume cs:code,ds:data,ss:stack start: mov ax,data mov ds,ax mov dx,offset message mov ah,9 int 21h again: mov ah,1 int 21h cmp al,1bh je exit cmp al,61h jc nd cmp al,7ah ja nd and al,11011111b nd: mov dl,al mov ah,2 int 21h jmp again exit: mov ah,4ch int 21h code ends end start 实验步骤:

1、用用文字编辑工具(记事本或EDIT)将源程序输入,其扩展名为.ASM。

2、用MASM对源文件进行汇编,产生.OBJ文件和.LST文件。若汇编时提示有错,用文字编辑工具修改源程序后重新汇编,直至通过。

3、用TYPE命令显示1产生的.LST文件。

4、用LINK将.OBJ文件连接成可执行的.EXE文件。

5、在DOS状态下运行LINK产生的。EXE文件。即在屏幕上显示标题并提示你按键。每按一键在屏幕上显示二个相同的字符,但小写字母被改成大写。按ESC键可返回DOS。若未出现预期结果,用DEBUG检查程序。实验报告:

1、汇编,连接及调试时产生的错误,其原因及解决办法。

2、思考:

1)若在源程序中把INT 21H的'H'省去,会产生什么现象? 2)把 INT 21H 4CH号功能改为 INT 20H,行不行?

实验二 屏幕字符显示程序

实验目的:

通过实验掌握下列知识: 1、8086指令: JMP,ROR,XOR,HLT。

2、利用DOS功能调用INT21H的2号和9号功能进行屏幕显示的方法。

3、直接向视频RAM(VRAM)送ASCII码进行屏幕显示的方法。

4、IBM-PC机的ASCII码表及控制字符。

5、命令(。COM)文件及使用方法。

6、利用^Break退出程序的方法及局限性。实验内容及步骤:

一、利用INT 21 0AH号功能调用显示字符串。

1、用A命令在100H处键入下列程序: MOV AH, 9 MOV DX,110 INT 21 INT 20

2、用A命令在110H处键入下列字符串的ASCII码: DB 'This is a sample!$'

3、用N命令和W命令将此程序(包括数据区)存入文件名为AA。COM的磁盘文件中。(存入前BX:CX必须置为文件长度值)。

4、用Q命令退出DEBUG。

5、在DOS命令下打AA,运行此程序,即在屏幕上显示'This is a sample!'字符串,若不出现,用DEBUG检查程序有无错误。

二、利用INT 21H 2号功能显示字符:

1、用A命令在100H处键入下列程序: XOR DL,DL MOVCX,100 LOP:MOV AH,2 INT 21 INC DL PUSH CX MOV CX,8 DELY: PUSH CX MOV CX,0 J: LOOP J POP CX LOOP DELY POP CX LOOP LOP INT 20

2、用G命令运行程序,即在屏幕上依次缓慢的显示256个ASCII字符。仔细观察每个字符,和IBM-PC ASCII码表对照,看07H-0DH处控制字符显示结果与表上有何不同?

3、按CTRL+BREAK退出此程序,若一次不行可多做几次。

三、直接向VRAM送ASCII码显示字符

1、用A命令在100H处键入下列程序: MOV AX,B000 MOV DS,AX XOR AL,AL XOR BX,BX MOV CX,100 LOP: MOV [BX],AL INC BX INC AL PUSH CX MOV CX,8 DELY: PUSH CX MOV CX,0 J: LOOP J POP CX LOOP DELY POP CX LOOP LOP INT 20

2、用N命令和W命令将此程序存入BB.COM文件中。(一定要先存入!)

3、用G命令运行此程序,仔细观察每一个ASCII码显示结果,并和字符表及上一道程序运行情况进行对照,其控制字符区(07-0DH)显示结果和INT 21H2号功能调用有何不同? 四。自编一个程序,要求显示AX的内容,即能显示AX=xxxx。

调试时AX的内容可用R命令赋值,也可用MOV指令赋值。实验报告要求:

1、各项实验记录及观察体会。

2、利用INT 21H显示和直接向VRAM送ASCII码显示方法在显示结果上有什么不同?

3、自编程序草稿及调试结果。

实验三 音乐程序

实验目的:

1、掌握PC机发音原理及音乐程序编制方法。2、8086指令: IN,OUT,DIV,OR 实验内容:

一、发音程序。

1、用DEBUG输入下列程序: MOV DX,4000H IN AL,61H AND AL,FCH LOP: XOR AL,02H OUT 61H,AL MOV CX,0140H DEY: LOOP LOP DEC DX JNE LOP INT 21H INT 20H

2、在DEBUG下运行此程序,改变延时时间常数,注意声音高低变化。

二、音乐程序。

1、输入,汇编,连接并运行下列程序: stacksg segment para stack dw 32 dup(?)stacksg ends datasg segment tiger db 0ah,0dh,'two tiger。$' tig_freq dw 2 dup(262,294,330,262)dw 2 dup(330,349,392)dw 2 dup(392,440,392,349,330,262)dw 2 dup(294,196,262),0ffffh tig_time dw 10 dup(25),50,25,25,50 dw 2 dup(12,12,12,12,25,25)dw 2 dup(25,25,50)datasg ends codesg segment assume cs:codesg,ds:datasg,ss:stacksg start: mov ax,datasg mov ds,ax lea dx,tiger mov ah,9 int 21h lea si,tig_freq lea bp,ds:tig_time call play mov ah,4ch int 21h play proc freq: mov di,[si] cmp di,0ffffh je end_ply mov bx,ds:[bp] call sound add si,2 add bp,2 jmp freq end_ply: ret play endp sound proc mov al,0b6h out 43h,al mov dx,14h mov ax,4f38h div di out 42h,al mov al,ah out 42h,al in al,61h mov ah,al or al,3 out 61h,al wait: mov cx,5000 spkr_on: loop spkr_on dec bx jnz wait mov al,ah out 61h,al ret sound endp codesg ends end start

2、修改程序,使它能演奏一首你所喜爱的歌曲。

3、若歌曲中有休止符,怎么办? 实验报告:

1、实验记录和体会。

2、自编程序。

实验四 键盘和窗口程序

实验目的:

1、掌握利用INT 16H 2号功能调用实行键盘输入的方法。

2、熟悉键盘的扫描码和ASCII码的关系。

3、掌握利用INT 10H功能调用实现窗口功能的方法。实验内容:

一、键盘输入程序

1、程序: PRO_NAM AGAIN: BINIHEX ROTATE: PRINT: SEGMENT ASSUME CS:PRO_NAM ORG 100H MOV AH,0 INT 16H MOV BX,AX CALL BINIHEX MOV AH,2 MOV dl,20h INT 21H MOV DL,BL MOV AH,2 INT 21H MOV DL,0DH MOV AH,2 INT 21H MOV DL,0AH MOV AH,2 INT 21H JMP AGAIN INT 20H PROC NEAR MOV CH,4 MOV CL,4 ROL BX,CL MOV AL,BL AND AL,0FH ADD AL,30H CMP AL,3AH JL PRINT ADD AL,7 MOV DL,AL MOV AH,2 INT 21H DEC CH JNZ ROTATE RET BINIHEX ENDP PRO_NAM ENDS END AGAIN

2、输入,汇编,连接此程序,并将它转变成。COM文件。

3、运行此程序,观察并记录各个键的扫描码,ASCII码及对应字符。

二、窗口程序:

1、程序: code segment assume cs:code,ss:code org 100h start: mov ax,600h mov cx,0 mov dx,184fh mov bh,7 int 10h pos: mov ah,2 mov dx,101eh mov bh,0 int 10h mov cx,20 get: mov ah,1 int 21h cmp al,1bh jz exit loop get mov ax,601h mov cx,81eh mov dx,1031h mov bh,7 int 10h jmp pos exit: int 20h code ends end start

2、将此程序输入并转变成。COM文件。

3、运行此程序,观察按不同键所产生的效果。

4、此程序所产生的窗口效果有何缺陷?试修改之。实验报告:

1、实验记录。

2、自编程序。

实验五 活动图形显示程序

实验目的:

1、掌握利用INT 10H实现活动图形的方法。

2、INT 10H 的 2号,6号,0AH号功能。实验内容:

参考下列程序自编一活动的复合图形显示程序。程序一 活动字符图形显示程序: stack segment stack db 256 dup(0)stack ends code segment assumecs: code,ss:stack move: mov cx,0 mov dx,184fh mov bh,7 mov ax,0618h int 10h mov dx,0 mov cx,1 mov bh,0 rept: mov ah,2 int 10h mov ah,10 mov al,0fh int 10h call dely mov al,20h mov ah,10 int 10h inc dh inc dl inc dl cmp dh,25 jne rept mov ah,4ch int 21h dely proc push cx push dx mov cx,5 lop: mov dx,0 lop1: dec dx jne lop1 loop lop pop dx pop cx ret dely endp code ends end move 程序二静止复合图形显示程序: stack segment stack db 256 dup(0)stack ends data segment chrtab dw 7 db 0dbh,0,0,0dbh,0,1 db 0dbh,0,1,52h,0,1 db 1,-1,-1,9,2,0 db 9,0,-2 data ends code segment assume cs:code,ss:stack,ds:data start: mov ax,data mov ds,ax mov cx,0 mov dx,184fh mov bh,7 mov ax,0618h int 10h lea di,chrtab mov cx,[di] mov dx,400h add di,2 next: add dh,[di+1] add dl,[di+2] mov ah,2 mov bh,0 int 10h push cx mov cx,1 mov ah,10 mov al,[di] int 10h pop cx add di,3 loop next mov ah,4ch int 21h code ends end start 实验报告:

1、自编程序。

2、调试中产生的问题。

实验六 磁盘文件操作程序

实验目的:

1、掌握利用FCB进行磁盘文件读写的方法。

2、掌握利用HANDLE进行磁盘文件读写的方法。

3、INT 21H 0FH,10H,14H,15H,16H,1AH号功能调用。

4、INT 21H 3CH,3DH,3FH,40H号功能调用。实验内容:

一、文本文件内容显示程序: stack segment stack db 100h dup(?)stack ends data segment fcb db 36 dup(0)count db 0 char db 0 dta db 0 errmsg db 'file access error' data ends code segment main proc far assume cs:code,ss:stack start: push ds sub ax,ax push ax mov ax,data mov es,ax assume es:data mov si,5ch mov di,offset fcb mov cx,12 cld rep movsb mov ds,ax assume ds:data mov dx,offset dta mov ah,1ah int 21h mov dx,offset fcb mov ah,0fh int 21h cmp al,0 jnz error mov word ptr fcb+0ch,0 mov word ptr fcb+0eh,1 again: tab: eof: error: display disp1: mov fcb+20h,0 lea dx,fcb mov ah,14h int 21h cmp al,0 jnz error mov al,dta cmp al,1ah jz eof cmp al,9 jz tab call dispchar inc char cmp dta,0ah jnz again mov char,0 inc count cmp count,24 jnz again mov ah,0 int 16h mov count,0 jmp again mov al,' ' call dispchar inc char test char,7 jz again jmp tab lea dx,fcb mov ah,10h int 21h ret lea bx,errmsg call display ret proc mov cx,30 mov al,[bx] call dispchar inc bx loop disp1 mov al,0dh call dispchar mov al,0ah call dispchar ret display endp dispchar proc push bx mov bx,0 mov ah,14 int 10h pop bx ret dispchar endp main endp code ends end start

1、输入,汇编,连接此程序,用DEBUG将目的程序带参数调入,用D命令观看并记录 PSP中的FCB内容。

2、运行此程序。

二、磁盘文件拷贝程序(参考): stack segment stack db 100h dup(9)stack ends;data segment sfile db 64 db ? db 64 dup(' ')dfile db 64 db ? db 64 dup(' ')ask1 db 0ah,0dh,'please input source' db 'file name:','$' ask2 db 0ah,0dh,'please input destnation' db 'file name:','$' note db 0ah,0dh,'please insert diskettes' db 'and strike any when ready ','$' er1 db 0ah,0dh,'create error $' er2 db 0ah,0dh,'open error$' er3 db 0ah,0dh,'read error$' er4 db 0ah,0dh,'write error$' er5 db 0ah,0dh,'close source file error' er6 db 0ah,0dh,'close dest file error' bufr dw ? data ends code segment assume cs:code,ds:data,ss:stack start proc push sub push mov mov mov lea call lea far ds ax,ax ax ax,data ds,ax es,ax dx,ask1 disp dx,sfile call mov xor mov mov lea call lea call mov xor mov mov lea call mov int call ret start endp disp proc mov int ret disp endp inpt proc mov int ret inpt endp copy proc mov lea mov int inpt cl,sfile+1 ch,ch si,cx [si+sfile+2],0 dx,ask2 disp dx,dfile inpt cl,dfile+1 ch,ch si,cx [si+dfile+2],0 dx,note disp ah,7 21h copy ah,9 21h ah,0ah 21h ah,3ch dx,dfile+2 cx,20h 21h lea mov jc mov mov mov lea int lea mov jc r_w: mov mov lea int lea jc or je mov lea xchg int lea jc xchg jmp exit: mov int lea jc xchg mov int lea jc ret err: mov int xchg mov int call ret copy endp dx,er1 bx,ax err bufr,ax ah,3dh al,0 dx,sfile+2 21h dx,er2 bx,ax err cx,10h ah,3fh dx,sfile+2 21h dx,er3 err ax,ax exit ah,40h dx,sfile+2 bufr,bx 21h dx,er4 err bufr,bx r_w ah,3eh 21h dx,er5 err bufr,bx ah,3eh 21h dx,er6 err ah,3eh 21h bufr,bx ah,3eh 21h disp ends end start 按COPY AAA BBB 格式要求改写此程序,取消人机对话,源文件和目的文件名由 命令行输入。实验报告:

1、自编程序原稿和调试后的正确清单。

2、实验中产生的问题及体会。

3、实验记录。code

下载2010 C语言实验与习题2010finalword格式文档
下载2010 C语言实验与习题2010final.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    C语言实验

    C语言实验 实验一:C语言程序调试基础 一、实验目的 1.掌握C语言源程序的编写方法和调试方法 2.学会使用VC6开发工具及调试过程的查错纠错能力。 二、任务 调试课本例子:例2.19......

    大自然的语言_习题

    3、书写全都正确的一项是 A.草木荣枯俗语农谚耐人寻味俯首贴耳 B.离愁别苦凝神静听不记其数少见多怪 C.苍海一粟无忧无虑千呵万护涵养水分 D.饱学之士雅俗共赏不胜玫举昂......

    C语言习题讲解

    练习题 2015-2016(2)重修) 判断 1. C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .BAK 的文件。 2. 在 C 程序中, APH 和 aph 代表不同的变量。 3. C语言中......

    c语言课后习题

    C语言程序设计实验报告 学院 数学与信息技术班级学号 11130730 姓名指导教师 实验1 简单程序设计 1. 实验目的 (1) 熟悉C语言开发环境并掌握在该环境下如何编辑、编译、连接......

    C语言课后习题

    习题 第三章 #include #include int main { int d,p; double r,a,m; scanf("%d %d %lf",&d,&p,&r); a=(p/(p-d*r)); m=log(a)/log(1+r); if(p>0&&d>0) { if(d23) h=0;......

    SQL语言习题及答案范文大全

    数据库原理之关系数据库SQL语言课后习题及答案 http://www.xiexiebang.com 作者:不详 来源: 2006年9月12日 发表评论 进入社区 3.1 名词解释 SQL模式:SQL模式是表和授权的......

    《2. 实验》习题2

    《2. 实验》习题 一、填空 1、实验是科学研究中的常用方法。它主要有两种类型,一是;二是。 2、有些实验是对事物内部结构、运动变化过程进行模拟,这种实验叫。 3、是一种特别的......

    实验二语言与C语言混合编程

    实验二汇编语言与C语言混合编程一、教学目的和要求   熟悉ADS1.2开发环境编译、下载、调试程序的基本过程; 掌握C和汇编语言混合编程方法。 掌握ATPCS中的寄存器及参数传递规......