当前位置:文档之家› 大学计算机C语言期末考试复习试题及答案(20套)(1)

大学计算机C语言期末考试复习试题及答案(20套)(1)

大学计算机C语言期末考试复习试题及答案(20套)(1)
大学计算机C语言期末考试复习试题及答案(20套)(1)

一、判断共10题(共计10分)第

1题(1.0分)题号:1488 函数即可

以嵌套定义,又可以嵌套调用. 答案:N

第2题(1.0分)题号:1256

unsigned 和void 在C 中都是保留字.

答案:Y 第3题(1.0分)题

号:1280 表达式 ++i 表示对变量i 自加

1. 答案:Y 第4题(1.0分)题

号:1282

C 语言源程序的基本结构单位是main 函数.

答案:N

第5题(1.0分)题号:1276 字

符常量的长度肯定为1. 答案:Y

第6题(1.0分)题号:1469

char a[]={'a','b','c'};char b[]={"abc"};数组

a 和数组

b 占用的内存空间大小不一样. 答案:Y 第7题(1.0分)题号:1249 若有int i=10,j=2; 则执行完i*=j+8;后i 的值为28. 答案:N 第8题(1.0分)

题号:33 int i,*p=&i;是正确的C 说明。答案:Y 第9题(1.0分)题号:1250 While 循环语句的循环体至少执行一次. 答案:N

第10题(1.0分)题号:1510

有数组定义int a[2][2]={{1},{2,3}};则a[0][1] 的值为0. 答案:Y 二、单项选择共30题(共计30分)第1题(1.0分)题号:456 执行下面程序后,输出结果是()。main() { a=45,b=27,c=0; c=max(a,b);

printf("%d\n",c);

}

int max(x,y) int

x,y; { int z;

if(x>y) z=x;

else z=y;

return(z);

}

A:45

B:27

C:18

D:72

答案:A 第2题(1.0分)题

号:437 下列数组说明中,正确的

是()。

A:int array[][4];

B:int array[][];

C:int array[][][5];

D:int array[3][]; 答案:A 第3题(1.0分)题号:2396 下面有关for 循环的正确描述是() A:for 循环只能用于循环次数已经确定的情况B:for 循环是先执行循环体语句,后判断表达式 C:在for 循环中,不能用break 语句跳出循环体D:for 循环的循环体语句中,可以包含多条

语句,但必须用花括号括起来

答案:D

第4题(1.0分)题号:2817 以下程序的输出结果是().

main() {int i,j,k,a=3,b=2; i=(--

a==b++)?--a:++b; j=a++;k=b;

printf("i=%d,j=%d,k=%d\n",i,j,k);

}

A:i=2,j=1,k=3

B:i=1,j=1,k=2

C:i=4,j=2,k=4

D:i=1,j=1,k=3

答案:D

第5题(1.0分)题号:2866

若有下列定义,则对 a 数组元素地址的正确引用是().

int a[5],*p=a;

A:*(p+5)

B:*p+2

C:*(a+2) D:*&a[5]

答案:C 第6题(1.0分)题

号:711 下列选项中正确的语句组

是()。

A:char s[8]; s={"Beijing"};

B:char *s; s={"Beijing"};

C:char s[8]; s="Beijing";

D:char *s; s="Beijing";

答案:D

第7题(1.0分)题号:3191

若变量a,i 已正确定义,且i 已正确赋值,合法的语句是() A:a=int(i);

B:a==1

C:++i;

D:a=a++=5;

答案:C 第8题(1.0分)题

号:490 以下字符中不是转义字符的

是()。

A:\a'

B:\b'

C:\c'

D:'\\'

答案:C 第9题(1.0分)

题号:184 下列定义不正确的

是()。

A:#define PI 3.141592

B:#define S345

C:int max(x,y); int x,y; { }

D:static char c;

答案:C

第10题(1.0分)题号:3028 char

h,*s=&h;可将字符H通过指针存入变量h 中的语句是().

A:*s=H;

B:*s='H';

C:s=H;

D:s='H'

答案:B 第11题(1.0分)题号:690 设char 型变量x 中的值为10100111,则表达式(2+x)^(~3)的值是()。

A:10101001

B:10101000

C:11111101

D:01010101

答案:D

第12题(1.0分)题号:2381

设以下变量均为int 类型,表达式的值不为7的是()

A:x=y=6,x+y,x+1

B:x=y=6,x+y,y+1

C:x=6,x+1,y=6,x+y

D:y=6,y+1,x=y,x+1

答案:C

第13题(1.0分)题号:3124 若有说明int a[3][4];则对a 数组元素的正确引用是().

A:a[2][4]

B:a[1,3]

C:a[1+1][0]

D:a(2)(1)

答案:C 第14题(1.0分)题号:679 在 C 语

言中,形参的缺省存储类是()。

A:auto

B:register

C:static

D:extern

答案:A 第15题(1.0分)

题号:1343 C 语言源程序的基

本单位是().

A:过程

B:函数

C:子程序

D:标识符

答案:B 第16题(1.0分)

题号:3023 C 语言程序中必须有

的函数是().

A:#include "stdio.h"

B:main

C:printf

D:scanf

答案:B 第17题(1.0分)

题号:3228

有定义:int a=8,b=5,c;, 执行语句

c=a/b+0.4;后,c 的值为 ()

A:1.4

B:1

C:2.0

D:2

答案:B

第18题(1.0分)题号:640 以下对二维数组a 的正确说明是()。

A:int a[3][]

B:float a(3,4)

C:double a[1][4]

D:float a(3)(4)

答案:C

第19题(1.0分)题号:2884

以下标识符中,不能作为合法的C 用户定义标识符的是().

A:answer

B:to

C:signed

D:_if

答案:C

第20题(1.0分)题号:652

在C 语言中,引用数组元素时,其数组下标的数据类型允许是()。 A:整型常量B:整型表达式

C:整型常量或整型表达式

D:任何类型的表达式

答案:C

第21题(1.0分)题号:381

以下标识符中,不能作为合法的C 用户定义标识符的是()。

A:answer

B:to

C:signed

D:_if

答案:C

第22题(1.0分)题号:2898

已知year 为整型变量,不能使表达式(year%4==0&&year%100!=0)||

year%400==0的值为"真"的数据是(). A:1990

B:1992

C:1996

D:2000

答案:A 第23题(1.0分)题号:177 以下描述中,正确的是()。 A:预处理是指完成宏替换和文件包含中指定的文件的调用

B:预处理指令只能位于 C 源文件的开始C:C 源程序中凡是行首以#标识的控制行都是预处理指令

D:预处理就是完成C编译程序对C源程序第一遍扫描,为编译词法和语法分析作准备

答案:C

第24题(1.0分)题号:156 执行

下列语句后的输出为()。 int j=-1;

if(j<=1) printf("****\n");

else printf("%%%%\n");

A:****

B:%%%%

C:%%%%c

D:有错,执行不正确答案:A 第25题(1.0分)题

号:2850 以下函数调用语句中实参的

个数是().

exce((v1,v2),(v3,v4,v5),v6);

A:3

B:4

C:5

D:6

答案:A 第26题(1.0分)

题号:506 以下程序段的输出结

果为()。 for(i=4;i>1;i--)

