文档库 最新最全的文档下载
当前位置:文档库 › C期末考试复习题(答案)

C期末考试复习题(答案)

C期末考试复习题(答案)
C期末考试复习题(答案)

C语言复习题

一、单项选择题

1、C语言源程序文件经过C编译程序编译连接之后生成一个后缀为( C )的文件。

A).c B).obj C).exe D).bas

2、)完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( B )

A)连接、编译B)编译、连接 C)连接、运行D)运行

3、关于C语言的叙述中,不正确的是(D)

A)C程序可由一个或多个函数组成B)C程序必须包含一个main()函数

C)C程序的基本组成单位是函数D)注释说明只能位于一条语句的后面

4、一个C程序的执行是从(A )。

A) 本程序的main函数开始,到main函数结束

B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C) 本程序的main函数开始,到本程序文件的最后一个函数结束

D) 本程序文件的第一个函数开始,到本程序main函数结束

5、以下正确的叙述是(C )

A) 在C语言中,main函数必须位于文件的开头B) C语言每行中只能写一条语句

C) C语言本身没有输入、输出语句D) 对一个C语言进行编译预处理时,可检查宏定义的语法错误

6、下列选项中,不能用作标识符的是( D)。

A) _1234_ B) _1_2 C) int_2_ D) 2_int_

7、常数的书写格式决定了常数的类型和值,0x1011是( C )

A)8进制整型常量B)字符常量 C)16进制整型常数D)2进制整型常数

8、以下4组用户定义标识符中,全部合法的一组是( A )

A)_total clu_1 sum B)if -max turb

C)txt REAL 3COM D)int k_2 _001

9、_( D )是合法的用户自定义标识符。

A) b-b B)float C)123a D) _isw

10、以下选项中不正确的整型常量是( C )。

A) 12L B) -10 C) 1,900 D) 123U

11、表达式( C )的值是0。

A)3%5 B)3/5)0 C)3/5 D)3<5

12、设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )

A) ‘x’&&’y’B) x||y+z&&y-z C) x<=y D) !((x

13、表达式 !(x>0||y>0) 等价于( D )。

A)!x>0||!y>0 B)!(x>0)||!(y>0) C)!x>0&&!y>0 D)!(x>0)&&!(y>0)

14、若变量已正确定义并赋值,表达式( D )不符合C语言语法。

A)4&&3 B)+a C)a=b=5 D)int(3)14)

15、C语句”x*=y+2;”还可以写作( C )

A) x=x*y+2; B) x=2+y*x; C) x=x*(y+2); D) x=y+2*x;

16、下列格式符中,可以用于以8进制形式输出整数的是( B )

A) %d B) %o C) %ld D) %x

17、下列格式符中,可以用于以16进制形式输出整数的是( D )

A) %d B) %o C) %ld D) %x

18、设int x=1, y=1; 表达式(!x||y--)的值是( C )

A)-1 B)0 C)1 D)2

19、若变量已正确定义并赋值,表达式 -k++ 等价于( A )。

A)-(k++) B)(-k)++ C)-(k+1) D)-(++k)

20、下面运算符优先级最低的是(B)

A) <= B) = C) % D) &&

21、下列运算符中,优先级从高到低依次为( D )。

A)&&,!,|| B)||,&&,! C)&&,||,! D)!,&&,||

22、以下选项中,非法的字符常量是(C)

A)‘\t’ B)‘\17’ C)”n” D)‘\xaa’

23、若x是整型变量,表达式 (x=10)0/4)0) 的值是( D ) 。

A)2)5 B) 2)0 C) 3 D)2

24、若变量c为char类型,则能正确判断出c为小写字母的表达式是( D )。

A) 'a'<=c<= 'z' B) (c>= 'a')||(c<= 'z')

C) ('a'<=C)and ('z'>=C) D) (c>= 'a')&&(c<= 'z')

25、若变量已正确定义并赋值,表达式( B )_不符合C语言语法。

A)a*b/c; B)3)14%2 C)2, b D)a/b/c

26、以下所列的C语言常量中,错误的是 (B )

A) 0xFF B) 1)2e0)5 C) 2L D)‘\72’

27、___C__是不正确的字符常量。

A)'n' B)'1' C)"a" D)'101'

28、在 C 程序中,用( B )表示逻辑值”真”。

A)1 B)非 0 的数 C)非 1 的数 D)大于 0 的数

29、( C )把x、y定义成float类型变量,并赋同一初值3)14。

A)float x, y=3)14; B)float x, y=2*3)14;

C)float x=3)14, y=x=3)14; D)float x=y=3)14;

30、以下定义语句中正确的是(C )。

A) char a='A'b='B'; B) float a=b=10; C) int a=10,*b=&a; D) float *a,b=&a;

31、若有以下程序段,

int c1=1,c2=2,c3;

c3=1.0/c2*c1;

则执行后,c3中的值是( A )

A) 0 B) 0.5 C) 1 D) 2

32、 6.能正确表示逻辑关系:”a≥=10或a≤0”的C语言表达式是( D )

A) a>=10 or a<=0 B)a>=0|a<=10 C)a>=10 &&a<=0 D)a>=10‖a<=0

33、设变量定义为”int a, b;”,执行下列语句时,输入_D____,则a和b的值都是10。

scanf("a=%d, b=%d",&a, &B);

A)10 10 B)10, 10 C)a=10 b=10 D)a=10, b=10

34、若变量已正确定义,执行语句scanf("%d%d%d ",&k1,&k2,&k3);时,( B )_是正确的输入。

A)2030,40 B)20 30 40 C)20, 30 40 D)20, 30,40

35、若变量已正确定义,语句”if(a>b) k=0; else k=1;”和( C )等价。

A)k=(a>b)1:0; B)k=a>b;C)k=a<=b; D)a<=b ? 0 : 1;

36、下列各语句中,能够且仅输出整型变量a、b中最大值的是( C )

A) if(a>b) printf(″%d\n″,a);printf(″%d\n″,b);

B) printf(″%d\n″,b);if(a>b) printf(″%d\n″,a);

C) if(a>b) printf(″%d\n″,a);else printf(″%d\n″,b);

D) if(a

37、下列条件语句中,功能与其他语句不同的是(D)

A) if(a) printf("%d\n",x); else printf("%d\n",y);

