文档视界 最新最全的文档下载
当前位置:文档视界 › 计算机基础与程序设计复习参考题及答案

计算机基础与程序设计复习参考题及答案

计算机基础与程序设计复习参考题及答案
计算机基础与程序设计复习参考题及答案

助学指导书

高等教育自学考试

《计算机基础与程序设计》

复习参考题

郑州大学土木工程学院

2010年11月

第一章计算机及程序设计基础知识

一、单项选择题

1.一个完整的计算机系统应该包括(D)

A.主机和外设B.主机和操作系统

C.硬件系统和系统软件D.硬件系统和软件系统

2.在计算机中, 指令通常是由(A)

A .操作码、操作数组成

B .源操作数、目标操作数组成

C .反码、补码组成

D .直接寻址、目的寻址组成

3.下列设备中属于输出设备的是(D)

A .扫描仪

B .键盘

C .鼠标

D .显示器

4.整数-2在机器内存中的表示是(B)

A .010

B .110

C .1101

D .111

5.如果文件存储的是数据在内存中存放的字节形式, 则该文件是(C)

A .ASCII 文件

B .文本文件

C .二进制文件

D .设备文件

6.下列软件中属于应用软件的是( C )

A. Ms-Dos

B. Windows2000

C. WPS2000 字处理软件

D. C 语言处理程序

7. 在计算机硬件设备中能用作输入设备是( B )

A. 显示器

B. 键盘

C. 绘图仪

D. 打印机

8. 在Dos系统中可以用文件扩展名表示文件类型,其中批处理文件的扩展名是(C)

A. .OBJ

B. .C

C. .BAT

D. .BAK

9.具有只读功能的内存储器是指(A)

A .ROM

B .RAM

C .硬盘

D .CD-ROM

10. 存储量1MB 等于(C)

字节字节字节字节

11. 下面数据中最小数是(A)

A.2

B.8

C.10

D.16

12. CPU处理数据和指令的基本单位是字(Word),一个字的字长是(D)

A. 8bits

B. 16bits

C. 32bits

D. 与CPU数据总线有关的bit位数

13. 与十进制1100等值的十六进制数是( B )

A. 44A

B. 44C

C. 54A

D. 54C

14. 与二进制数等值的十进制数是(C)

是(D)

A. 单用户、单任务的操作系统

B. 单用户、多任务的操作系统

C. 多用户、单任务的操作系统

D. 多用户、多任务的操作系统

16. 一个二进制数位也称为一个(D)

17.( B )是用助记符来表示指令的符号语言。

A.机器语言?????

B.汇编语言

C.高级语言?????

D.语言处理程序

的原码是(??A? )

A.?????

B. ?????

19. 若当前路径为C 盘TC 子目录,仅将A 盘根目录下的文件名第3 个字符为P ,扩展名为 C 的所有文件复制到 C 盘TC 子目录下,一定成功的命令是( C ) 。

A :\*P*.C A:\??P*.C C:

A:\??P*.C ??P*.C C:\TC

20.按冯诺依曼的设计思想,计算机采用的数制是( A )

A.二进制

B.八进制

C.十进制

D.十六进制

21. 计算机能够自动按照人们的意图进行工作的最基本思想是( B )

A. 采用逻辑部件

B. 存储程序和数据

C. 控制代码

D. 总结结构

22. 磁盘处于写保护状态,那么磁盘中的数据(B )

A) 不能读出,不能删改,也不能写入新数据

B) 可以读出,不能删改,也不能写入新数据

C) 可以读出,可以删改,但不能写入新数据

D) 可以读出,不能删改,但可以写入新数据

23. 应用软件系统TH的总容量大约1MB,其主要程序文件存放在C:\TH目录中,而数据文件存放在C:\TH\DATA目录中,如果将它们完整地复制到A盘, 应该使用的命令是( B )

A) XCOPY C:\TH A:\ B) XCOPY C:\TH A:\ /S

C) XCOPY C:\TH A:\ /M D) XCOPY C:\TH A:\ /P

24. ?所谓“裸机“是指(C )

A)单片机B)单板机

C)不装备任何软件的D)只装备操作系统的

25. 算法中,对需要执行的每一步操作,必须给出清楚、严格的规定,这属于算法的( C ) A)正当性B)可行性C)确定性D)有穷性

二、多项选择题

1.存储在下列哪些设备中的信息可以长期保存? (BCDE)

A .RAM