for(j=1;j

A:无

B:######

C:#

D:###

答案:B 第27题(1.0分)

题号:2830 下列程序的输出结

果是().

main()

{ int x=1,y=0,a=0,b=0;

switch(x) {

case 1:switch(y) { case

0:a++;break;

case

1:b++;break;

} case

2:a++;b++;break; case

3:a++;b++;break;

}

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

}

A:a=1,b=0

B:a=2,b=1

C:a=1,b=1

D:a=2,b=2

答案:B 第28题(1.0分)

题号:573

C 语言中运算对象必须是整型的运算符是()。

A:%=

B:/

C:=

D:〈=

答案:A 第29题(1.0分)

题号:647

以下能对二维数组a 进行正确初始化的语句是()。

A:int a[2][]={{1,0,1},{5,2,3}};

B:int a[][3]={{1,2,3},{4,5,6}};

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

D:int a[][3]={{1,0,1}{},{1,1}};

答案:B 第30题(1.0分)

题号:3135 以下数组定义中

不正确的是().

A:int a[2][3];

B:int b[][3]={0,1,2,3};

C:int c[100][100]={0};

D:int d[3][]={{1,2},{1,2,3},{1,2,3,4}};

答案:D

三、程序填空共2题(共计24分)第1题(12.0分)题号:417

/*------------------------------------------------------

【程序填空】

------------------------------------------------------ ---

题目:利用全局变量计算长方体的体积及三个面的面积。

------------------------------------------------------ -*/ int s1,s2,s3;

int vs(int a,int

b,int c) {int v;

/***********SPACE********

***/ v=【?】;

s1=a*b;

/***********SPACE********

***/ s2=【?】;

s3=a*c; return v; }

main()

{int v,l,w,h;

clrscr(); printf("\ninput

length,width and

height: ");

/***********SPACE***********/

scanf("%d%d%d",【?】,&w,&h);

/***********SPACE***********/ v=【?】; printf("v=%d s1=%d

s2=%d

s3=%d\n",v,s1,s2,s3);

getch();

}

答案:

=======(答案1)=======

a*b*c =========或=========

a *

b * c

=======(答案2)=======

b*c

=========或=========

b * c

=======(答案3)=======

&l

=======(答案4)=======

vs(l,w,h)

=========或=========

vs( l , w , h )

第2题(12.0分)题号:441

/*------------------------------------------------------

【程序填空】

------------------------------------------------------ ---

题目:给定程序中函数fun 的功能是:从低位开始取出长整型变量s 中奇数位上的数,依次构成一个新数放在t 中。

------------------------------------------------------*/

#include

#include void fun

(long s, long *t) { long sl=10;

s /= 10;

/***********SPACE***********

/ *t = s 【?】 10; while(s>0)

/***********SPACE***********

/

{ s = 【?】;

/***********SPACE***********/

*t = s%10*sl【?】;

/***********SPACE***********/

sl = sl 【?】10;

}

}

main()

{ long s, t;

clrscr();

printf("\nPlease enter s:"); scanf("%ld", &s); fun(s,

&t);

printf("The result is: %ld\n", t);

}

答案:

=======(答案1)=======

%

=======(答案2)=======

s/100

=======(答案3)=======

+ *t

=======(答案4)=======

*

四、程序改错共2题(共计22分)第

1题(11.0分)题号:383

/*----------------------------------------------------- 【程序改错】

------------------------------------------------------

--

题目:给定程序的功能是:读入一行英文

文本,将其中每个单词的后一个字母

改成大写,然后输出此文本行(这里

的“单词”是指由空格隔开的

字符串)。例如,若输入I am a student to take the examination.,则

应输出"I aM A studenT tO takE thE examination."。

------------------------------------------------------

--

注意:不可以增加或删除程序行,也不可

以更改程序的结构。

-----------------------------------------------------*/ #include "conio.h"

#include "stdio.h"

#include "ctype.h" #include

"string.h"

up1st ( char *p )

{

/**********FOUND**********/

integer k = 0; for ( ; *p;

p++ ) if ( k )

/**********FOUND**********/

{ if ( *p = ' ' )

{ k = 0;

/**********FOUND**********/

*(p -1 ) = toupper( *( p - 1 );

} } else if ( *p != ' ' ) k =

1;

*( p-1 ) = toupper( *(p-1) );

}

main( ) { char

chrstr[81];

printf( "\nPlease enter a string: " ); gets ( chrstr );

printf( "\n\nBefore changing:\n %s", chrstr ); up1st( chrstr );

printf( "\nAfter changing:\n %s", chrstr );

}

答案:

=======(答案1)=======

int k=0;

=======(答案2)=======

{ if ( *p == ' ' )

=======(答案3)=======

*(p -1 ) = toupper( *( p - 1 ));

第2题(11.0分)题号:431

/*----------------------------------------------------- 【程序改错】

------------------------------------------------------

--

题目:编写函数fun 求1000以内所有8

的倍数之和。

------------------------------------------------------

--

注意:不可以增加或删除程序行,也不可

以更改程序的结构。

-----------------------------------------------------*/ #include"stdio.h

" #define N

1000 main() {int

sum;

sum=fun(8);

printf("%d 以内所有%d 的倍数之和

为:%d\n",N,8,sum);

getch();

}

int fun(int m)

{

/**********FOUND**********/

int s=0;i;

/**********FOUND**********

/ for(i=1;i>N;i++)

/**********FOUND**********

/ if(i/m==0) s+=i;

return s; }

答案:

=======(答案1)=======

int s=0 , i ;

=======(答案2)=======

for(i=1;i

=======(答案3)======= if(i%m==0)

五、程序设计共1题(共计14分)第1题(14.0分)题号:390

/*------------------------------------------------ 【程序设计】

-------------------------------------------------- 题目:求一批数中大值和小值的差。

--------------------------------------------------

注意:部分源程序给出如下。请勿改动主函数 main 和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。

------------------------------------------------*/ int max_min(int a[],int n)

{

/**********Program**********/

/********** End **********/

}

#define N 30

#include "stdlib.h"

#include "stdio.h" main()

{

int a[N],i,k; clrscr();

for(i=0;i

a[i]=random(51)+10;

for(i=0;i

if((i+1)%5==0) printf("\n");

}

k=max_min(a,N);

printf("the result is:%d\n",k);

yzj(); getch();

} yzj()

{

FILE *IN,*OUT;

int n; int

i[30];

int o;

IN=fopen("in.dat","r"); if(IN==NULL) {printf("Read File Error");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{printf("Write File Error");

} for(n=0;n<5;n++)

{

fscanf(IN,"%d",&i[n]);

}

o=max_min(i,5);

fprintf(OUT,"%d\n",o); fclose(IN);

fclose(OUT);

}

答案:---------------------- int

i,max,min; max=min=a[0];

for(i=1;imax)

max=a[i]; else if(a[i]

min=a[i];

return(max-min);

----------------------

一、判断共10题(共计10分)

第1题(1.0分)题号:34

7&3+12的值是15。

答案:N

第2题(1.0分)题号:1468

在 C 语言中,整型数据在内存中占2个字节.

答案:N 第3题(1.0分)

题号:19

C 语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。答案:Y 第

4题(1.0分)题号:1512 将一个字符串"abc"赋给字符串变量str 的方法是

str="abc". 答案:N

第5题(1.0分)题号:1501

以数组名作函数参数时,实参数组与形参数组都不必定义长度,因此实参与形参的结合方式是地址结合,与数组长度无关.

答案:N 第6题(1.0分)题号:18 a=(b=4)+(c=6) 是一个合法的赋值表达式。答案:Y 第7题(1.0分)题号:1262

C 语言规定:在一个源程序中,main 函数的位置必须在开始.

答案:N

第8题(1.0分)题号:1479

C 程序中的一个变量可以被定义为两个或多个不同的类型.

答案:N

第9题(1.0分)题号:23

若 a=3,b=2,c=1 则关系表达式

"(a>b)==c" 的值为"真"。

答案:Y

第10题(1.0分)题号:1502

对二维数组a 来说,由于a+1与*(a+1)的

值相等,因此二者的含义是一样的.

答案:N

二、单项选择共30题(共计30分)

第1题(1.0分)题号:177 以下描述

中,正确的是()。

A:预处理是指完成宏替换和文件包含中指

定的文件的调用

B:预处理指令只能位于C 源文件的开始C:C 源程序中凡是行首以#标识的控制行

都是预处理指令

D:预处理就是完成C编译程序对C源程序第一遍扫描,为编译词法和语法分析作准备

答案:C

第2题(1.0分)题号:2789

设C 语言中,int 类型数据占4个字节,则short 类型数据占().

A:1个字节 B:2个字

节 C:4个字节 D:8个

字节

答案:B

第3题(1.0分)题号:693

以下各选项企图说明一种新的类型名,其

中正确的是()。

A:typedef v1 int;

B:typedef v2=int;

C:typedef int v3;

D:typedef v4: int;

答案:C

第4题(1.0分)题号:104

以下运算符中,优先级高的运算符是()。A:|| B:%

C:!

D:==

答案:C

第5题(1.0分)题号:138 以下程序的

输出结果是()。 main() {int i,j,k,a=3,b=2; i=(--a==b++)?--a:++b; j=a++;k=b;

printf("i=%d,j=%d,k=%d\n",i,j,k);

}

A:i=2,j=1,k=3

B:i=1,j=1,k=2

C:i=4,j=2,k=4

D:i=1,j=1,k=3 答案:D

第6题(1.0分)题号:2907 以下程序段的执行结果是(). double

x;x=218.82631;

printf("%-6.2e\n",x);

A:输出格式描述符的域宽不够,不能输出B:输出为21.38e+01

C:输出为2.2e+02

D:输出为-2.14e2

答案:C 第7题(1.0分)题

号:152 以下程序的运行结果是

()。 main() { int n;

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

{ if(n%3==0) continue; printf("%d",n);

}

}

A:12457810

B:369

C:12

D:1234567890

答案:A 第8题(1.0分)

题号:411 下列程序的输出结

果为()。 main() {int

m=7,n=4; float

a=38.4,b=6.4,x;

x=m/2+n*a/b+1/2;

printf("%f\n",x);

}

A:27.000000

B:27.500000

C:28.000000

D:28.500000

答案:A

第9题(1.0分)题号:584

设有说明:char w;int x;float y;double z;则表达式w*x+z-y 值的数据类型为()。A:float

B:char

C:int

D:double

答案:D

第10题(1.0分)题号:208

下列各m 的值中,能使

m%3==2&&m%5==3&&m%7==2为真的是()。

A:8

B:23

C:17

D:6

答案:B

第11题(1.0分)题号:2962

若已定义x 为int 类型变量,下列语句中说明指针变量p 的正确语句是().

A:int p=&x;

B:int *p=x;

C:int *p=&x;

D:*p=*x;

答案:C

第12题(1.0分)题号:3142 以下正确的说法是:在 C 语言中().

A:实参和与其对应的形参各占用独立的存储单元

B:实参和与其对应的形参共占用一个存储单元

C:只有当实参和与其对应的形参同名时才共占用存储单元

D:形参是虚拟的,不占用存储单元

答案:A 第13题(1.0分)题

号:3156 sizeof(float)是().

A:一种函数调用

B:一个不合法的表达式 C:一个整型表达式D:一个浮点表达式

答案:C

第14题(1.0分)题号:3119 以下对二维数组a 的正确说明是().

A:int a[3][]

B:float a(3,4)

C:double a[1][4]

D:float a(3)(4)

答案:C

第15题(1.0分)题号:3218

若有以下定义,则能使值为3的表达式是() int k=7,x=12; A:x%=(k%=5)

B:x%=(k-k%5)

C:x%=k-k%5

D:(x%=k)-(k%=5) 答案:D

第16题(1.0分)题号:672

C 语言允许函数类型缺省定义,此时函数值隐含的类型是()。

A:float

B:int

C:long

D:double

答案:B 第17题(1.0分)

题号:2796

先用语句定义字符型变量c,然后要将字符a 赋给c,则下列语句中正确的是().

A:c='a';

B:c="a";

C:c="97";

D:C='97'

答案:A 第18题(1.0分)

题号:2923

经过以下语句定义后, 表达式

z+=x>y?++x:++y 的值为().

int x=1,y=2,z=3;

A:2

B:3

C:6

D:5

答案:C

第19题(1.0分)题号:526 用户定义的函数不可以调用的函数是()。

A:非整型返回值的

B:本文件外的

C:main 函数

D:本函数下面定义的

答案:C

第20题(1.0分)题号:2567

以下标识符中,不能作为合法的C 用户定义标识符的是().

A:a3_b3

B:void

C:_123

D:IF

答案:B 第21题(1.0分)

题号:2401

下面程序段的输出结果为() int

a,b;b=(a=3*5,a*4,a*5); printf("%d",b); A:60

B:75

C:65

D:无确定值

答案:B

第22题(1.0分)题号:3063

若有定义:int a=7;float x=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是(). A:2.500000

B:2.750000

C:3.500000

D:0.000000

答案:A 第23题(1.0分)题号:3129 若有说明: int a[][4]={0,0};则下面不正确的叙述是().

A:数组a 的每个元素都可得到初值0 B:二维数组a 的第一维大小为1 C:因为二维数组a 中第二维大小的值除经初值个数的商为1,故数组 a 的行数为1

D:有元素a[0][0]和a[0][1]可得到初值0,其

余元素均得不到初值0

答案:D

第24题(1.0分)题号:3186 若有说明:int i, j=2,*p=&i;,则能完成i=j 赋值功能的语句是().

A:i=*p;

B:*p=*&j;

C:i=&j;

D:i=**p;

答案:B 第25题(1.0分)

题号:3016

与实际参数为实型数组名相对应的形式参数不可以定义为().

A:float a[];

B:float *a;

C:float a;

D:float (*a)[3];

答案:C

第26题(1.0分)题号:515

int i,j,a[2][3];按照数组a 的元素在内存的排列次序,不能将数

1,2,3,4,5,6存入a 数组的是()。

A:for(i=0;i<2;i++)for(j=0;j<3;j++)a[i][j]=i*3 +j+1;

B:for(i=0;i<3;i++)for(j=0;j<2;j++)a[j][i]=j*3 +i+1;

C:for(i=0;i<6;i++)a[i/3][i%3]=i+1;

D:for(i=1;i<=6;i++)a[i][i]=i;

答案:D

第27题(1.0分)题号:2799 下列运算符中,不属于关系运算符的是().

A:<

B:>

C:>=

D:!

答案:D

第28题(1.0分)题号:662

C 语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是()。

A:void

B:int

C:float

D:double

答案:B 第29题(1.0分)

题号:196

若有下列定义,则对a 数组元素地址的正确引用是()。

int a[5],*p=a;

A:*(p+5)

B:*p+2

C:*(a+2)

D:*&a[5]

答案:C

第30题(1.0分)题号:2993 下列程序段的输出结果为().

int a=7,b=9,t;

t=a*=a>b?a:b;

printf("%d",t);

A:7

B:9

C:63

D:49

答案:C

三、程序填空共2题(共计24分)第1题(12.0分)题号:591

/*如果a>b,就将两个数的位置调换;否则,保持不变。*/

main()

{

int a,b,temp; printf("\nPlease input two int number:");

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

if(a>b)

{

/***********SPACE***********/ 【?】;

/***********SPACE***********/

a=【?】;

b=temp; }

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

}

答案:

=======(答案1)======= temp=a

=======(答案2)=======

b

第2题(12.0分)题号:30

/*------------------------------------------------------

【程序填空】

------------------------------------------------------ ---

题目:以下程序的功能是用冒泡法对数组a 进行由小到大的排序。

------------------------------------------------------ -*/ void fun(int a[],int

n)

{

int i,j,t;

/***********SPACE***********/ for

(j=0; 【?】;j++)

/***********SPACE***********/

for (i=0; 【?】;i++)

/***********SPACE***********/

if(【?】)

{t=a[i];a[i]=a[i+1];a[i+1]=t;}

}

main()

{

int i,a[10]={3,7,5,1,2,8,6,4,10,9};

/***********SPACE***********/

【?】;

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

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

}

答案:

=======(答案1)======= j<=n-1

=========或=========

n-1>=j

=========或========= j<=-1+n

=========或=========

-1+n>=j

=========或=========

j

=========或=========

n>j

=======(答案2)=======

i

=========或=========

n-j-1>i

=========或=========

i

=========或=========

n-1-j>i

=========或=========

i<=n-j-2

=========或=========

i<=n-2-j

=======(答案3)=======

a[i]>a[ i + 1 ]

=========或=========

a[ i + 1 ]

=======(答案4)=======

fun(a,10)

四、程序改错共2题(共计22分)第

1题(11.0分)题号:417

/*----------------------------------------------------- 【程序改错】

------------------------------------------------------

--

题目:读取7个数(1-50)的整数值,

每读取一个值,程序打印出该值个数

的*。

------------------------------------------------------

--

注意:不可以增加或删除程序行,也不可

以更改程序的结构。

-----------------------------------------------------*/ #include "stdio.h" main()

{int i,a,n=1;

/**********FOUND**********/

while(n<7)

{

do

{

scanf("%d",&a);

}

/**********FOUND**********/

while(a<1&&a>50);

/**********FOUND**********/ for(i=0;i<=a;i++)

printf("*");

printf("\n"); n++;}

getch();

}

答案:

=======(答案1)=======

while(n<=7)

=========或=========

while(n<8)

=======(答案2)=======

while(a<1||a>50);

=========或=========

while(a>50||a<1);

=======(答案3)=======

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

第2题(11.0分)题号:429

/*----------------------------------------------------- 【程序改错】

------------------------------------------------------

--

题目:求0-7这8个数字所能组成的奇数

个数。

------------------------------------------------------

--

注意:不可以增加或删除程序行,也不可

以更改程序的结

构。

-----------------------------------------------------*/ #include "stdio.h" main()

{

/**********FOUND**********/

long sum=4;s=4;

int j;

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

/**********FOUND**********/

{printf("\n%d",sum);

/**********FOUND**********/

if(j<2) s*=7; else s*=8;

sum+=s;}

printf("\nsum=%ld",sum);

getch();

} 答案:

=======(答案1)=======

long sum=4,s=4;

=======(答案2)=======

{ printf("\n%ld",sum);

=======(答案3)=======

if(j<=2)

=========或=========

if(j<3)

五、程序设计共1题(共计14分)第

1题(14.0分)题号:49

/*------------------------------------------------

【程序设计】

--------------------------------------------------

题目:请用for 循环编写编写函数fun,

函数的功能是:计算n 门课程的平均值,计算结果作为函数值返回。例如,若有5门课程的成绩是:92,

76,69,58,

88,则函数的值为76.600000。

--------------------------------------------------

注意:部分源程序给出如下。请勿改动主

函数main 和其它函数中的任何内容,仅在函数fun

的花括号中填入所编写的若干语

句。

------------------------------------------------*/

#include "stdio.h"

float fun(int a[],int n)

{

/**********Program**********/

/********** End **********/

}

main()

{

int a[]={92,76,69,58,88};

printf("y=%f\n",fun(a,5));

yzj(); } yzj()

{

FILE *IN,*OUT;

int iIN[10],i,j;

float fOUT;

IN=fopen("18.in","r"); if(IN==NULL) {printf("Please Verify The Currernt Dir..It

May Be Changed");

}

OUT=fopen("18.out","w"); if(OUT==NULL) {printf("Please Verify The Current Dir.. It May Be Changed");

}

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

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

fscanf(IN,"%d",&iIN[i]);

fOUT=fun(iIN,5);

fprintf(OUT,"%f\n",fOUT);

}

fclose(IN); fclose(OUT);

}

答案:----------------------

int i;

float y=0;

for(i=0;i

y+=a[i]; y=y/n;

return y;

----------------------

一、判断共10题(共计10分)

第1题(1.0分)题号:7

在C 语言中,此定义和语句是合法的:enum aa{ a=5,b,c}bb;bb=(enum aa)5;

答案:Y 第2题(1.0分)

题号:1475 表达式1/4+2.75

的值是3. 答案:N

第3题(1.0分)题号:1510

有数组定义int a[2][2]={{1},{2,3}};则a[0][1] 的值为0. 答案:Y 第4题(1.0分)题号:1262 C 语言规定:在一个源程序

中,main 函数的位置必须在开始. 答案:

N

第5题(1.0分)题号:1263 for(表达式1;;表达式3)可理解为for(表达式1;1;表达式3). 答案:Y 第6题(1.0分)题

号:1512 将一个字符串"abc"赋给字符串变量str 的方法是str="abc".

答案:N 第7题(1.0分)题号:22

关系运算符<= 与== 的优先级相同。

答案:N

第8题(1.0分)题号:1252

break 语句可用于循环体内,它将退出该重循环. 答案:Y

第9题(1.0分)题号:1504 语句char *p="Turbo C"的含义是将字符串赋给字符型指针变量p.

答案:N

第10题(1.0分)题号:1241

在标准C中,while和do_while的功能完全相同.

答案:N

二、单项选择共30题(共计30分)第1题(1.0分)题号:3148

C 语言允许函数类型缺省定义,此时函数值隐含的类型是().

A:float

B:int

C:long

D:double

答案:B

第2题(1.0分)题号:624

以**于运算符优先顺序的描述中正确的是()。

A:关系运算符<算术运算符<赋值运算符< 逻辑运算符

B:逻辑运算符<关系运算符<算术运算符< 赋值运算符

C:赋值运算符<逻辑运算符<关系运算符< 算术运算符

D:算术运算符<关系运算符<赋值运算符< 逻辑运算符

答案:C

第3题(1.0分)题号:2943

关于return 语句,下列正确的说法是(). A:在主函数和其他函数中均可出现

B:必须在每个函数中出现

C:可以在同一个函数中出现多次

D:只能在除主函数之外的函数中出现一次

答案:C

第4题(1.0分)题号:458 下列定义不正确的是()。

A:#define PI 3.141592

B:#define S345

C:int max(x,y); int x,y; { }

D:static char c;

答案:C

第5题(1.0分)题号:2947

C 语言程序中,若对函数类型未加显式说明,则函数的隐含说明类型为().

A:void

B:double

C:int

D:char

答案:C

第6题(1.0分)题号:3177 若有说明:int *p,m=5,n;以下正确的程序段是(). A:p=&n;scanf("%d",&p);

B:p=&n;scanf("%d",*p)

C:scanf("%d",&n);*p=n;

D:p=&n;*p=m;

答案:D

第7题(1.0分)题号:3057

设以下变量均为int 类型,则值不等于7的

表达式是().

A:(x=y=6,x+y,x+1)

B:(x=y=6,x+y,y+1)

C:(x=6,x+1,y=6,x+y)

D:(y=6,y+1,x=y,x+1)

答案:C 第8题(1.0分)题号:409 若

a 是float 型变量,

b 是unsigned 型变量,以下输入语句中合法的是()。

A:scanf("%6.2f%d",&a,&b);

B:scanf("%f%n",&a,&b);

C:scanf("%f%3o",&a,&b);

D:scanf("%f%f",&a,&b);

答案:C

第9题(1.0分)题号:3088 下列选项中,合法的C 语言关键字是().

A:VAR

B:cher

C:integer

D:default

答案:D

第10题(1.0分)题号:533

对结构体类型的变量的成员的访问,无论

数据类型如何都可使用的运算符是()。A:.

B:->

C:*

D:&

答案:A 第11题(1.0分)题号:3212

C 语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符() A:必须为字母

B:必须为下划线

C:必须为字母或下划线

D:可以是字母,数字和下划线中任一字符

答案:C

第12题(1.0分)题

号:416 以下程序的输出结果

为()。 main() {int

i=010,j=10;

printf("%d,%d\n",++i,j--);

}

A:11,10

B:9,10

C:010,9

D:10,9

答案:B

第13题(1.0分)题号:542

若有int *p=(int *)malloc(sizeof(int));则向内存申请到内存空间存入整数123的语句为()。

A:scanf("%d",p);

B:scanf("%d",&p);

C:scanf("%d",*p);

D:scanf("%d",**p);

答案:A 第14题(1.0分)题号:464

关于指针概念说法不正确的是()。 A:

一个指针变量只能指向同一类型变量

B:一个变量的地址称为该变量的指针 C:只有同一类型变量的地址才能放到指向该类型变量的指针变量之中 D:指针变量可以由整数赋,不能用浮点赋

答案:D

第15题(1.0分)题号:687 表达式,

0x13&0x17的值是()。

A:0x17

B:0x13

C:0xf8

D:0xec

答案:B

第16题(1.0分)题号:3000

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

if(a>c)b=a;a=c;c=b;则c 的值为().

A:1

B:2

C:3

D:不一定

答案:B

第17题(1.0分)题号:138

以下程序的输出结果是()。

main() {int i,j,k,a=3,b=2; i=(--

a==b++)?--a:++b; j=a++;k=b;

printf("i=%d,j=%d,k=%d\n",i,j,k);

}

A:i=2,j=1,k=3

B:i=1,j=1,k=2

C:i=4,j=2,k=4

D:i=1,j=1,k=3

答案:D

第18题(1.0分)题号:441 下列语句中,不正确的是()。

A:static char a[2]={1,2};

B:static int a[2]={'1','2'};

C:static char a[2]={'1','2','3'};

D:static char a[2]={'1'};

答案:C

第19题(1.0分)题号:477 以下对枚举

类型名的定义中正确的是()。

A:enum a={sum,mon,tue};

B:enum a {sum=9,mon=-1,tue};

C:enum a={"sum","mon","tue"};

D:enum a {"sum","mon","tue"};

答案:B 第20题(1.0分)题号:661 以

下正确的描述是:在C 语言程序中()。A:函数的定义可以嵌套,但函数的调用不可

以嵌套 B:函数的定义不可以嵌套,但函数

的调用可以嵌套 C:函数的定义和函数的调

用均不可以嵌套

D:函数的定义和函数的调用均可以嵌套

答案:B 第21题(1.0分)

题号:3103 以下描述中正确的

是().

A:由于 do-while 循环中循环体语句只能是

一条可执行语句,所以循环体内不能使用复

合语句

B:do-while 循环由do 开始,用while 结束, 在while(表达式)后面不能写分号C:

在 do-while 循环体中,一定要有能使while 后面表达式的值变为零("假")的操作D:do-while 循环中,根据情况可以省略while

答案:C

第22题(1.0分)题号:2994 下列表达式中,可作为C合法表达式的是().

A:[3,2,1,0]

B:(3,2,1,0)

C:3=2=1=0

D:3/2/1/0

答案:B 第23题(1.0分)题号:591 设有 int x=11; 则表达式 (x++ * 1/3) 的值是()。

A:3

B:4

C:11

D:12

答案:A 第24题(1.0分)题号:622 putchar 函数可以向终端输出一个()。A:整型变量表达式值

B:实型变量值

C:字符串

D:字符或字符型变量值

答案:D

第25题(1.0分)题号:3232 有如下定义#define D 2 int x=5;float y=3.83; char c=′D′; 则下面选项中错误的是

()

A:x++;

B:y++;

C:c++;

D:D++;

答案:D

第26题(1.0分)题号:196

若有下列定义,则对a 数组元素地址的正确引用是()。

int a[5],*p=a;

A:*(p+5)

B:*p+2

C:*(a+2)

D:*&a[5]

答案:C

第27题(1.0分)题号:2377

下列数据中,不合法的C 语言实型数据的

是( ) A:0.123

B:123e3

C:2.1e3.5

D:789.0

答案:C

第28题(1.0分)题号:2872

在位运算中,操作数每右移一位,其结果相

当于().

A:操作数乘以2

B:操作数除以2

C:操作数乘以16

D:操作数除以16

答案:B 第29题(1.0分)

题号:685

在位运算中,操作数每左移一位,其结

果相当于()。 A:操作数乘以2

B:操作数除以2

C:操作数除以4

D:操作数乘以4

答案:A 第30题(1.0分)题号:132

若ch 为char 型变量,k 为int 型变量

(已知字符a 的ASCII 十进制代码为97),则以下程序段的执行结果是()。

ch='a'; k=12; printf("%x,%o,",ch,ch,k); printf("k=%%d\n",k);

A:因变量类型与格式描述符的类型不匹配,输出无定值 B:输出项与格式描述符个数不符,输出为零值或不定值

C:61,141,k=%d

D:61,141,k=%12

答案:C

三、程序填空共2题(共计24分)第

1题(12.0分)题号:605

/*用辗转相除法求解两个整数的大公约

数。*/

main()

{

int a,b,r;

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

/***********SPACE***********/

【?】;

while(r!=0)

{ a=b;

/***********SPACE***********/ 【?】;

r=a%b; }

printf("%d",b);

}

答案:

=======(答案1)=======

r=a%b =======(答案

2)=======

b=r

第2题(12.0分)题号:606

/*输出九九乘法表*/

/*1*1=1 1*2=2 1*3=3 1*4=4 .....1*9=9*/

/*2*1=1 2*2=4 2*3=6 2*4=8......2*9=18*/ main()

{

int i,j; /***********SPACE***********/ for(【?】;i<=9;i++)

{ for(j=1;j<=9;j++)

/***********SPACE***********/ printf("%d*%d=%d",i,j,【?】); printf("\n");

}

}

答案:

=======(答案1)=======

i=1

=======(答案2)=======

i*j

四、程序改错共2题(共计22分)第

1题(11.0分)题号:441

/*----------------------------------------------------- 【程序改错】

------------------------------------------------------

--

题目:输入字符序列,字符序列以特殊字

符“#”结束。程序从前向后依次读入字符,并翻译出新的字符输出。翻译的规则是:如果当前读入的字符是数字符,如果该

字符的面值为n,则它的后一个字符(包

括数字符)需重复输出n+1次如果当前读

入的字符不是数字符,则输出该字符。

输出时,以上述一次翻译为一组,不同

组间输

出用一个空白字符隔开。翻译直至当前读

入的字符为字符'#',结束翻译和输

出 .

------------------------------------------------------

--

注意:不可以增加或删除程序行,也不可以更改程序的结构。 -----------------------------------------------------*/

#include void

main()

{

char ch,nch;

int count; int

k;

printf("Enter string.\n"); scanf("%c",&ch); /**********FOUND**********/ while(ch='#') {

if(ch>='0'&&ch<='9')

{

/**********FOUND**********/

count=ch-'0'-1; scanf("%c",&nch);

for(k=0;k

printf("%c",nch);

}

else

/**********FOUND**********/

printf("%f",ch); printf("

");

scanf("%c",&ch);

}

printf("#\n");

}

答案:

=======(答案1)=======

while(ch!='#')

=======(答案2)=======

count=ch-'0'+1;

=======(答案3)=======

printf("%c",ch);

第2题(11.0分)题号:5

/*----------------------------------------------------- 【程序改错】

------------------------------------------------------ --

题目:将一个字符串中第m 个字符开始

全部字符复制成为另一个字符

串。

程序中共有4条错误语句,请改正错误。

------------------------------------------------------ --

注意:不可以增加或删除程序行,也不可-----------------------------------------------------*/

#include

void strcopy(char *str1,char *str2,int m) /**********FOUND**********/

char p1,p2;

int i,j;

/**********FOUND**********/

= str1+m; p2=str2;

/**********FOUND**********/

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

*p2='\0';

}

main()

{ int

i,m;

char *p1,*p2,str1[80],str2[80];

p1=str1; p2=str2; gets(p1);

scanf("%d",&m);

/**********FOUND**********/

strcat(str1[0],str2[0],m);

puts(p1);puts(p2);

}

答案:

=======(答案1)=======

{ char *p1,*p2;

=========或=========

{ char *p2,*p1;

=======(答案2)=======

p1= str1 + m -1;

=========或========= p1=-

1+ str1 + m ;

=======(答案3)=======

while(*p1)

=======(答案4)=======

strcopy(str1,str2,m);

五、程序设计共1题(共计14分)第

1题(14.0分)题号:377

/*------------------------------------------------ 【程序设计】

--------------------------------------------------

题目:编写函数实现两个数据的交换,在主函数

中输入任意三个数据,调用函数对这

三个数据从大到小排序。

--------------------------------------------------

注意:部分源程序给出如下。请勿改动主函数 main 和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。

------------------------------------------------*/

#include

void swap(int *a,int *b)

{

/**********Program**********/

/********** End **********/

} main()

{int x,y,z;

scanf("%d%d%d",&x,&y,&z);

if(x

if(x

if(y

printf("%3d%3d%3d",x,y,z);

yzj(); getch(); } yzj()

{

FILE *IN,*OUT;

int m,n; int i[2];

int o;

IN=fopen("in.dat","r"); if(IN==NULL) {printf("Read File Error");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{printf("Write File Error");

}

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

{ for(m=0;m<2;m++)

{

fscanf(IN,"%d",&i[m]);

} swap(&i[0],&i[1]);

fprintf(OUT,"%d\n",i[0]);

fprintf(OUT,"%d\n",i[1]);

}

fclose(IN); fclose(OUT);

}

答案:-------------------

--- int k;

k=*a;

*a=*b;

*b=k; 一、判断共10题(共计10分)

第1题(1.0分)题号:1497 字

符串只能存放在字符型数组中. 答

案:Y

第2题(1.0分)题号:3

若有宏定义:#define S(a,b) t=a;a=b;b=t

由于变量t 没定义,所以此宏定

义是错误的。答案:N

第3题(1.0分)题号:1245 在标准

C 中,"="是判断两个数是否相等. 答案:

N

第4题(1.0分)题号:1493

函数调用可以出现在执行语句中,但不能

出现在表达式中. 答案:N

第5题(1.0分)题号:1490

strcat(s1,s2)函数是将字符串s1复制到

字符串s2中答案:N 第6题(1.0分)

题号:21 语句scanf("%7.2f",&a);是一个

合法的scanf 函数。答案:N

第7题(1.0分)题号:1507 函

数若无返回值,则它一定无形参.

答案:N 第8题(1.0分)题

号:1

参加位运算的数据可以是任何类型的数据。答案:N

第9题(1.0分)题号:1491

静态外部变量只在本文件内可用.

答案:Y 第10题(1.0分)题

号:1243

C 语言是一种结构化程序设计语言. 答案:Y

二、单项选择共30题(共计30分)

第1题(1.0分)题号:3092 语句

while(!E);中的表达式!E 等价于().

A:E==0

B:E!=1

C:E!=0

D:E==1

答案:A 第2题(1.0分)题

号:688 若a=1,b=2则 a|b 的

值是()。

A:0

以更改程序的结构。

B:1

C:2

D:3

答案:D 第3题(1.0分)

题号:652

在C 语言中,引用数组元素时,其数组下真",A 的值为偶数时,表达式的值为"假",则以下不能满足要求的表达式是().

A:A%2==1

B:!(A%2==0)

C:!(A%2)

D:A%2

答案:C 第9题(1.0分)题号:376 在C 语言中,能代表逻辑值“真”的是()。A:True

B:大于0的数

C:非0整数

D:非0的数

答案:D

第10题(1.0分)题号:592 能正确表示逻辑关系:"a≥10或a≤0"的C语言表达式是()。

A:a>=10 or a<=0

B:a>=0|a<=10

C:a>=10&&a<=0

D:a>=10 a<=0

答案:D 第11题(1.0分)题号:93 以下运算符中,优先级高的运算符是()。A:?:

B:++

C:&&

D:,

答案:B 第12题(1.0

分)题号:88

下列字符序列中,可用作C 标识符的一组字符序列是()。

A:S.b,sum,average,_above

B:class,day,lotus_1,2day C:#md,&12x,month,student_n!

D:D56,r_1_2,name,_st_1

答案:D

第13题(1.0分)题号:2981

下列标识符中,不合法的C 语言用户自定义标识符是().

A:printf

B:enum

C:_

D:sin

答案:B

第14题(1.0分)题号:2983

标的数据类型允许是()。 A:整型常量

B:整型表达式

C:整型常量或整型表达式

D:任何类型的表达式

答案:C 第4题(1.0分)

题号:142 以下程序的输出结

果为()。 main()

{int i=010,j=10;

printf("%d,%d\n",++i,j--);

}

A:11,10

B:9,10

C:010,9

D:10,9

答案:B

第5题(1.0分)题号:3075

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

A:0

B:1

C:2

D:-1

答案:B 第6题(1.0分)题号:477 以

下对枚举类型名的定义中正确的是()。

A:enum a={sum,mon,tue};

B:enum a {sum=9,mon=-1,tue};

C:enum a={"sum","mon","tue"};

D:enum a {"sum","mon","tue"};

答案:B 第7题(1.0分)

题号:131

若k 为int 型变量,则以下程序段的执行结果是()。

k=-8567; printf("|%06D|\n",k);

A:格式描述符不合法,输出无定值

B:输出为|%06D|

C:输出为|0-8567|

D:输出为|-8567|

答案:B

第8题(1.0分)题号:3106

若希望当A 的值为奇数时,表达式的值为"

下列程序段的输出结果为().

float k=0.8567; printf("%06.1d%%",k*100); A:0085.6%%

B:0085.7%

C:0085.6%

D:.857

答案:B 第15题(1.0分)

题号:525

C 语言中不可以嵌套的是()。 A:函数调用B:函数定义

C:循环语句

D:选择语句

答案:B 第16题(1.0分)题

号:687 表达式,0x13&0x17的

值是()。

A:0x17

B:0x13

C:0xf8

D:0xec 答案:B 第17题(1.0分)题号:2912 已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为().

char a='a'; a--; printf("%d,%c\n",a+'2'-

'0',a+'3'-'0'); A:b,c

B:a--运算不合法,故有语法错

C:98,c

D:格式描述和输出项不匹配,输出无定值

答案:C

第18题(1.0分)题号:470

若有下列定义,则对a 数组元素地址的正确引用是()。

int a[5],*p=a;

A:*(p+5)

B:*p+2

C:*(a+2)

D:*&a[5]

答案:C

第19题(1.0分)题号:2838 下列定义数组的语句中正确的是(). A:#define size 10 char

str1[size],str2[size+2];

B:char str[];

C:int num['10'];

D:int n=5; int a[n][n+2];

答案:A 第20题(1.0分)题号:444 关于return 语句,下列正确的说法是()。A:在主函数和其他函数中均可出现

B:必须在每个函数中出现

C:可以在同一个函数中出现多次

D:只能在除主函数之外的函数中出现一次

答案:C

第21题(1.0分)题号:2894 执行下列

语句后变量x 和y 的值是().

y=10;x=y++; A:x=10,y=10

B:x=11,y=11

C:x=10,y=11 D:x=11,y=10

答案:C

第22题(1.0分)题号:101

以下数据中,不正确的数值或字符常量是()。

A:8.9e1.2

B:10

C:0xff00

D:82.5

答案:A 第23题(1.0分)

题号:492 下列程序段的输出结

果为()。 float x=213.82631;

printf("%3d",(int)x);

A:213.82

B:213.83

C:213

D:3.8

答案:C

第24题(1.0分)题号:105 以下运算符中,优先级高的运算符是()。

A:=

B:!=

C:*(乘号)

D:()

答案:D

第25题(1.0分)题号:3203

有如下程序段,int x=23; do { printf("%d",x--);} while(!x); 该程序的输出结果是 ()

A:321

B:23 C:不输出任何内容

D:陷入死循环

答案:B 第26题(1.0分)题

号:3087

若 a 为int 类型,且其值为3,则执行完表达式a+=a-=a*a 后,a 的值是().

A:-3

B:9

C:-12

D:6

答案:C

第27题(1.0分)题号:443 下列说法不正确的是()。 A:主函数main 中定义的变量在整个文件或程序中有效B:不同函数中,可以使用相同名字的变量

C:形式参数是局部变量 D:在一个函数内部,可以在复合语句中定

义变量,这些变量只在复合语句中有效

答案:A 第28题(1.0分)

题号:384

以下数据中,不正确的数值或字符常量是()。

A:c

B:66

C:0xaa

D:50

答案:A 第29题(1.0分)题

号:2819 以下程序的输出结果为

().

main() {int

i=010,j=10;

printf("%d,%d\n",++i,j--);

}

A:11,10

B:9,10

C:010,9

D:10,9

答案:B 第30题(1.0分)

题号:519 int a[10];

给数组 a 的所有元素分别赋值为1、2、3、……的语句是()。

A:for(i=1;i<11;i++)a[i]=i;

B:for(i=1;i<11;i++)a[i-1]=i;

C:for(i=1;i<11;i++)a[i+1]=i;

D:for(i=1;i<11;i++)a[0]=1;

大学计算机考试题库

第一章 1关于信息社会,下列说法不正确的是( ) A.在信息社会,信息、知识成为重要的生产力要素。 B.信息社会中所有的工业生产都是自动化的。 C.在信息社会,信息技术催生大批新兴产业,同时,传统产业也普遍实行技术改造。 D.计算机的发明是第三次科技革命的重要标志,是人类文明史上继蒸汽技术革命和电力技术革命之后科技领域的又一次重大飞跃。 2二进制是由下列哪位科学家首先提出来的() A.布尔 B.巴贝奇 C.莱布尼兹 D.图灵 3在人体器官中,下列说法不正确的是() A.大脑的思维是对外部事物的直接反应。 B.人体器官可分为直接感觉器官和间接感觉器官。 C.大脑是人体的思维器官。 D.大脑是一种间接感觉器官。 4对于计算思维,下列说法错误的是() A.计算思维是计算机科学家独有的思维方式。 B.计算思维的产生与信息社会发展的时代背景有关,工具影响我们的思维方式。 C.计算思维是一种借助于计算能力进行问题求解的思维和意识。 D.计算思维的本质是抽象和自动化。 5关于信息技术(Information Technology,IT)下列说法正确的是 A.在信息社会,所有的信息处理中都用到了信息技术。 B.在信息处理的每一个环节,都必须使用信息技术。 C.信息技术无法对工业社会形成的传统设备进行技术改造,成为智能设备。 现代信息技术是指以微电子技术、计算机技术和通信技术为特征的技术。D. 6多选(2分) 关于思维,下列说法正确的是() A.思维是人类凭借知识、经验对客观事物进行的间接的应。 B.思维是在表象、概念的基础上进行分析、综合、判断、推理等认识活动的过程。 C.思维是人类的大脑对外部客观世界概括的和间接的反应。 D.思维是大脑活动,与工具无关。 7多选 下列内容属于信息素养(Information Literacy)的是() A.信息意识 B.信息能力 C.信息道德 D.信息知识 8多选(2分)关于推理,下列说法正确的是() A.推理是由已知判断,根据一定的思维规则导出一个或一组新的判断的过程。 B.归纳推理比演绎推理更具有说服力。 C.三段论是一种演绎推理形式。

江苏大学大一c语言期末复习题汇总

选择题1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.Void C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D. 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=; B.double b=1+; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s)

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

2019年大学计算机基础试题及答案

计算机基础试题及答案 一、选择题 1. 冯·诺依曼计算机工作原理的设计思想是。(B) A. 程序设计 B. 程序存储 C. 程序编制 D. 算法设计 2. 计算机的逻辑判断能力决定于(C) A. 硬件 B. 体积 C. 编制的软件 D. 基本字长 3. 构成计算机物理实体的部件称为(C) A. 计算机软件 B. 计算机程序 C. 计算机硬件 D. 计算机系统 4. 微型计算机的微处理器芯片上集成了(A) A. 控制器和运算器 B. CPU和RAM C. 控制器和RAM D. 运算器和I/O接口

5. 计算机中运算器的主要功能是完成。(C) A. 代数和四则运算 B. 代数和逻辑运算 C. 算术和逻辑运算 D. 算术和代数运算 6. 将十进制数93转换为二进制数为(D) A.1110111 B.1110101 C.1010111 D.1011101 7. 具有多媒体功能的微型计算机系统,通常都配有CD-ROM,这是一种 (D) A. 只读内存储器 B. 只读大容量光盘 C. 只读硬盘存储器 D. 只读光盘存储器 8. 在Windows XP中,可以同时运行多少个程序。(D) A)1 B)2 C)10 D)多个 9. 在Windows XP中,如果进行了多次剪切操作,则剪贴板中的内容是 ( B ) A.第一次剪切的内容 B.最后一次剪切的内容 C.所有剪切的内容 D.什么内容也没有 10. 在Windows XP中,下面关于文件夹的描述正确的是 ( A ) A.文件夹中可以包含子文件夹和文件 B.文件夹中只能包含子文件夹 C.文件夹中只能包含文件 D.文件夹中不能包含子文件夹和文件 11. 当已选定文件夹,下列操作中不能删除该文件夹的是( D )

c语言期中考试试题及答案

《C语言程序设计》期中考试试卷 课程编号:03402513试卷类型:A卷考试形式:笔试考试日期: 注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。4.草稿纸用试卷的背面。 一、单项选择题(1空1分,共20分) 1、C语言程序的基本结构是(【1】) 。 【1】 A) 函数 B) 语句 C) 字符 D) 程序行 2、一个C程序的执行是(【2】) 。 【2】A) 从本程序的主函数开始,到本程序的主函数结束 B)从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是(【3】) 。 【3】 A) 一个C源程序必须有且只能有一个主函数 B) 一个C源程序可以含一个或多个子函数 C) 在C源程序中注释说明必须位于语句之后 D) C源程序的基本结构是函数 4、下面不属于C语言保留字的是(【4】) 。 【4】 A) short B) ELSE C) extern D) for 5、下列四个叙述中,正确的是(【5】) 。 【5】 A) 库函数也是C语言本身的组成部分 B) C语言中的输入输出操作是由相应语句完成的 C) 库函数是C编译系统提供的功能函数 D) 标题文件(头文件)可以在程序的函数内部调用 6、下列四组数据类型中,C语言允许的一组是(【6】)。 【6】 A) 整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、双精度型、布尔型 D) 整型、实型、复型 7、在C语言中不同数据类型的的长度是(【7】)。 【7】 A) 固定的 B) 由用户自己定义的 C) 任意的 D) 与机器字长有关