B) if(a==0) printf("%d\n",y); else printf("%d\n",x);

C) if(a!=0) printf("%d\n",x); else printf("%d\n",y);

D) if(a==0) printf("%d\n",x); else printf("%d\n",y);

38、执行语句”for(s=0,i=1;i<=10;i=i+3) s+=i;”后,变量s、i的当前值是( A )

A) 22,13 B) 12,10 C) 22,10 D) 12,13

39、以下程序的输出结果是(C)

main()

{ int i, b[10];

for(i=9;i>=0;i--) b[i]=10-i;

printf(“%d%d%d”,b[2],b[5],b[8]);

}

A) 258 B) 741 C) 852 D) 369

40、以下程序的输出结果是(B)

main()

{ char st[20]= “hello\0\t\\”;

printf(%d %d \n”,strlen(st),sizeof(st));

}

A) 9 9 B) 5 20 C) 13 20 D) 20 20

41、有以下程序段

int k=0

while(k=1)k++;

while 循环执行的次数是 (A )

A)无限次 B)有语法错,不能执行C)一次也不执行 D)执行1次

42、以下程序的输出结果是(D)

main()

{ int a, b;

for(a=1, b=1; a<=100; a++)

{ if(b>=10) break;

if (b%3= =1)

{ b+=3; continue; }

}

printf(“%d\n”,A);

}

A) 101 B) 6 C) 5 D) 4

43、以下能正确定义二维数组的是( D )

A) int b[][3]; B) int b[][3]=2{2*3};

C) int b[][3]={}; D) int b[3][2]={{1},{2},{3,4}};

44、下列各语句定义了数组,其中一个不正确的是( B )

A) int a[5],b[2][3];

B) char no[30],rec[30,6];

C) int x[]={2,4,6,8,10};

D) int x[10]={1,2,3,4,5};

45、 (5) 用 int a[4]={1,2}; 对数组进行初始化后,数组元素a[3]的值是 ( B )

A) 随机值B) 0 C) 1 D) F

46、(6) 在执行char str[10]=“china\0”; strlen(str)的结果是 ( A )

A)5 B) 6 D) 7 D 9

47、下面能正确进行字符串赋值操作的语句是(A)。

A) char s[]={“ABCDE”}; B) char s[5]={'a','b','c','d’,'e',’\0’};

C) char *s;s=“ABCDEF”; D) char *s;scanf(“%s”,s);

48、下面是对数组a的初始化,其中不正确的是( D )

A)a[5]={"ABCD"} B)a[5]={'A','B','C','D'}

C)a[5]="" D)a[5]="ABCDE"

49、设变量定义为”int s[ ]="hello\nworld\n";”,则数组s中有( B )个元素。

A)12 B)13 C)14 D)15

50、设变量定义为”int b[2]={1,3}, *p=&b[0]+1;”,则*p的值是( B )。

A)2 B)3 C)4 D)&b[0]+1

51、在C 语言程序中,在函数内部定义的变量称为( D )。

A)全局变量 B)全程变量 C)外部变量 D)内部变量

52、以下程序段的输出结果是 (A)

char s[]="\\141\141abc\t";

printf ("%d\n",strlen(s));

A) 9 B) 12 C) 13 D) 14

53、下列程序的输出结果是( D )。

fun(int a, int b, int C)

{ c =a*b; }

void main( )

{ int c;

fun(2,3,C);

printf(“%d\n”,C);

}

A)0 B)1 C)6 D)无法确定

54、在C程序中,若对函数类型未加说明,则函数的隐含类型为__A___。

A)int B)double C)void D)char

55、表达式 strlen(“hello”) 的值是_( B )。

A) 4 B) 5 C) 6 D) 7

56、设变量定义为”int b[4];”,则表达式( D )不符合C语言语法。

A)*a B)b[0] C)a D)a++

57、有以下定义和语句

int b[3][2]={1,2,3,4,5,6,},*p[3];

p[0]=b[1];

则*(p[0]+1)所代表的数组元素是(C)

A) b[0][1] B) b[1][0] C) b[1][1] D) b[1][2]

58、下列语句定义p为指向float类型变量d的指针,其中哪一个是正确的( B )

A) float d,*p=d; B) float d,*p=&d; C) float d,p=d; D) float *p=&d,d;

59、宏定义”#define p(x,y,z) x=y*z;”的宏替换”p(a,x+5,y-3)1)”应为( )

A) a=x+5*y-3)1 B) a=(x+5)*(y-3)1);

C) a=x+5*y-3)1 D) a=(x+5)*(y-3)1)

60、下列语句定义p为指向float类型变量d的指针,其中哪一个是正确的( )

A) float d,*p=d; B) float d,*p=&d;

C) float d,p=d; D) float *p=&d,d;

61、设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( A )

A)scanf("%d",pa); B)scanf("%d",a); C)scanf("%d",&pa); D)scanf("%d",*pa);

62、执行语句”for(i=0;i<10;++i,++a)scanf(″%d″,a);”试图为int类型数组a[10]输入数据,是错误的。错误的原因是

( )

A)指针变量不能做自增运算B)数组首地址不可改变

C)++i应写作i++ D)++a应写作a++

63、设变量定义为”int x, *p=&x;”,则&*p相当于__A___。

A)p B)*p C)x D)*&x

64、C程序中main函数的位置(C)

A、必须在最开始

B、必须在系统库函数后面

C、可以在自定义函数后面

D、必须在最后

65、定义函数时,缺省函数的类型声明,则函数类型取缺省类型( D )

A) void B) char C) float D) int

66、在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则(D )

A)称为函数的直接递归调用 B)称为函数的间接递归调用

C)称为函数的循环调用 D) C语言中不允许这样的递归调用

67、关于C语言函数的描述中,正确的是(B )

A)函数的定义可以嵌套,但函数的调用不可以嵌套 B)函数的定义不可以嵌套,但函数的调用得意嵌套C)函数的定义和函数的调用都可以嵌套 D)函数的定义和函数的调用都不可以嵌套

68、下列程序执行后的输出结果是(B)

#define MA(x) x*(x-1)

main()

{ int a=1,b=2; printf("%d \n",MA(1+a+b)); }

A) 6 B) 8 C) 10 D) 12

69、有如下程序

int func(int a,int b)