B .ROM

C .硬盘

D .软盘

E .光盘

2.下列设备中属于外存储设备的有(BCDE)

A .RAM

B .光盘

C .硬盘

D .软盘

E .磁带

3. 微机系统的主机包含的部件有(BDE )

A. 输入设备

B. 存储器

C. 输出设备

D. 运算器

E. 控制器

4. 总线是连接微机CPU、内存和外设之间传送信号的公共通道,微机的总线包括有(BCD )

A. 电源线

B. 数据线

C. 地址线

D. 控制线

E. 网络线

5. 下面哪些软件属于操作系统范畴( ADE ) 。

C

6. 下面哪些是组成MS — DOS 操作系统的模块( ABCE )

C

7. 与十进制141 等值的数是( ACD )

A.()2

B.()2

C.(215)8

D.(8D)16

E.(8E)16

8.?X*.C可以代表的文件是(ADE )

A、B、C、D、E、

三、填空题

1. 计算机的硬件由五部分组成,它们分别是输入设备、输出设备、存储器、运算器和控制器。

2. 微型的性能主要取决于CPU 。

3. 一片存储容量是的软磁盘,可以存储大约140万个_ 字节(byte)__。

4. 在MS-DOS环境中同时按下[Ctrl]和[Break]两个键,其作用是__中断程序运行__。

第二章关于C语言程序的基本知识

一、选择题

1.下列转义字符中,表示回车的是(B)

A.\0 B.\n C.\r D.\f

2.若定义double d;则d在内存中分配的字节数是(D)

A.1个B.2个C.4个D.8个

3. 如果a=5,b=2,c=3,d=4 ,则表达式a>b? a:c>d? c:d 的值是( C )

A. 8

B. 9

C. 10

D. 7

4.C 语言源程序的基本单位是(D)

A .过程B.函数 C .子程序 D .语句

5. 在Turbo C 中,寻求在线帮助可按键(A)

6. 设有int a =3, b=-4, c=0 ;表达式((a>b)?a:b )&&c<0 的值是(B)

7. 退出Turbo C 返回系统,在主菜单File项中可选择(D )

A. Load

B. New

C. Save

D. Quit

8. 在Turbo 中,若定义unsigned int a ;则变量 a 在内存中分配的字节数是( B )

个个个个

9.下面四个选项中,均是合法整型常量的选项是(?? A ? )。

???-0xffff???011???01a????0xe

???986,012 ??0668 D. -0x48a??2e5????0x

10. 在C 程序中,main 函数的位置是( C ) 。

A. 必须作为第一个函数

B. 必须作为最后一个函数

C. 可以放在任意位置

D. 必须放在它所调用的函数之后

11. 如果a=5,b=2,c=3,d=4 ,则表达式a>b? a:c>d? c:d 的值是( D ) 。

12. 在C 程序中,设一表达式中包含有int, long, char 和unsigned 类型的变量和

数据,这四种类型数据的转换规则是( C ) 。

→ unsigned → long → char →int → long → unsigned

→ int → unsigned → long → char → unsigned → long

13. 设有说明:int a=11, b=10 ;执行表达式a%=b+(a&&b) 后,a 的值为( A ) 。

14.下面哪一个是合法的指数型实数( C )

A.%d +b

15.以下使i的运算结果为4的表达式是( D )

i=0,j=0;(i=3,(j++)+i); i=1,j=0;j=i=(i=3)*2);

i=0,j=1;(j==1)?(i=1):(i=3); i=1,j=1;i+=j+=2;

16.字符串常数"CHINA"在内存中存储时占的字节数是( B )

A、5个

B、6个

C、7个

D、8个

17.设有int p,q;以下不正确的语句是( D )

A、p*=3

B、p/=q

C、p+=3

D、p&&=q

18.以下不正确的C语言标识符是( D )。(题目为:简述标识符的命名规则)

A. ABC

B. abc

C. a_bc

D.

19、下面关于运算符优先顺序的描述中正确的是( C )

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

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

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

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

20、下列叙述中正确的是( D )

A)C语言中既有逻辑类型也有集合类型

B)C语言中没有逻辑类型但有集合类型

C)C语言中有逻辑类型但没有集合类型

D) C语言中既没有逻辑类型也没有集合类型

21.已知int i,a; 执行语句”i=(a=2*3,a*5),a+6;”后,变量a的值是( A )。

A. 6

B. 12

C. 30