大学计算机考试题库里的全套习题解析

大机题库里的全套习题 一、单选题练习 1.完整的计算机系统由(C 组成。 A . 运算器、控制器、存储器、输入设备和输出设备 B .主机和外部设备 C .硬件系统和软件系统 D .主机箱、显示器、键盘、鼠标、打印机 2.以下软件中, (D 不是操作系统软件。 A . Windows xp B . unix C. linux D . microsoft office 3.用一个字节最多能编出(D 不同的码。 A. 8 个 B. 16个 C. 128个 D. 256 个 4.任何程序都必须加载到(C 中才能被CPU 执行。 A. 磁盘 B. 硬盘 C. 内存 D. 外存 5.下列设备中,属于输出设备的是(A 。 A .显示器 B . 键盘 C .鼠标 D .手字板 6.计算机信息计量单位中的K代表(B。 A. 102 B. 210 C. 103 D. 28 7.RAM 代表的是(C 。 A. 只读存储器 B. 高速缓存器 C. 随机存储器 D. 软盘存储器

8.组成计算机的CPU 的两大部件是(A A .运算器和控制器B. 控制器和寄存器C .运算器和内存D. 控制器和内存 9.在描述信息传输中bps表示的是(D。 A .每秒传输的字节数 B .每秒传输的指令数 C .每秒传输的字数 D .每秒传输的位数 10.微型计算机的内存容量主要指(A 的容量。 A. RAM B. ROM C. CMOS D. Cache 11.十进制数27对应的二进制数为( D 。 A . 1011 B. 1100 C. 10111 D. 11011 12.Windows 的目录结构采用的是(A 。 A?树形结构B.线形结构C .层次结构D .网状结构 13.将回收站中的文件还原时,被还原的文件将回到(D 。 A .桌面上 B . “我的文档”中 C .内存中 D .被删除的位置 14.在Windows 的窗口菜单中, 若某命令项后面有向右的黑三角, 则表示该命令项(A 。A .有下级子菜单B .单击鼠标可直接执行 C .双击鼠标可直接执行 D .右击鼠标可直接执行 15.计算机的三类总线中,不包括(C。 A?控制总线B.地址总线C.传输总线D.数据总线 16.操作系统按其功能关系分为系统层、管理层和(D 三个层次 A .数据层B.逻辑层C.用户层D.应用层

本科C语言期末考试复习做完必过试题(含答案和解析)

本科C语言期末复习做完必过试题(含解答和解析) 题型一:单项选择题 (1) 题型二:读程序 (9) 题型三:程序填写 (42) 题型四:程序改错 (46) 题型五:编程题 (50)

题型一:单项选择题 1.C语言中的简单数据类型包括(D)。 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 考点:标识符的命名规则 (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中“+”不满足;选项D中的标识符以数字开头不满足 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 为关键字,不满足(3) 9.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 10.在C语言程序中,表达式5%2的结果是C。

大一C语言期末考试试题

6.以下程序的输出结果为(D)。 main( ) { char c; int i; for(i=65;i<68;i++) { c=i+32; switch(c) { case ‘a’:printf("%c,",c);break; case ‘b’:case ‘e’:printf("ok,"); default: printf("end"); } } } A a,ok,end B a,ok,endend C a,ok,end,end D a,ok,ok 9.以下程序的输出结果为(B)。 #define A 3 #define B(a) (A+1)*a main() { int x; x=3*A+B(7); printf("x=%d\n",x); } A x=93 B x=37 C x=60 D x=90 三写出下列程序的运行结果(10分,每小题2分) 1.main( ) { char c1=‘A’,c2=‘\144’,c3=‘\x44’,c=0xf5,x=13,a; int i=0122,j=0xa4; printf(“c1=%c,c4=%c\tc5=%c\n”,c1,c2,c3); printf(“%d,%d\n”,i,j); i=-34; j=20; printf(“%d,%d,%d\n”,i%j,i&j<<2,sizeof(j)); printf(“c=%d\n”,c|x); a=c^x<<2;

printf(“a=%d\n”,a); } 2.main() { int x,y=1,z=10; if(y!=0) x=5; printf(“x=%d\t”,x); x=1; if(z<0) if(y>0) x=3; else x=5; printf(“x=%d\n”,x); if(z=y<0) x=3; else if(y==0) x=5; else x=7; printf(“x=%d\t”,x); printf(“z=%d\n”,z); } 3.main( ) { char s[20]=“I like it.”,t[20]=“Are you?”,c[20]; int i=0; while(s[++i]!=‘\0’) t[i]=s[i]; t[i]=0; printf(“string s:%s\n”,s); printf(“string t:%s\n”,t); } 4.int i=5; main( ) { int i=3; { int i=10; i++; printf(“%d\n”,i);

大学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语言期末考试全部知识点复习

C语言知识点复习资料 考试就是难得得训练自己得机会,在特定得时间、特定得地点、特定得气氛下,您需要调动各方面得能力。而在每一次考试中,我都下意识地应用自己摸索出来得“目标控制法”,做到了每次考试有有收获与进步。每次考试前,我都会在一张白纸上写满通过本次考试要达到得目标:要注意克服哪些易犯得错误,尤其就是要克服前几次考试中暴露出来得共性得失误;要积累哪些经验,应用哪些技巧,比如选择题中得特征值法;要在多长得时间内完成卷面各部分,比如,争取35分钟内完成数学试卷中得选择题与填空题;要培养锻炼哪些考试应试得心理素质等。 也就就是说,我们要把考试瞧成就是一个完整得流程,包括考前准备、考场发挥与考后调整三个阶段。同学中存在得误区往往就是只注意考前得准备与考场得发挥两个阶段,对考后调整注意不够。事实上,高考之前得每一次模拟考试,最重要得就就是考试后得总结与反思,只有这样,才能认识到自己得薄弱环节,不断提高考试能力。所以,有心得同学一定要注意做好健全得考后调整,不断提高自己得实力。 总体上必须清楚得: 1.程序中基本得控制结构就是三种: 顺序结构、选择结构(分支结构)、循环结构。 2.读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3.计算机得数据在电脑中保存就是以二进制得形式、数据存放得位置就就是它得地址、 4.bit就是位就是指为0 或者1。 byte 就是指字节, 一个字节 = 八个位、5、编译预处理不就是C语言得一部分,不占运行时间,不要加分号。(常考!) #define PI 3、1415926; 这个写法就是错误得,一定不能出现分号。 6、每个C语言程序中main函数就是有且只有一个。 7、用C语言编写得程序称为源程序,扩展名就是、c。C程序必须经过编辑、 编译、链接、运行四个步骤才可得到运行结果。注意、c与、obj文件时无法运行得,只有、exe文件才可以运行。(常考!) 8、 C语言书写格式就是自由得,每行可以写多个语句,一条语句也可以写在多行。 9、一个C语言程序有且只有一个main函数,就是程序运行得起点。

大学大一C语言程序设计期末考试试卷和答案

四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试 C 语言程序设计试卷 试卷A 答卷说明: 1、 本试卷共6页,答题纸3页,4个大题,35个小题,满分100 分,120分钟完卷。 2、 闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上 答案为准。 3、 本试卷适用于2011级1、2、3班。 一、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的 序号填在题干的括号内。每小题1分,共20分) 1、 在C 语言中,下列标识符中合法的是( ) A). -int B). in1_3 C). A_B!D D). const 2、 不属于C 语言基本数据类型的是( ) A). int B). union C). char D). unsigned 3、 下面是对宏定义的描述。不正确的是( ) A). 宏不存在类型问题,宏名无类型,它的参数也无类型 B). 宏替换不占用运行时间 C). 宏替换只是字符串的简单替代 D). 宏替换时先检查类型,类型一致时才可以替换 4、 C 语言中,″\\xfds ″在内存中占用的字节数是( ) __________________学院__________级___________班 姓名_______________ 学号_______________ ………………………………(密)………………………………(封)………………………………(线)……………………………… 密 封 线 内 答 题 无 效

A).3 B).4C).5D).6 5、设int x;则执行printf(″%x\n″,~x^x);的结果是() A). ffffffff B). ff C).0D). 1 6、对于while语句,错误的说法是() A).用条件控制循环体的执行次数B).循环体至少要执行一次 C).循环体有可能一次也不执行D).循环体中可以包含若干条语句 7、执行下列语句后输出的结果是() int a=8,b=7,c=6; if(ac){a=c;c=b;} printf("%d,%d,%d\n",a,b,c); A).6,7,7B).6,7,8C).8,7,6D).8,7,8 8、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是() A).9,19B).9,20C).10,19D).10,20 9、设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么() A).x数组的长度等于y数组的长度B).x数组的长度大于y数组的长度 C).x数组的长度少于y数组的长度D).x数组与y数组的存储区域相同 10、设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是() for(i=0;i<3;i++) printf(″%d″,x[i][2-i]); A).147B).159C).357D).369 11、执行完下列语句后,n的值是() int n; for (n=0 ; n<100 ; n=2*n+1); A).125B).126 C).127D).128 12、有以下语句:int a=6;a+=a-=a*a;printf(“%d”,a);输出结果() A).–132 B).–60 C). -24 D). 0 13、为了连接两个字符串s1与s2,应当使用() A). strcat( s1,s2 ) B). strcpy( s1, s2 ) C). strlen( s1, s2 ) D). strcmp( s1, s2 ) 14、设int a,*p;则语句p=&a;中的运算符“&”的含义是() A).位与运算B).逻辑与运算C).取指针内容D).取变量地址 15、下面输出的结果为() i nt a=13, b=64; printf(“%d\n”, !a || (b>>3) );