{ return(a+b);}

main()

{ int x=2,y=5,z=8,r;

r=func(func(x,y),z);

printf(“%\d\n”,r);

}

(D)

A) 12 B) 13 C) 14 D) 15

70、有如下程序

long fib(int n)

{ if(n>2) return(fib(n-1)+fib(n-2));

else return(2);

}

main0

{ printf(“%d\n”,fib(3));

的输出结果是 (B )

A) 2 B) 4 C) 6 D) 8

71、当调用函数时,实参是一个数组名,则向函数传送的是 (B )

A)数组的长度 B)数组的首地址

C)数组每一个元素的地址 D)数组每个元素中的值

72、以下程序的输出结果是 (B )

A) 16 B) 2 C) 9 D) 1

#define SQR(X) X*X

main()

{ int a=16, k=2, m=1;

a/=SQR(k+m)/SQR(k+m);

printf(“d\n”,A);

}

73、以下函数返回a所指数组中最小的值所在的下标值

fun(int *a, int n)

{ int i,j=0,p;

p=j;

for(i=j;i if(b[i]return(p);

}

(D )

A) i=p B) b[p]=b[i] C) p=j D) p=i

74、设有以下定义语句:

struct student{

int num;

char name[10];

float score;

}wang,zhang;的变量wang所占的内存字节是( B )

A)14 B)16 C)18 D)9

75、设有以下定义语句:

struct student{

int num ;

char name[10];

float score;}wang,zhang;

则不正确的叙述是( C )

A)struct 是结构体类型的关键字 B)zhang是结构体变量名

C)wang是结构体类型名 D)num,name,score都是结构体类型student的成员名76、若struct teacher{

int num;

char name[10];

char sex;

int age;

float score;}teacher1;

则变量teacher1所占用的内存字节是( C )

A)5 B)14 C)19 D)20

77、假定已有如下落不明变量说明和枚举定义:

char ch;

int j,k;

enum day{sum,mon,tue,wed,thu,fri,sat};

int a[sat];

判定下列语句是否符合语法规则,结果是( C )

char a; /*语句1*/

j+k=j; /*语句2*/

if(a[mon]>0) j++; /*语句3*/

A)语句2错误,其它正确B)语句1正确,其它错误

C)语句3正确,其它错误D)语句错误,其它正确

78、以下C语言共用体类型数据的描述中,不正确的是( D )

A)共用体变量占的内存大小等于所需内在最大的成员所占的内存

B)共用体类型可以出现在结构体类型定义中

C)在定义共用体变量的同时允许对另一个成员的值进行初始化

D)同一共用体中各成员的首地址不相同

79、若有以下类型说明,叙述正确的是( A )

typedef sturct{

int num;

char *name;

int score;

} STU, *PSTU

A)STU 是变量名 B)PSTU是变量名

C)PSTU是指向结构体类型STU的指针类型名D)类型说明语句有错误

80、设有如下定义语句:

union utype{

int i;

double x;

float f;

};

struct str_type{

char str[100];

union u_type u[2];

};

则语句”printf(“%d”, sizeof(struct str-type) );”的输出结果是( B )

A)100 B)116 C)120 D)200

81、下列对结构体类型变量定义不正确的是( C )

A) struct teacher{

int num;

int age;

}teacher1;

B)struct{

int num;

int age;

}teacher1,teacher2;

C) struct{

int num;

int age;

}teacher,

D) struct teacher{

int num;

int age;

}teacher;

82、以”只读”方式打开文本文件a:\aa.dat,下列语句中哪一个是正确的( D )

A) fp=fopen(″a:\\aa.dat″,″ab″);

B) fp=fopen(″a:\aa.dat″,″a″);

C) fp=fopen(″a:\aa.dat″,″wb″);

D) fp=fopen(″a:\\aa.dat″,″r″);

83、以下叙述正确的是(D )

A)C语言中的文件是流式文件,因此只能顺序存取数据

B)打开一个已存在的文件进行了写操作后,原有文件中的全部数据必定被覆盖

C)在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第一个数据D)当对文件的写操作完成之后,必须将它关闭,否则可能导致数据丢失

二、填空题

1、C语言的一个函数由函数头和函数体两部分组成。

2、在C语言中,程序的结构通常有三种:顺序结构、选择结构和_循环结构_____。

3、C程序的基本组成单位是函数。

4、设ch是字符型变量,判断ch为英文字母的表达式是:

(ch>=’A’&&ch<=’Z’)||(ch>=’a’&&ch<=’z’) __。

5、设已定义了整型变量a,b,c,其值分别为a=3,b=2,c=1,则表达式a

6、设int a=5,b=2;float c=32.8;,表达式b*(int)c%a的值为__4____。

7、计算a、b中最小值的条件表达式为__a

8、判断变量a、b、c的值是否是等差数列中连续的三项,写作C的表达式为__a-b==b-c____。

9、判断变量a、b的值均不为0的C表达式为__a*b!=0或a*b____。

10、执行语句”a=5+(c=6);”后,变量a、c的值依次为__11,6____。

11、整型变量x的值为23,语句”printf(″%o\\n″,x);”的输出结果为__27\n____。

12、整型变量x的值为40,语句”printf(″%o\n″,x);”的输出结果为_050_____

13、表达式 !!5的值是__1____。

14、表达式7/2的结果是 3 。表达式7%2的结果是 1 。

15、执行语句”n=1;if(n=5) n++;"后,变量n值为__6____。

16、执行语句”s=0;n=5;while(--n) s+=n;”后,变量s、n值依次为__1,0____。

17、执行语句”for(s=0,i=1;i<11;i++) {if(i==6)continue;s+=i;}"后,s值为_49_____。

18、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值为 2.5 。

19、有程序段:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b; b=p[5]; 则b中的值是 9 。

20、若声明”char a[]=″Windows″,b[]=″XP″;”,

执行语句”printf(″%s″,strcat(a,b));”的输出结果为__Windows XP____。

21、下列程序段的输出结果是__15___。

#define MIN(x,y) (x)<(y)?(x) : (y)

printf("%d",10*MIN(10,15));

22、设有定义:#define F(x) (x)*2 则表达式F(2+3)的值为___10______

23、若声明”char a[15]=″WindowsXP″;”,语句”printf(″%s″,a+5);”的输出结果为__wsXP____。