D. 36

22.不能进行++和--运算的数据类型是( B )。

A. 指针

B. double

C. int

D. long

23. 下列叙述中错误的是( D ) 【2007计算机等级考试】

A)计算机不能直接执行用C语言编写的源程序

B)C程序经编译程序编译后,生成后缀为.obj的文件是一个二进制文件

C)后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件

D)后缀为.obj和.exe的二进制文件都可以直接运行

24. 对于一个正常运行的C程序,以下叙述中正确的是( A )

A)程序的执行总是从main函数开始,在main函数结束p23

B)程序的执行总是从程序的第一个函数开始,在main函数结束

C)程序的执行总是从main函数开始,在程序的最后一个函数中结束

D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束

25 以下合法的字符型常量是( AD )

A)”\x13”B)”\018” C)”65” D)”\n”

26. C程序在作逻辑运算时判断操作数真、假的表述中,正确的是(A)

为假,非0为真??????B.只有1为真

为假,1为真?????? 为真,非0为假

二、多项选择题

1.设a=1,b=3,c=0 ;下面表达式的值为1 的有(ABCE)

A .!a&&b| |a&&(c+1)

B .a -b+3

C .(a>b)==c

D .(a=0)&&(b=10)

E .b>a&&a>c

2.若有int x;float y;指出下面结果为整型数的表达式(ACD )p41

A、(int)(x+y)

B、(int)x+y

C、'a'+x

D、x+(int)y

E、x*y

三、填空题

1.C语言中基本数据类型包括___整型、实型、字符型____。P26

2. 初始化值是的双精度变量a的定义形式为__double a=。

3. 表达式a = 1,a + 1,a + + 的值是____1____。

4. 已知x、y分别为a、b、c中的最大、最小值,求a、b、c中间值的表达式为__b>y&&x>b__。

5. C 语言程序由main( ) 函数开始执行,应在__ main( )__ 函数中结束。

6. 条件“22 && x<3)||(x<-10)_。

7. C语言中实型变量分为两种类型:__单精度__和__双精度__。

第三章C的基本语句及顺序结构程序设计

一、选择题

1.如果int i = 3, 则printf("%d", -i++ )的输出结果及i的值是( A )。

A) -3 4 B) -4 4

C) -4 3 D) -3 3

2.在printf语句中,格式说明符u表示(C)p47

A.以十进制带符号形式输出整数B.以十六进制带符号形式输出整数

C.以十进制无符号形式输出整数D.以十六进制无符号形式输出整数

3. 设char x =′a′;则printf(″x = ﹪c,y = ﹪c \ n″,x,97);的输出是(D)

A. x = a,y = 97

B. x = 97,y = a

C. x = 97,y = 97

D. x = a,y = a

4. 在文件使用方式中,字符串″rb″表示(A)p195

A. 打开一个已存在的二进制文件,只能读取数据

B. 打开一个文本文件,只能写入数据

C. 打开一个已存在的文本文件,只能读取数据

D. 打开一个二进制文件,只能写入数据

5. 设变量均已正确定义,若要通过scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)( D )即10和X间不能用空格来区分p50

A. 10□X□20□Y〈回车〉

B. 10□X20□Y〈回车〉

C. 10□X〈回车〉

D. 10X〈回车〉