C语言期末考试复习材料.doc

1.以下关于算法的描述不正确的是—B。 A.任何一个问题,它的实现算法是唯一的 B.描述算法常用的表达工具有流程图、N-S图、PAD图、伪码等 C.算法的最终实现是计算机程序 D.正确性和清晰易憧性是一个好算法的基本条件 2.下面是一个加法程序,指出存在的逻辑错误和语法错误。 /*求整数a和b的和*/ Int main() { int a, b; a=8; b=2000; print ("%d\n〃, a+b); } 3.在每个C程序中都必须包含有这样一个函数,该函数的函数名为—A_ A.main B. MAIN C. name D. function 4.以下叙述不正确的是—A o A.C程序书写格式规定,一行内只能写一个语旬 B.main()函数后面有一对花括号,花括号内的部分称为函数体 C.—个C程序必须有main。函数 D.C规定函数内的每个语句以分号结束 5.以下各标识符中,合法的用户标识符为_B o A.A#C B. mystery C. main D. ab* 6.己知求解某问题的算法如下: ⑴输入a、b、c三个数。 ⑵ 将a和b比较,较大者放在a中,小者放在b中。 (3)将a和c比较,较大者放在a中,小者放在c中。 (4)将b和c比较,较大者放在b中,小者放在c中。 (5)依次输出a、b、Co 请根据上述算法描述,把算法的功能表达出来。 【答案】把任意输入的三个数a、b、c按降序排列的顺序输出。 7.一个C语言程序可以包括多个函数,程序总是按照如下A 一所描述的方式执 行当前的程序。 A.从木程序的mainO函数开始,到木程序文件的最后一个函数结束。 B.从木程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C.从main。函数开始,到main()函数结束。 D.从本程序文件的第一个函数开始,到本程序main。函数结束。 8.以下叙述正确的是__D o A.在C程序中,main ()函数必须位于程序的最前面。 R. C程序的每行中只能写一条语句。 C.在对一个C程序进行编译的过程中,可发现注释中的拼写错误。 D?C语言木身没有输入输出语句。

大一c语言期末考试题

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

大学计算机基础试题及答案(完整版)

大学计算机基础模拟题 一、单选题 1、完整的计算机系统由(C)组成。 A、运算器、控制器、存储器、输入设备和输出设备 B、主机和外部设备 C、硬件系统和软件系统 D、主机箱、显示器、键盘、鼠标、打印机 2、以下软件中,(D)不是操作系统软件。 A、Windowsxp B、unix C、linux D、microsoft office 3、用一个字节最多能编出(D)不同的码。 A. 8个 B. 16个 C. 128个 D. 256个 4、任何程序都必须加载到(C)中才能被CPU执行。 A. 磁盘 B. 硬盘 C. 内存 D. 外存 5、下列设备中,属于输出设备的是(A)。 A、显示器 B、键盘 C、鼠标 D、手字板 6、计算机信息计量单位中的K代表(B)。 A. 102 B. 210 C. 103 D. 28 7、RAM代表的是(C)。

A. 只读存储器 B. 高速缓存器 C. 随机存储器 D. 软盘存储器 8、组成计算机的CPU的两大部件是(A)。 A、运算器和控制器 B. 控制器和寄存器 C、运算器和内存 D. 控制器和内存 9、在描述信息传输中bps表示的是(D)。 A、每秒传输的字节数 B、每秒传输的指令数 C、每秒传输的字数 D、每秒传输的位数 10、微型计算机的内存容量主要指(A )的容量。 A.RAM B.ROM C.CMOS D.Cache 11、十进制数27对应的二进制数为( D )。 A.1011 B. 1100 C. 10111 D. 11011 12、Windows的目录结构采用的是(A)。 A、树形结构 B、线形结构 C、层次结构 D、网状结构 13、将回收站中的文件还原时,被还原的文件将回到(D)。 A、桌面上 B、“我的文档”中 C、内存中 D、被删除的位置

江苏大学大一c语言期末复习题汇总

选择题 1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D.A.dat 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=1-.le-1; B.double b=1+5e2.5; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s) 14.已知x=45, y=’a’, z=0; 则表达式(x>=z && y<’z’ || !y)的值是()。 A.0 B.语法错 C.1 D.“假”

大一上学期C语言期末复习总结和模拟试题带答案

易错点 C语言中易犯的错误 对初学C语言的人来说,经常会出一些连自己都不知道错在哪里的错误.看着有错的程序,不知该如何改起,一些C编程时常犯的错误,写给各位学员以供参考. ******************************** ******************************** ************************ 1.书写标识符时,忽略了大小写字母的区别. main() { int a=5; printf("%d",A); } 编译程序把a和A认为是两个不同的变量名,而显示出错信息. C认为大写字母和小写字母是两个不同的字符.习惯上,符号常量 名用大写,变量名用小写表示,以增加可读性. ******************************** ******************************** ************************ 2.忽略了变量的类型,进行了不合法的运算. main() { float a,b; printf("%d",a%b); } %是求余运算,得到a/b的整余数.整型变量a和b可以进行求余运算,而实型变量则不允许进行"求余"运算. ******************************** ******************************** ************************ 3.将字符常量与字符串常量混淆. char c; c="a"; 在这里就混淆了字符常量与字符串常量,字符常量是由一对单 引号括起来的单个字符,字符串常量是一对双引号括起来的字符序 列.C规定以"\"作字符串结束标志,它是由系统自动加上的,所 以字符串"a"实际上包含两个字符:'a'和'\',而把它赋给一 个字符变量是不行的. ******************************** ******************************** ************************ 4.忽略了"="与"=="的区别. 在许多高级语言中,用"="符号作为关系运算符"等于". 如在BASIC程序中可以写 if (a=3) then … 但C语言中,"="是赋值运算符,"=="是关系运算符.如: if (a==3) a=b; 前者是进行比较,a是否和3相等,后

《大学计算机基础》试题题库及答案

《大学计算机基础》试题题库及答案 一、单选题练习 1.完整的计算机系统由( C )组成。 A.运算器、控制器、存储器、输入设备和输出设备 B.主机和外部设备 C.硬件系统和软件系统 D.主机箱、显示器、键盘、鼠标、打印机 2.以下软件中,( D )不是操作系统软件。 A.Windows xp B.unix C.linux D.microsoft office 3.用一个字节最多能编出( D )不同的码。 A. 8个 B. 16个 C. 128个 D. 256个 4.任何程序都必须加载到( C )中才能被CPU执行。 A. 磁盘 B. 硬盘 C. 内存 D. 外存 5.下列设备中,属于输出设备的是( A )。 A.显示器 B.键盘 C.鼠标 D.手字板6.计算机信息计量单位中的K代表( B )。 A. 102 B. 210 C. 103 D. 28 7.RAM代表的是( C )。 A. 只读存储器 B. 高速缓存器 C. 随机存储器 D. 软盘存储器 8.组成计算机的CPU的两大部件是( A )。 A.运算器和控制器 B. 控制器和寄存器 C.运算器和内存 D. 控制器和内存 9.在描述信息传输中bps表示的是( D )。 A.每秒传输的字节数 B.每秒传输的指令数 C.每秒传输的字数 D.每秒传输的位数 10.微型计算机的内存容量主要指( A )的容量。 A. RAM B. ROM C. CMOS D. Cache 11.十进制数27对应的二进制数为( D )。 A.1011 B. 1100 C. 10111 D. 11011 12.Windows的目录结构采用的是( A )。 A.树形结构 B.线形结构 C.层次结构 D.网状结构13.将回收站中的文件还原时,被还原的文件将回到( D )。 A.桌面上 B.“我的文档”中 C.内存中 D.被删除的位置14.在Windows 的窗口菜单中,若某命令项后面有向右的黑三角,则表示该命

c语言期末考试练习题1(含答案)

一、单项选择题(6小题,每小题3分,共18分) 1、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是 A、extern B、register C、auto D、static 2、下面4个选项中,是合法转义字符的选项是( )。 A、'\" B、'\' C、'\018' D、'\\0' '\\' '\017' '\f' '\101' '\n' '\''' 'xab' 'x1f' 3、下面4个选项中,是正确的八进制数或十六进制数的选项是( )。 A、–10 B、0abc C、0010 D、0a12 0x8f –017 –0x11 – –011 0xc 0xf1 –0xa 4、以下在任何情况下计算平方数时都不会引起二义性的宏定义是( ) A、# define POWER(x) □□x * x B、# define POWER(x) □□(x) * (x) C、# define POWER(x) □□(x * x) D、# define POWER(x) □□((x) * (x)) 5、以下程序段( ) x= –1; do { x=x*x;} while (!x); A、是死循环 B、循环执行二次 C、循环执行一次 D、有语法错误 6、下面程序的运行结果是( ) # include int main( ) { int i,j,x=0; for (i=0;i<2;i++) { x++; for(j=0;j<=3;j++) { if (j%2) continue; x++; } x++; } printf ("x= %d \n",x); return 0; } A、x=4 B、x=8 C、x=6 D、x=12 二、填空题(7小题,每小题3分,共22分) 1、下面程序段的运行结果是( )。 char ch[ ]=''600";int a,s=0;

大学计算机基础试题及答案完整版

大学计算机基础试题及答案(完整版) 一、单选题 1、完整的计算机系统由(C)组成。 A、运算器、控制器、存储器、输入设备和输出设备 B、主机和外部设备 C、硬件系统和软件系统 D、主机箱、显示器、键盘、鼠标、打印机 2、以下软件中,(D)不是操作系统软件。 A、Windowsxp B、unix C、linux D、microsoft office 3、用一个字节最多能编出(D)不同的码。 A. 8个 B. 16个 C. 128个 D. 256个 4、任何程序都必须加载到(C)中才能被CPU执行。 A. 磁盘 B. 硬盘 C. 内存 D. 外存 5、下列设备中,属于输出设备的是(A)。 A、显示器 B、键盘 C、鼠标 D、手字板 6、计算机信息计量单位中的K代表(B)。 A. 102 B. 210 C. 103 D. 28

7、RAM代表的是(C)。 A. 只读存储器 B. 高速缓存器 C. 随机存储器 D. 软盘存储器 8、组成计算机的CPU的两大部件是(A)。 A、运算器和控制器 B. 控制器和寄存器 C、运算器和内存 D. 控制器和内存 9、在描述信息传输中bps表示的是(D)。 A、每秒传输的字节数 B、每秒传输的指令数 C、每秒传输的字数 D、每秒传输的位数 10、微型计算机的内存容量主要指(A)的容量。 A.RAM B.ROM C.CMOS D.Cache 11、十进制数27对应的二进制数为( D)。 A.1011 B. 1100 C. 10111 D. 11011 12、Windows的目录结构采用的是(A)。 A、树形结构 B、线形结构 C、层次结构 D、网状结构 13、将回收站中的文件还原时,被还原的文件将回到(D)。 A、桌面上 B、“我的文档”中 C、内存中 D、被删除的位置 14、在Windows 的窗口菜单中,若某命令项后面有向右的黑三角,则表示该命令项(A)。 A、有下级子菜单 B、单击鼠标可直接执 C、双击鼠标可直接执行 D、右击鼠标可直接执行

上海海事大学(C语言期末)上机题库

试卷编号:9688 所属语言:C语言 试卷方案:期中考试 试卷总分:100分 共有题型:5种 一、填空共15题(共计15分) 第1题(1.0分)题号:528 设a、b、c为整型数, 且a=2、b=3、c=4, 则执行完以下语句: a*=16+(b++)-(++c); 后,a的值是【1】. 答案: =======(答案1)======= 28 第2题(1.0分)题号:78 已知 i=5;写出语句 i+=012; 执行后整型变量 i 的十进制值是【1】. 答案: =======(答案1)======= 15 第3题(1.0分)题号:510 若a是int型变量,则计算表达式 a=25/3%3 后a的值为【1】. 答案: =======(答案1)======= 2 第4题(1.0分)题号:437 以下程序的输出结果为【1】, #include "stdio.h" main(){int a=010,j=10;printf("%d,%d\n",++a,j--);}

答案: =======(答案1)======= 9,10 第5题(1.0分)题号:431 执行下面两个语句,输出的结果是【1】,char c1=97,c2=98;printf("%d %c",c1,c2); 答案: =======(答案1)======= 97 b *第6题(1.0分)题号:293 getchar()函数只能接收一个【1】. 答案: =======(答案1)======= 字符 第7题(1.0分)题号:440 设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为【1】. 答案: =======(答案1)======= 1 第8题(1.0分)题号:95 已知a=13,b=6, a&&b的十进制数值为【1】. 答案: =======(答案1)======= 1 第9题(1.0分)题号:306 当a=1,b=2,c=3时,执行以下程序段后b=【1】.

相关主题
文本预览
相关文档 最新文档