24、程序中使用了字符串函数(如strlen),则必须包含的头文件名为__string.h____。

25、定义一个整型数组a[10],则下标最大的数组元素为9 。

26、C语言提供了#include 命令用来实现”文件包含”的操作。

27、已知:char c[ ]={“china”};将字符数组c中整个字符串一次输出的语句书写格式为printf(“%s”,c) 。

28、按照变量在函数中作用域不同,可以将变量分为局部变量和全局变量。

29、访问结构体数组元素a[k]的成员b,写作_a[k])b或(a+k)->b_____。

30、程序中使用了数学函数(如sin),则必须包含的头文件名为__math.h____。

31、下列程序在运行时可能会出错,原因是__指针变量s未赋初值____。

# include

void main( )

{ char *s;

gets(s);

puts(s);

}

32、表示”x≥y≥z”的C表达式是___ x>=y && y>=z ____。

33、下列程序段的输出是__1____。

printf("%o\n", 010<<1^1);

34、下列程序段的输出是__7,9.0____。

int k;

float s;

for (k=0, s=0; k < 7; k ++)

s += k/2;

printf("%d, %f\n", k, s);

35、下列程序段的输出是__5,25_____。

#define f(a, b, x) a*x+b

printf("%d, %dn", f(3,2,1), f(6, 5, f(3, 2, 1)));

36、下列程序段的输出是___5__。

int *p, *q, k = 5 , j = 6 ;

q = &k ; p = q ; q = &j ;

printf("%d", *p);

37、下列程序调用swap函数交换a和b的值,并输出交换后的a和b的值。程序的输出结果是:After swap 5, 3。

void main( )

{ int a=3, b=5;

swap( &a, &b ) ;

printf("After swap %d, %d", a, B);

}

swap( int *p, int *q )

{ int t;

t=*p; ; *p=*q ; *q=t ;

}

三、程序分析题

1、

main()

{ int a,b,c;

a=3,b=0,c=1;

printf("%d,%d,%d\n",a,++b,c);

printf("%d,%d,%d\n",a++,b,--c);

}

输出结果:______

2、

main()

{ int b[4][5]={{1,2,3,4,0},{2,2,0,0,0},{3,4,5,0,0},{6,0,0,0,0}};

int j,k;

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

{ for(k=0;k<5;k++)

{ if (b[j][k]==0) break;

printf(“ %d”,b[j][k]);

}

printf(“\n”);

}

}

输出结果:______

3、main()

{ int b[6][6],i,j;

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

for ( j=1;j<6;j++)

b[i][j]= i*j;

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

{

for ( j=1;j<6;j++)

printf( " %2d " ,b[i][j] ) ;

printf(“\n”);

}

}

输出结果:______

3、

#include

#include

void main()

{

int a=1,b=4,c=2;

float x=10.5,y=4.0,z ;

z=(a+b)/c+sqrt((double)y)*1.2/c+x;

printf("%.2f\n",z);

}

输出结果:____13.70__

4、main()

{ int b[]={1,2,3,4},i,j,s=0;

j=1;

for(i=3;i>=0;i--)

{s=s+b[i]*j;

j=j*10;

}

printf(“s=%d\n”,s);

}

输出结果:______

5、

main( )

{ int k=4, m=1, p;

p=func(k,m); printf("%d,",p);

p=func(k,m); printf("%d\n",p);

}

func(int a, int B)

{ static int m=0;

int i=2;

i+=m+1;

m=i+a+b;

return m;

}

输出结果:______

7、#include

void main()

{ int i;

for (i=1;i<5;i++) printf(″%d\t%c\n″,i,'A'+i); }

输出结果:______

8、#include

void main()

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

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

for(j=0;j<4;j++) a[i][j]=1+i-j;

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

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

if(a[i][j]>0) printf(″%3d″,a[i][j]);

putchar('\n');

}

}

输出结果:______

有以下程序

int f(int a)

{ int b=0;

static c=3;

b=b+1;c=c+1;

return(a+b+c);

}

void main()

{ int a=2,i;

for(i=0;i<3;i++) printf(“%2d”,f(a)); }

执行后输出的结果是。

9.有以下程序

void f(int y,int *x)

{ y=y+*x; *x=*x+y;}

void main( )

{ int x=2,y=4;

f(y,&x);

printf(“x=%d,y=%d\n”,x,y);

}

执行后输出的结果是。

10.有以下程序

#define LETTER 1

#include

void main()

{ char str[20]="C Language", c;

int i=0;

while((c=str[i])!='\0')

{ i++;

#ifdef LETTER

if(c>='a' &&c<'z')

c=c+1;

else if(c=='z') c=c-25;

#else

if(c>='B'&&c<='Z')

c=c-1;

else if(c=='A') c=c+25;

#endif

printf("%c",c); } }

执行后输出的结果是。

11. 有以下程序

void fun(int *a,int i,int j)