6. 若有代数式(其中e仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C语言表达式是( C )

A. sqrt(abs(n^x+e^x))

B. sqrt(fabs(pow(n,x)+pow(x,e)))

C. sqrt(fabs(pow(n,x)+exp(x)))

D. sqrt(fabs(pow(x,n)+exp(x)))

7. 有以下程序,其中%u表示按无符号整数输出

main()

{unsigned int x=0xFFFF; /* x的初值为十六进制数*/

printf(“%u\n”,x);

程序运行后的输出结果是( B )

A. -1

B. 65535

C. 32767

D. 0xFFFF

8. 执行下列语句printf(“%d”,’a’=?=’A’)后输出为(C)

A. 1

B. 语法错

C. 0

D. 97

9 .下列程序段的输出结果是(B)

void main(void)

{

int y=1,x=5;

if(x<0) y=-1;

if(x>=0) y=0;

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

}

A .-1

B .0

C .1

D .5

10.若有下列程序段,欲使a=2 ,b=3 ,对应正确的数据输入方法是(其中 表示换行)(D)

int a,b

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

A .2

B .a=2 b=33

C .a=2 ,b=3

D .2 ,3

11 以下程序的输出结果是( )结果为:10,22,16

main()

{int i=012,j=22,k=0x10;

printf( “ %d,%d,%d \ n ” ,i,j,k);

}

A. 12 ,22 ,10

B. 10 ,22 ,10

12. 以下程序的输出结果是( C )

main()

{ int a=10;

a>10? a--:a++;

a+=a;

printf(″%d\n″,a);

二、简答题

1. C 语言中的运算符“ = ”与数学中的“ = ”的意义相同吗?为什么?

C语言中“=”表示将等号右边值赋给等式左边变量;数学“=”表示等式两侧数值相等;

2. 简述Turbo C 系统中,在主菜单File下选用Quit命令的作用。

Quit命令是退出Turbo C 系统。

三、阅读分析

1、阅读下面程序,写出运行结果:k=9,i=3

main()

{ int i=3,k;

k=i+i+i;

printf(″k=%d,i=%d″,k,i);

}

2、下面程序段的输出结果是(6)

main( )

{ int s, p;

s=p=5;

p=--s;

p++;++p;

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

}

3、下面程序段的运行结果是( ) 27,15,3

main()

{ int a,b,c;

a=(b=(c=3)*5)*2-3;

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

}

4.以下程序的正确输出结果为()。a=%d,b=%d

main()

int a = 2, c = 5;

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

}

5、要使下面程序的输出语句在屏幕上显示1,2,34

则从键盘上输入的正确数据格式为:()。1234

main()

{

char a,b;

int c;

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

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

}

6、#include <> p49即12+56=68

main()

{

int x, y;

scanf("%2d%*2s%2d", &x, &y);

printf("%d", x+y);

}

程序运行时输入:9↙则程序运行结果是:68。

第四章条件语句与选择结构程序设计

一、单项选择题

1.若有int a=3,b=4,c=5,d=6,x=4;执行下列程序段后x的值是(A)if(a

{

if(c= =d)

x=c;

}

else

x=d++

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

2.关于switch中的表达式,正确的说法是(D)

A.它必须是算术表达式B.它必须是关系表达式

C.它必须是逻辑表达式D.它可以是任意类型的表达式

3.执行如下程序段后,x 的值是(D)

int x=1,y=-1;

if(y<0) x-=y;

else x+=y;

A .-1

B .0

C .1

D .2

4.下面程序的输出结果是(B)

main( )

{

int x=5,y;

if(x>0)

y=1;

y=0;

if(x<0)

y=-1;

printf( "%d ",y);

}

A .-1

B .0

C .1

D .5

5. 关于if 语句下面叙述正确的是(D)

A. 只有当if 语句中表达式的值等于1 时,才执行if 的内嵌语句

B. 只有当if 语句中表达式的值为假时,才执行if 的内嵌语句

C. 只有当if 语句中表达式的值等于0 时,才执行if 的内嵌语句

D. 只要if 语句中表达式的值非0 时,就执行if 的内嵌语句

6. 若执行下面程序时,从键盘输入数据3 和4 ,则程序的输出结果是(C)

main( )

{ int a,b,s;

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

s=a;

if(a

s=s*s;

printf( ″ %d ″ ,s);

}

7. 若运行以下程序段时,从键盘输入2473(表示回车),则下面程序的运行结果是( A )。运行加#include <>

int c;

wh ile ((c=getchar())!=’\n’)

? switch(c-‘2’)

??? {case 0:

??? case 1:putchar(c+4);

??? case 2:putchar(c+4); break;

??? case 3:putchar(c+3);

??? default: putchar(c+2);break;

}

C.

8. 下面程序段的运行结果是( C ) 。

main()

{

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

if(y>x)

if(y>z) s=1;

else s=2;

else s=3;

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

}

9. 两次运行下面程序,如果从键盘上分别输入 6 和 4 ,则程序的输出结果是( C )

main ( )

{int x;

scanf( ″ %d ″ ,&x);

if(x++>5) printf( ″ %d ″ ,x);

else printf( ″ %d\n ″ ,x-1);}

和5 和3 和4和4

10.以下有关switch语句的正确说法是( B )。

A. break语句是语句中必须的一部分

B. 在switch 语句中可以根据需要使用或不使用break语句

C. break语句在switch 语句中不可以使用

D. 在switch 语句中的每一个case都要用break语句

11. 以下if语句语法正确的是( A )。

A. i f(x>0)printf(“%f”,x)?????

B. if(x>0){x=x+y;printf(“%f”,x);}

else printf(“%f”,-x);? ?????? else printf(“%f”,-x);

C. if (x>0) {x=x+y;printf(“%f”,x);};???

D. if(x>0){x=x+y;printf(“%f”,x)}

else printf(“%f”,-x);? ?????? else printf(“%f”,-x);

12. 与语句if(a>b)if(c>d)x = 1;else x = 2;等价的是(C)

题目:设int a=2,b;则执行b=a&&1;语句后,b的结果

A. if(a>b){if(c>d)x = 1;else x = 2;}

B. if(a>b){if(c>d)x = 1;} else x = 2;

C. if((a>b)&& (c>d))x = 1;else x = 2;

二、多项选择题

1 .下列语句中正确的有(CD)

A .if(x>y);

B .if(x=y)&&(x!=0)x+=y;

C .if(x! =y)scanf(“%d,&x);else scanf(“%d”,&y);

D .if(x

E .if(x

2.以下if语句中没有语法错误的有(ACE)

A.if(x>0)printf(″%f″,x);

else printf(″%f″,x);

B.if(x>0){x=x+y;printf(″%f″,x)}

else printf(″%f″,x)

C.if(x>0){x=x+y;printf(″%f″,x);}

else printf(″%f″,x);

D.if(x>0)x=x+y;printf(″%f″,x);

else printf(″%f″,x)

E.if x>y

x++;

else

x--;

三、阅读程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。

1.阅读分析下面程序,请说明程序的功能;然后写出当键盘输入14时,程序的运行结果。no(同时被5和7整除)

main()

{

int x;

scanf(″%d″,&x);

if(x%5= =0 & & x%7= =0)

printf(″yes″);

else

printf(″no″);

}

2. 若分别输入0 和5 时, 请阅读分析下列程序, 然后分别写出两种输入情况下程序的运行结果。0 35

main ( )

{

int x,y;

scanf("%d",&x);

if(x>2&&x<=10)

y=x*(x+2);

else if(x>-1 && x<=2)

y=2*x;

else if(x<-1) y=x-1;

if(y!=-1)

printf("%d",y);

else

printf("error");

}

3. 阅读下面程序,并回答问题:

main( )

{ int a,b,x,y;

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

x=a*a+b*b;

if(x>100)

{y=x/100;printf( ″ %d ″ ,y);}

else printf( ″ %d ″ ,a+b);

}

( 1 )若程序运行时,输入 6 和9 ,输出结果是什么?1

( 2 )说明程序的功能。计算输入两个整数的平方和,如果之和大于100则

输出其整除一百厚的结果,否则输出两个整数之和。

4. 阅读下面程序,并回答问题:

main()

{ int x, y, z, c;

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

if(x

if(x

if(x

printf(″%d, %d, %d″, x, y, z);

}

(1)若程序运行时,输入3、2和5,则输出结果是什么?5,3,2 (2)写出程序所实现的功能。从大到小排序

5. 请阅读分析下面程序,然后写出运行结果。1 5 6 30

main( )

{

int x=156,a,b,c;

if(x>100)

{

a=x/100;

x=x%100;

}

if(x>10)

{

b=x/10;

c=x%10;

}

printf(“%3d%3d%3d%3d”,a, b, c, a*b*c);

}

6. 阅读下列程序,并回答问题:

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++;}

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

请分析该程序的执行过程并写出运行结果。a=2,b=1

四、编程题:

1、已知能被4整除而不能被100整除的或者能被400整除的年份是润年,则判断某一年是否是润年。答案1:教材p65 例题4-9;答案2如下:

main()

{int year;

scanf("%d",&year);

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

printf("%d is a leap year!",year);

else

printf("%d is not a leap year!",year);}

2、是判断一个学生考试成绩及格与否的程序(成绩A,或B,或C者为及格;成绩为D者不及格)。答案1:教材p64例题4-8;答案2如下:

#include <>

main()

{int grade; char chgrade;

printf("please input a score:\n");

scanf("%d",&grade);

switch((int)(grade/10))

{case 10:

case 9: chgrade = 'A'; break;

case 8: chgrade = 'B'; break;

case 7: chgrade = 'C'; break;

case 6: chgrade = 'D'; break;

default:chgrade = 'F';break; }

printf("The performance levels are:%c\n",chgrade);}

相关文档