{ int t;

if(i

{ t=a[i];a[i]=a[j];a[j]=t;

i++; j--;

for(i=0;i<4;i++) printf("%2d",a[i]);

fun(a,i,j);

}

}

void main()

{ int x[]={2,6,1,8},i;

fun(x,0,3);

for(i=0;i<4;i++) printf("%2d",x[i]);

printf("\n");

}

执行后输出的结果是。

四、程序(段)填空题

1、已知能被4整除而不能被100整除的或者能被400整除的年份是闰年,则闰年的判断条件程序如下:main()

{ int year,leap;

scanf(“%d “,&year);

if ((year%4==0)&&(year%100!=0)||(year%400==0))

leap=1;

else

【】;

if ( 【leap==1】)

printf(“是闰年”);

else

printf(“不是闰年”);

2、下列函数sum的返回值为一个整数m的所有因子之和。

【】

{ int s=1;i;

for( 【】 ;i<=m/2;i++)

if( 【】 ) s=s+i;

【】 ;

}

3、给定一3 x 4的矩阵,求出其中的最大元素值,及其所在的行列号:

main()

{int i,j,row=0,colum=0,max;

static int b[3][4]={{1,2,3,4},{9,8,7,6},{10,-10,-4,4}};

【】;

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

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

{

【】;

【】;

}

printf(“%d%d”,row,colum);

}

4、下面程序的功能是:用冒泡法将整型数组a中的元素从小到大排列,请填空。

#include

#include

main( )

{ int b[10]={11,-2,37,4,5,76,7,45,91,75}, i, j, t;

for(i=0; i<=8;i+=2)

for(j=9;j>=i+1;【】 )

if(b[j] 【】 b[j-1])

{ t=__【】___;

b[j]=__【】___;

b[j-1]=t;

}

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

printf("%3d",b[i]);

printf("\n");

}

五、编程题

1.编写一函数jc(int n),求n!的值。

2.编写一程序,输入a,b,c三个实数

..,计算并输出其中最小值min,并输出a,b,c及min的值。3.编程求1!+2!+3!+……+10!的值。

4.编写程序,完成:从键盘上输入一串字符(以回车结束),统计其中数字字符的个数。5.输入10个整数,分别统计正整数和,负整数和。

6.输入一串字符(以回车)结束),将其中的数字字符按输入的先后次序组成一个整数。

7. 编写一函数strlen(char str[]),求串str的长度。

8.编写程序,实现求矩阵3×4中元素的最大值及所在的行号与列号。

9.用函数的递归调用方法求下列函数式的值(要求n由用户输入),递归公式为:

1 (n=1)

total(n)=

total(n-1)+n+1 (n>1)

10.把文本文件x1)dat复制到文本文件x2)dat中,要求仅复制x1)dat中的非空格字符。

c语言期末复习试题(附答案)

试卷编号:11201 所属语言:C语言 试卷方案:C语言期末考试 试卷总分:100分 共有题型:4种 一、单项选择共30题(共计60分) 第1题(2.0分) 设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是( A ). A:k++ B:k+=1 C:++k D:k+1 第2题(2.0分) 已知int i=5,执行语句i+=++i后, i的值是( C). A:10 B:11 C:12 D:A、B、C都不对 第3题(2.0分) 以下程序的功能是:给r输入数据后,计算半径为r的圆面积s.程序在编译时出错. #include void main( ) /* Beginning */ { int r; float s; scanf("%d",&r); s=p*r*r; printf("s=%f\n",s); 出错的原因是(D ). A:注释语句书写位置错误 B:存放圆半径的变量r不应该定义为整型

C:输出语句中格式描述符非法 D:计算圆面积的赋值语句中使用了非法变量 第4题(2.0分) "\\\″ABC\″\\″的长度是( B ). A:11 B:7 C:5 D:3 第5题(2.0分) 已知int j,i=1;,执行语句j=–i++;后,j的值是( C ). A:1 B:2 C:-1 D:-2 第6题(2.0分) 有以下程序: #include void main( ) { int s=0, a=1, n; scanf("%d", &n); do{ s+=1; a=a–2; }while(a!=n); printf("%d\n", s); } 若要使程序的输出值为2,则应该从键盘输入给n的值是( B ). A:-1 B:-3

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期末考试试题及答案完整版

c期末考试试题及答案 HUA system office room 【HUA16H-TTMS2A-HUAS8Q8-HUAH1688】

AutoCAD 试卷 一、 单项选择 1、AutoCAD 默认扩展名是 A 、dwt B 、dwg C 、bak D 、dxf 答案:B 2、在CAD 中,以下哪个命令可用来绘制横 平竖直的直线 A 、栅格 B 、捕捉 C 、正交 D 、对象捕捉答案:C 3、按哪个键可切换文本窗口和绘图窗口 A 、F2 B 、F8 C 、F3 D 、F5答案:A 4、默认情况下,命令提示行显示为几行 A 、3 B 、5 C 、2 D 、8答案:A 5、在CAD 中为一条直线制作平行线用什么命令 A 、移动 B 、镜像 C 、偏移 D 、旋转答案:C 6、在图层特性管理器中不可以设定哪项 A 、颜色 B 、页面设置 C 、线 宽 D 、是否打印答案:B 7、绘制建筑图步骤为 A 、墙线、轴线、门窗 B 、墙线、 门窗、轴线 C 、轴线、门窗、墙线 D 、轴线、 墙线、门窗答案:D 8、哪个命令可用于绘制直线与圆弧的复合 体 A 、圆弧 B 、构造线 C 、多段线 D 、样条曲线答案:C 9、如何在图中输入“直径”符号 A 、%%P B 、%%C C 、%%D D 、%%U 答案:B

10、如果要在一个圆的圆心写一个“A”字,应使用以下哪种对正方式 A、中间 B、对齐 C、中心 D、调整答案:A 11、在哪个层创建的块可在插入时与当前层特性一致 A、0层 B、在所有自动产生的层 C、所有图层 D、新建的图层答案:A 12、一个完整的尺寸由几部分组成 A、尺寸线、文本、箭头 B、尺寸线、尺寸界线、文本、标记 C、基线、尺寸界线、文本、箭头 D、尺寸线、尺寸界线、文本、箭头 答案:D 13、要将图形中的所有尺寸都为原有尺寸的2倍,应设定以下哪项A、文字高度 B、使用全局比例 C、测量单位比例 D、换算单位 答案:B 14、三维模型中哪种模型可以进行布尔运算 A、线框模型 B、实心体模型 C、表面体模型答案:B 15、渲染三维模型时,哪种类型可以渲染出物体的所有效果 A、一般渲染 B、普通渲染 C、照片级真实感渲染 D、照片级光线跟踪渲染答案:D 16、样板文件的括展名是 A、BAK B、SVS C、DWT D、DWG 答案:C 17、以下哪种相对坐标的输入方法是画8个单位的线长 A.8, 0 B.@0,8 C.@0<8

数据结构c语言版期末考试复习试题

《数据结构与算法》复习题 一、选择题。 1在数据结构中,从逻辑上可以把数据结构分为 C 。 A ?动态结构和静态结构B.紧凑结构和非紧凑结构 C.线性结构和非线性结构 D.内部结构和外部结构 2?数据结构在计算机内存中的表示是指_A_。 A .数据的存储结构B.数据结构 C .数据的逻辑结构 D .数据元素之间的关系 3.在数据结构中,与所使用的计算机无关的是数据的A结构。 A .逻辑 B .存储C.逻辑和存储 D .物理 4.在存储数据时,通常不仅要存储各数据元素的值,而且还要存储_C A .数据的处理方法 B .数据元素的类型 C.数据元素之间的关系 D .数据的存储方法 5.在决定选取何种存储结构时,一般不考虑A A .各结点的值如何C.对数据有哪些运算 B .结点个数的多少 D .所用的编程语言实现这种结构是否方 6.以下说法正确的是D A .数据项是数据的基本单位 B .数据元素是数据的最小单位 C.数据结构是带结构的数据项的集合 D .一些表面上很不相同的数据可以有相同的逻辑结构 7.算法分析的目的是 C ,算法分析的两个主要方面是 A 。 (1) A .找出数据结构的合理性B.研究算法中的输入和输出的关系 C .分析算法的效率以求改进C.分析算法的易读性和文档性 (2) A .空间复杂度和时间复杂度B.正确性和简明性 &下面程序段的时间复杂度是0( n2) s =0; for( I =0; i

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期末考试复习题理工

一、单项选择题 ( 本大题共 10 小题,每小题 2 分,共 20 分) 1. 在C++中,函数原型不能标识(D ) A. 函数的返回类型 B.函数参数的个数 C.函数参数类型 D.函数的功能 2. 在C++程序中,对象之间的相互通信通过(B ) A. 继承实现 B.调用成员函数实现 C.封装实现 D.函数重载实现 3. 对于任意一个类,析构函数的个数最多为 (B ) 5. 友元关系不能 (A ) A. 继承B.是类与类的关系C.是一个类的成员函数与另一个类的关系 D.提高程序的运行效率 6.语句ofstream f ’,ios::a pp | ios::b in ary) ?的功能是建立流对象f,试图打开文件 并 与 之连接,并且 (A ) 将文件写指针定位于文件尾;若文件不存在,建立一个新文件 7.下面说法正确的是 (B ) A. 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方 B. 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方 C. 类的内联函数必须在类体内定义 D. 类的内联函数必须在类体外通过加关键字 inline 定义 以用 的形式访问派生类对象P 的基类成员a ,其中a 是(D ) A.私有继承的公有成员 B.公有继承的私有成员 C.公有继承的保护成员 D.公有继承的公有成 公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是 ( C) A. 派生类的对象可以赋给基类的对象 B. 派生类的对象可以初始化基类的引用 的指针 A.若文件存在, B. 若文件存在, 将其置为空文件;若文件不存在,打开失败 C. 若文件存在, 将文件写指针定位于文件首;若文件不存在,建立一个新文件 D. 若文件存在, 打开失败;若文件不存在,建立一个新文件 C. 派生类的对象可以直接访问基类中的成员 D. 派生类的对象的地址可以赋给指向基类

C期末考试题及答案

C期末考试题及答案 Revised at 2 pm on December 25, 2020.

一、填空题(每空0.5分,共30分) 1、世界坐标系简称__WCS_用户自定义坐标系简称__UCS_。 2、工作空间的切换:“工具”/“工作空间”或“工作空间”工具栏。 3、工具栏包括30种,系统默认的显示工具栏包括:“标准”、“属性”、“绘图”和“修改”等工具栏。 4、多线的对正方式有_上(T)_、_无(Z)_和_下(B)_。 5、文字标注包括标注单行文字和标注多行文字。 6、渲染环境是指在渲染对象时进行的雾化和深度设置。 7、漫游和飞行用户可以通过键盘和鼠标来控制视图显示,并创建导航动画。 8、编辑实体的边的种类:压印边、复制边、着色边。 9、动态块是通过自定义夹点或自定义特性定义的块。在图形中使用动态块,用户可以随时对组成块的对象进行修改。 10、三维实体是具有体积、质量、重心、回转半径、惯性距等特征的三维对象。 11、在AutoCAD 2007中,用户可以创建的光源有电光源、聚光灯光源和平行光光源。 12、相切、相切、半径法是指:通过指定圆的两个切点和半径来绘制圆。 13、绘制圆环的步骤中,先输入圆环的内径和外径,后确定圆环的中心点。 14、计算机辅助设计是:工程技术人员在CAD系统的辅助下,根据产品的设计程序进行设计的一项新技术。 15、菜单栏包括11种,每一种菜单中都含有四种显示情况:命令后跟右三角 、后跟省略号、后跟快捷键或功能键或命令呈灰色。 16、要对图形对象进行编辑就必须选中图形对象,在AutoCAD 2007中,选择对象的方法很多,常用的有_直接拾取_、矩形框选择_、_不规则区域选择_和快速选择。 17、在设置显示精度时,如果设置的精度越高,即分辨率就越高,计算机计算的时间 也越长,显示图形的速度也就越慢。 18、三维基本实体的种类包括:多段体、长方体、楔体、圆柱体、圆锥体、球体、圆环体、棱锥面。 19、布尔运算中只留重复的一部分的运算是交集运算。从一个图形中去掉与另一个图形重复部分的运算是差集运算。

最新软件测试期末考试试题及答案

一,判断 1 √ 2.× 3.√ 4.× 5. × 6. ×7. ×8. ×9.√10. ×二,选择 1. D 2. D 3. B 4. B 5. B 6. A 7. D 8. B 9. C 10. A 三填空 1. 测试计划、测试用例 2. 稳定性测试、负载测试、压力测试 3. 非增量是集成测试自顶向下增量式测试、自底向上增量式测试 4. 回归 5. 软件需求 四简答题(30分) 1.试描述软件测试的定义?(3分) 答:利用手工或者自动化的方式,按照测试方案对系统执行测试用例的过程叫做软件测试。 2.什么是软件缺陷?(4分) 答:满足以下条件的问题都叫缺陷: 软件未达到产品说明书中已标明的功能 软件出现了产品说明书中指明不会出现的错误 软件功能超出了产品说明书指明的范围 软件未达到产品说明书虽未指出但应达到的目标 软件测试员认为软件难以理解,不易使用,运行速度缓慢,或者最终用户认为该软件使用效果不好。 3.常见的黑盒测试用例的设计方法?并分别简单介绍一下各自的思想。(8分)答:等价类划分:等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。 边界值分析:对输入输出的边界值进行测试的一种黑盒测试方法。 决策表法:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具 因果图分析法:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。 错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对

性的设计测试用例的方法。 4. 列举常见的系统测试方法。答出来5个即可。(5分) 答:恢复测试 安全测试 强度测试 性能测试 正确性测试 可靠性测试 兼容性测试 Web测试 5.文档测试主要测试哪些内容?答出来5点即可(5分) 答:(1)检查产品说明书属性 (2)检查是否完整 (3)检查是否准确 (4)检查是否精确 (5)检查是否一致 (6)检查是否贴切 (7)检查是否合理 (8)检查代码无关 (9)检查可测试性 6. 单元测试主要测试那几方面的问题?(5分) 答:模块接口、局部数据结构、边界条件、独立的路径和错误处理。五,设计题

大学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、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键

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

课程代码: A100002 《计算机技术基础( C 语言)》试卷 A 姓名: 学号: 专业 : 学院 : 班级 : 20 年 月 日 选择题(共 30 分) 题(本大题共 15 小题,每题只有一个正确答案,答 分,共 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,%dn ”,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

计算机技术基础试题 第 2 页(共 10 页) A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行 break 语句,其作用是 【 】。 A )跳出该循 环体,提前结束循环 B) 继续执行 break 语句之后的循环体各语句 C) 结束本次循环,进行下次循环 D) 终止程序运行 7、执行语句 for(i=10;i>0;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、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】 A. 静态( static ) B. 外部( extern ) C. 自动( auto ) D . 寄存器( register ) 10、如下程序的输出结果是 【 】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系 a

数据库期末考试试题及答案

数据库期末考试试题 ━━━━━━━━━━━━━━━ 一、填空共30题(共计30分) ━━━━━━━━━━━━━━━ 第1题(分)题号:2385 ORDER BY 子句实现的是【1】. 答案: =======(答案1)======= 排序 第2题(分)题号:2374 如果列上有约束,要删除该列,应先删除【1】 答案: =======(答案1)======= 相应的约束 第3题(分)题号:2394 在每次访问视图时,视图都是从【1】中提取所包含的行和列. 答案: =======(答案1)======= 基表 第4题(分)题号:2372

1.在增加数据文件时,如果用户没有指明文件组,则系统将该数据文件增加到【1】文件组.答案: =======(答案1)======= 主 第5题(分)题号:2371 查看XSCJ数据库信息的存储过程命令是【1】 答案: =======(答案1)======= sp_helpdb 第6题(分)题号:2392 创建视图定义的T-SQL语句的系统存储过程是【1】. 答案: =======(答案1)======= sp_helptext 第7题(分)题号:2379 1.表的外键约束实现的是数据的【1】完整性. 答案: =======(答案1)======= 参照 第8题(分)题号:2390 要进行模糊匹配查询,需要使用【1】关键字来设置查询条件.

答案: =======(答案1)======= LIKE 第9题(分)题号:2380 定义标识列的关键字是【1】. 答案: =======(答案1)======= identity 第10题(分)题号:2383 在进行多表查询是,必须设置【1】条件. 答案: =======(答案1)======= 连接 第11题(分)题号:2363 联系两个表的关键字称为【1】 答案: =======(答案1)======= 外键 第12题(分)题号:2382 用【1】字句可以实现选择行的运算. 答案:

C期末考试复习题理工

一、单项选择题(本大题共10 小题,每小题2 分,共20 分) 1.在C++中,函数原型不能标识(D ) A.函数的返回类型 B.函数参数的个数 C.函数参数类型 D.函数的功能 2.在C++程序中,对象之间的相互通信通过(B ) A.继承实现 B.调用成员函数实现 C.封装实现 D.函数重载实现 3.对于任意一个类,析构函数的个数最多为(B ) A.0 B.1 C.2 D.3 5.友元关系不能(A ) A.继承 B.是类与类的关系 C.是一个类的成员函数与另一个类的关系 D.提高程序的运行效率 6.语句ofstream f(″SALARY.DAT″,ios::app|ios::binary)?的功能是建立流对象f,试图打开文件SALARY.DAT 并与之连接,并且(A ) A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件 B.若文件存在,将其置为空文件;若文件不存在,打开失败 C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件 D.若文件存在,打开失败;若文件不存在,建立一个新文件 7.下面说法正确的是(B ) A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方 B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方 C.类的内联函数必须在类体内定义 D.类的内联函数必须在类体外通过加关键字inline 定义 //当程序使用内敛函数时,编译器将每个函数调用都用函数内的语句代替,这样就省去了函数调用地开销 8.可以用p.a 的形式访问派生类对象p 的基类成员a,其中a 是(D ) A.私有继承的公有成员 B.公有继承的私有成员 C.公有继承的保护成员 D.公有继承的公有成员

C语言程序设计期末考试试题(含答案)

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( )

#include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、 1 B、 1 2 C、 1 2 3

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

数据库期末考试试题及答案

一、选择题(每题1分,共20分) 1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是( A )阶段。 A. 数据库系统 B. 文件系统 C. 人工管理 D.数据项管理 2.数据库三级视图,反映了三种不同角度看待数据库的观点,用户眼中的数据库称为(D)。 A. 存储视图 B. 概念视图 C. 内部视图 D. 外部视图 3.数据库的概念模型独立于(A)。 A.具体的机器和DBMS B. E-R图 C. 信息世界 D. 现实世界 4.数据库中,数据的物理独立性是指(C)。 A. 数据库与数据库管理系统的相互独立 B. 用户程序与DBMS的相互独立 C. 用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的 D. 应用程序与数据库中数据的逻辑结构相互独立 5.关系模式的任何属性(A)。 A. 不可再分 B. 可再分 C. 命名在该关系模式中可以不惟一 D.以上都不是 6.下面的两个关系中,职工号和设备号分别为职工关系和设备关系的关键字: 职工(职工号,职工名,部门号,职务,工资) 设备(设备号,职工号,设备名,数量) 两个关系的属性中,存在一个外关键字为( C )。 A. 职工关系的“职工号” B. 职工关系的“设备号” C. 设备关系的“职工号” D. 设备关系的“设备号” 7.以下四个叙述中,哪一个不是对关系模式进行规X化的主要目的( C )。 A. 减少数据冗余 B. 解决更新异常问题 C. 加快查询速度 D. 提高存储空间效率 8.关系模式中各级X式之间的关系为( A )。 A. B. C. D. 9.保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。这是指数据的( A )。 A. 安全性 B.完整性 C.并发控制 D.恢复 10.事务的原子性是指( B )。 A. 事务一旦提交,对数据库的改变是永久的 B. 事务中包括的所有操作要么都做,要么都不做 C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D. 事务必须使数据库从一个一致性状态变到另一个一致性状态 11.下列哪些运算是关系代数的基本运算( D )。 A. 交、并、差 B. 投影、选取、除、联结 C. 联结、自然联结、笛卡尔乘积 D. 投影、选取、笛卡尔乘积、差运算

C期末考试试卷及答案

C++期末考试试卷及答案1 一、单项选择题(每题2分,共40分) 1. ______不是属于面向对象程序设计的特性 A. 抽象性 B. 数据相关性 C. 多态性 D. 继承性 2. 将对某一类数据的处理算法应用到另一类数据的处理中,要用到C++的______ A. 类 B. 虚函数 C. 运算符重载 D. 模板 3. C++与C语言最根本的不同之处在于_______ A. 使用了类 B. 能够实现变量自动初始化 C. 支持软件重用 D. 支持接口重用 4. 动态内存分配的主要目的是_______ A. 使程序按动态联编方式运行 B. 正确合理的使用内存 C. 提高程序的运行速度 D. 提高程序的可维护性 5. 在C++函数的形参前加const关键字,是为了提高函数的_______ A. 数据封装性 B. 可理解性 C. 可维护性 D. 可重用性 6. 函数重载的目的是________ A. 实现共享 B. 使用方便,提高可读性 C. 提高速度 D. 减少空间 7. 从程序片断:char name[] = "C++"; course(name);可判断函数course的调用采用的是_______ A. 传值调用 B. 带缺省参数值的函数调用 C. 引用调用 D. 传址调用 8. 用来说明类中公有成员的关键字是________

9. 如果一个类的成员函数print()不修改类的数据成员值,则应将其声明为 A. void print() const; B. const void print(); C. void const print(); D. void print(const); 10. 下列关于构造函数的论述中,不正确的是_______ A. 构造函数的函数名与类名相同 B. 构造函数可以设置默认参数 C. 构造函数的返回类型缺省为int型 D. 构造函数可以重载 11. 在程序代码:A::A(int a, int *b) { this->x = a; this->y = b; }中,this的类型是______ A. int B. int * C. A D. A * 12. 内存泄漏是指_______ A. 内存中的数据出现丢失 B.试图释放一个已经释放了的动态分配的堆内存 C. 函数中局部变量所占的栈内存没有及时回收 D. 动态分配的堆内存在程序退出后始终被占用 A. 私有成员数据 B. 私有成员函数 C. 公有成员数据 D. 公有成员函数 14. 友元函数_______ A. 可以被声明为const B. 没有this指针 C. 可以用类名或对象名来调用 D. 只能用对象名来调用 15. 若一个类的成员函数前用static关键字修饰,则该成员函数________ A. 可以被声明为const B. 没有this指针 C. 可以访问该类的所有成员 D. 只能用对象名来调用 16. C++是用_______实现接口重用的

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的

期末考试题及答案

绝密★启用前 秦皇岛职业技术学院 2009-2010_学年第_2_学期609各班期末考试A 卷 《毛泽东思想和中国特色社会主义理论体系概论》 一、多项选择(2分*10=20分) 1、毛泽东思想的科学涵义是( ) A .是马克思列宁主义在中国的运用和发展 B.是被实践证明了的关于中国革命和建设的正确的理论原则和经验总结 C .是中国共产党集体智慧的结晶 D .是建设有中国特色社会主义的理论 E .是符合中国实际的革命理论 2、下列关于中国的新民主主义革命的认识正确的是( ) A 、革命的性质是无产阶级领导的资产阶级的民主主义革命 B 、这场革命已经不再是一般的旧式资产阶级民主革命,而成为新式的资产阶级革命。 C 、 在新民主主义革命条件下革命的任务是为了推翻帝国主义和封建势力,革命有资产阶级的参加,要把封建地主土地所有制变为农民土地所有制,为民族资本主义发展扫清道路并保护之 D 、 新民主主义革命的前途是要建立无产阶级领导的各革命阶级的联合专政,其前途是经由新民主主义走向社会主义 E 、新民主主义革命就是社会主义革命 3、新民主主义革命胜利的“三大法宝”是( )。 A 农村包围城市 B 武装夺取政权道路 C 统一战线 D 武装斗争 E 党的建设 4、马克思列宁设想的对资产阶级和平赎买在中国之所以能够实现,是因为( ) A 、新中国脱胎于半殖民地半封建的社会 B 、民族资本主义经济弱小 C 、民族资产阶级在新中国建立后依然有两面性 D 、中国共产党制定并实行对民族资本主义经济的“利用、限制、改造”政策 E 、新中国建立了强大的政权机构 5、社会主义的本质,是解放生产力,发展生产力,消灭剥削,消除两极分化,最终实现共同富裕。这段话深刻的揭示了( ) A 要坚持科学发展观 B 社会主义发展的根本目的 C 社会主义的根本任务 D 社会主义发展的路径 6、中国社会主义改造道路的特点有( ) A 、社会主义工业化和社会主义改造同时并举 B 、通过一系列逐步过渡的由低级到高级的社会主义改造形式 C 、和平改造特别是对资产阶级实现了和平赎买 D 、对经济制度的改造与对人的改造相结合 E 、对民族资产阶级的改造实行了专政 7、邓小平指出:“计划经济不等于社会主义,资本主义也有计划;市场经济不等于资本主义,社会主义也有市场。”这一论断表明( )。 A .计划和市场都是经济手段 B .计划经济与市场经济没有什么本质区别 C .社会主义以计划经济为主,资本主义以市场经济为主 D ,计划与市场的多少不是资本主义与社会主义的本质区别 8、在实现共同富裕的道路上出富裕程度的差别是() 。 A .贯彻按劳分配原则的必然结果 B .实行多种所有制形式和多种分配方式的必然结果 C .发展社会主义市场经济必然结果 D .科技发展水平低的结果 9、社会主义核心价值体系包括四个方面的基本内容( ) 装 订 线 装 订 线 内 不 要 答 题 学号 姓 名 班 级

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指向一个行其它字符不变。

相关文档
相关文档 最新文档