合工大C语言考试难不难啊,怎样可以考高分啊?是不是有什么C语言标准题库啊??请教下,马上要考试了,,

Python013

合工大C语言考试难不难啊,怎样可以考高分啊?是不是有什么C语言标准题库啊??请教下,马上要考试了,,,第1张

我不是合工大的,但是就C语言来说,平时如果编程量够的话,直接无压力。多上机编程,就不知道你有没有时间?把课本的例题神马的都自己写写代码试试,一来二去就有感觉了。还有就是你们学校的历年考试题狂刷。写完几套卷子及格应该没问题

C 程序设计试题库C语言概述练习题

1.一个C程序的执行是从( )

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

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

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

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

2.以下叙述正确的是:( )

A.在C程序中,main函数必须位于程序的最前面

B.程序的每行中只能写一条语句

C.C语言本身没有输入输出语句

D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误

3.以下叙述不正确的是:( )

A.一个C源程序可由一个或多个函数组成

B.一个C源程序必须包含一个main函数

C.C程序的基本组成单位是函数

D.在C程序中,注释说明只能位于一条语句的后面

4.C语言规定:在一个源程序中,main的位置( )

A.必须在最开始

B.必须在系统调用的库函数后面

C.可以任意

D.必须在最后

5.一个C语言程序是由( )

A.一个主程序和若干子程序组成

B.函数组成

C.若干过程组成

D.若干子程序组成

6.C源程序的基本单位是____________

7.一个C源程序中至少包括一个____________

8.在一个C源程序中,注释部分两侧的分界符分别为____________ 和____________

9.在C语言中,输入操作是由库函数____________ 完成的,输出操作是由库函数____________ 完成的

c语言模拟练习题

一、 判断题(2×8=16分)

1、Printf()函数总是从新行的起始位置开始打印。 ( )

2、所有的变量在使用前都必须予以申明。( )

3、在申明变量时必须给出变量的类型。( )

4、C语言认为变量number和NuMbEr是相同的。( )

5、打印三行输出的C语言程序必须用三条printf语句。( )

6、求余运算符%只能用于两个整数操作数。( )

7、switch选择结构中必须有default子句。( )

8、如果x>y或a<b为真,那么表达式(x>y&&a<b)为真。( )

二、 选择题(3×16=48分)

1、下面实现换行功能的格式符为 。( )

A. \t B. \n C. \a D. \k

2. C语言程序由什么组成?(单选)

A. 子程序 B. 主程序和子程序 C. 函数 D. 过程

3. 下面哪个表达式的值为4.

A. 11/3 B. 11.0/3

C. (float)11/3 D. (int)(11.0/3+0.5)

4. 该源程序执行后,屏幕上显示什么?

void main()

{

int a

float b

a=4

b=9.5

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

}

A. a=%d,b=%f\n B. a=%d,b=%f

C. a=4,b=9.50 D. a=4,b=9.5

5. 若有以下说明语句:

char s='\\\092'

则下面哪一项是正确的.

A. 使s的值包含2个字符 B. 说明语句不合法

C. 使s的值包含6个字符 D. 使s的值包含4个字符

6.若k,g均为int型变量,则以下语句的输出为哪一项?

int k,g

k=017

g=111

printf("%d,",k)

printf("%x\n",g)

A. 15,6f B. f,6f C. f,111 D. 15,111

7. 在C语言的if语句中,用作判断的表达式为___。

A. 关系表达式 B. 逻辑表达式

C. 算术表达式 D. 任意表达式

8. 请问:下面这个程序段的输出是什么?

int a,b,c

a=7b=8c=9

if(a>b)

a=b,b=cc=a

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

A. a=7 b=8 c=7 B. a=7 b=9 c=7

C. a=8 b=9 c=7 D. a=8 b=9 c=8

9. 下面这个程序的输出是什么?

#include <stdio.h>

main()

{

int y=10

while(y--)

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

}

A. y=0 B. while构成死循环 C. y=1 D. y=-1

10. 若有以下说明和语句,则输出结果是___。

char str[]="\"c:\\abc.dat\""

printf("%s",str)

A. 字符串中有非法字符 B. \"c:\\abc.dat\"

C. "c:\abc.dat" D. "c:\\abc.dat"

11. 如果要把常量327存入变量a中,a不能定义成哪些类型?

A. int B. char C. long D. float

12. C语言中,预处理总是以 符号开头。 ( )

A. ¥ B.# C. @ D. ◇

13. C语言中,double类型的数据占 个字节的空间。( )

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

14. 下面语句执行完后,b的值为 。 ( )

int a=b=10

b=10+(a++)

A. 10 B.19 C. 20 D. 21

15. 这段程序中的常量有: (多选) ( )

#define PI 3.14

void main()

{

int sum

sum = 10 + 15

printf("sum=%d\n",sum)

printf("result is 25\n")

}

这段程序中常量有:

A. 10 B. sum C. 15

D. 25 E. main F. PI

16. 指出下面错误的表达式:(多选) ( )

A. a+b=5 B. 56=a11 C. i=i++

D. 5.6+6.2%3.1 E. 12 F. a=5,b=6,c=7

三、 填空题(3×8=24分)

1、C语言程序都是从 函数开始执行。

2、函数体用 开始,用 结束。

3、C语言的语句都以 结束。

4、执行循环结构中的 语句能够立即执行下一次循环。

5、执行循环结构或switch结构中的 语句能够立即退出该结构。

6、输出字符串的格式化符为 。

7、C语言中数组名表示数组的 。

全国计算机二级考试试题题库(附答案)

下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题

卡相应位置上涂黑,答在试卷上不得分。

(1) 应用软件是指

A) 所有能够使用的软件 B) 能被各应用单位共同使用的某种软件

C) 所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件

(2) 下列述叙中错误的是

A) 计算机要经常使用不要长期闲置不用

B) 为了延长计算机的寿命,应避免频繁开关计算机

C) 在计算机附近应避免磁场干扰

D) 计算机用几小时后,应关机一会儿再用

(3) 下列字符中,ASCII码值最小的是

A) A B) a C) Z D) x

(4) 用晶体管作为电子器件制成的计算机属于

A) 第一代 B) 第二代 C) 第三代 D) 第四代

(5) 下列各不同进制的四个无符号数中,最小的数是

A) ()2 B) (37)8 C) (75)10 D) (2A)16

(6) 二进制数转换成十六进制数是

A) B) C) D)

(7) 下列各无符号十进制数中,能用八位二进制表示的是

A) 296 B) 333 C) 256 D) 199

(8) 计算机的软件系统可分类为

A) 程序与数据 B) 系统软件与应用软件

D) 操作系统与语言处理程序 D) 程序、数据与文档

(9) 486机中的CPU同时能处理的二进制位数为

A) 8 B) 16 C) 32 D) 64

(10) 在使用计算机的过程中,需要重新启动DOS,则要

A) 按Ctrl+Break键 B) 按^C键 C) 按Ctrl+Alt+Del键 D) 按^H键

(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机

电源②将该软盘插入A驱动器③关好A驱动器门。则冷启动的操作顺序应为

A) ①→②→③ B) ③→②→① C) ②→①→③ D) ②→③→①

(12) 设当前盘中某一文件路径为\A\C\B\,当前目录为\A。下列命令中错误的是

A) CD.. B) RD \A\C\B

C) TYPE \A\C\B\ D) TYPE C\B\

(13) 设当前盘中的根目录下有一子目录AB,在子目录AB下有一文件。现要查看文件

的内容,应使用命令

A) TYPE \AB B) TYPE \AB\

C) TYPE \ D) DIR \AB\

(14) 自动批处理文件必须放在

A) C盘根目录中 B) A盘根目录中

C) 启动盘的任一个目录中 D) 启动盘的根目录中

(15) 设当前盘当前目录为C:\USER\XY\P,且当前盘当前目录为空,则下列命令中能正

确执行的是

A) RD C:\USER\XY\P B) RD USER\XY\P

C) MD \USER\XY\P\USER D) MD \USER\XY\P\X\Y

(16) 下列DOS命令中,合法的是

A) DISKCOMP B) TYPE >>

C) COMP A: B: D) COMP A: A:

(17) 设当前盘为C盘,所用的所有软盘已格式化,且容量相同,则下列DOS命令中错

误的是

A) DISKCOPY A: A: B) COPY A:*.* C) COPY *.* D) COPY A:*.* C:

(18) 下列DOS命令中错误的是

A) TYPE >PRN B) TYPE PRN

C) COPY *.TXT PRN D) COPY CON PRN

(19) 下列四组DOS命令中,互相等价的一组是

A) COPY A:*.* B:与DISKCOPY A: B:

B) COPY +与TYPE >>

C) COPY + 与COPY +

D) TYPE *.FOR>CON与COPY *.FOR CON

(20) 设C盘目录结构如下:

且C盘根目录下文件的内容为

CD FORTRAN

CD \TC

如果在A驱动器中插入一张根目录中只有扩展名为.C的若干文件(即A盘中无DOS系统

文件)的软盘片,则由C盘启动DOS系统后,第一次键入下列命令中,正确的是

A) COPY A:\*.C B) COPY A:\*.C TC

C) COPY A:\*.C FORTRAN D) CD USER

(21) C语言提供的合法的数据类型关键字是

A) Double B) short C) integer D) Char

(22) 在C语言中,合法的长整型常数是

A) 0L B) 4962710 C) D)

(23) 表达式:10!=9的值是

A) true B) 非零值 C) 0 D) 1

(24) 合法的C语言中,合法的长整型常数是

A) '\t' B) "A" C) 65 D) A

(25) 若有说明和语句:

int a=5

a++

此处表达式a++的值是

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

(26) 在下列选项中,不正确的赋值语句是

A) ++tB) n1=(n2=(n3=0))C) k=i==jD) a=b+c=1

(27) 若有说明:int i,j=7, *p=&i,则与i=j等价的语句是

A) I= *PB) *P=*&JC) i=&jD) i=* *p

(28) 不能把字符串:Hello!赋给数组b的语句是

A) char b[10]={'H','e','l','l','o','!'}

B) char b[10]b="Hello!"

C) char b[10]strcpy(b,"Hello!")

D) char b[10]="Hello!"

(29) 若有以下说明:

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

char c='a',d,g

则数值为4的表达式是

A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c]

(30) 若有以下说明:

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

则数值为6的表达式是

A) *p+6 B) *(p+6) C) *p+=5 D) p+5

(31) 若有以下说明:

int w[3][4]o={{0,1},{2,4},{5,8}}

int(*p)[4]=w

则数值为4的表达式是

A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1]

(32) 若程序中有下面的说明和定义

struct abc

{int xchar y}

struct abc s1,s2

则会发生的情况是

A) 编译进错 B) 程序将顺利编译`连接`执行

C) 能顺利通过编译`连接`但不能执行 D) 能顺利通过编译`但连接出错

(33) 能正确表示a≥10或a≤0的关系表达式是

A)a>=10 or a<=0 B)a>=10│a<=0

C)a>=10││a<=0 D)a>=10 ││a<=0

(34) 下面程序的输出是

main()

{ int x=3,y=6,a=0

while(x++!=(y+=o1))

{ a+o=1

if(y

#include

main()

{ char ss[10]="12345"

strcat(ss,"6789")

gets(ss)printf("%s\n",ss)

}

A) ABC B) ABC9 C) 123456ABC D) ABC456789

(35) 下面程序的输出是

main()

{ char *a=""

int v1=0,v2=0,v3=0,v4=0,k

for(k=0s[k]k++)

switch(s[k])

{ default:v4++

case '1': v1++

case '3': v3++

case '2': v2++}

printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4)}

A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1

C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8

(36) 下面程序的输出是

main()

{int k=11printf("k=%d,k=%o,k=%x\n",k,k,k)}

A)k=11,k=12,k=11 B)k=11,k=13,k=13 C)k=11,k=013,k=0xb D)k=11,k=13,k=b

(37) 若有以下程序段,w和k都是整型变量:

w=k

LB: if(w==0) go to LE

w--

printf("*")

goto LB

LE: ┆

则不能与上面程序段等价的循环语句是

A)for(w=kw!=0w--) printf("*")B)for(w=kw--w)printf("*")

C)w=kD)w=k

while(w--!=0)printf("*")w++do{ w--printf("*")}while(w!=0)

(38) 若有说明,double *p,a则能通过scanf语句正确给输入项读入数据的程序段是

A)*p=&ascanf("%lf",p)B)p=(double *)malloc(8)scanf("%f",p)

C) p=&ascanf("%lf",a)D)p=&ascanf("%le",p)

(39) 当执行下面程序且输入:ABC时,输出的结果是

#include

#include

main()

{ char ss[10]="12345"

gets(ss)printf("%s\n",ss)}

A) ABC B) ABC9 C) 123456ABC D) ABC456789

(40) 若有以下的说明和语句:

main()

{int t[3][2], *pt[3],k

fpr(k=ok<3k++)pt[k]=t[k]

}

则以一选项中能正确表示t数组元素地址的表达式是

A) &t[3][2] B) *pt[0] C) *(pt+1) D) &pt[2]

(41) 下面程序输出数组中的最大值,由s指针指向该元素.

main()

{ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s

flr(p=a, s=ap-a<10p++)

if(---?---)s=p

printf("The max:%d",*s):

}

则在if语句中的判断表达式应该是

A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s

(42) 下面程序的输出是

#include

main()

{ char*a="abcdefgh"

fun(a)puts(a)}

fun (char * s)

{ int x=0,ychar c

for(y=strlen(s)-1x

A)abcdefgh B)hgfdecba C)dcbahgfe D)hgfedcba

(43) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)))在此函数调用语句

中实参的个数是

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

(44) 下面程序的输出是

main()

{ int t=1fun(fun(t))}

fun(int h)

{ static int a[3]={1,2,3}

int k

for(k=0k<3k++) a[k]+=a[k]-h

for(k=1k<3k++) printf("%d",a[k])

printf("\n")return(a[h])}

A)1,2,3, B)1,3,5, C) 1,3,5, D) 1,3,5,

1,5,9, 1,3,5, 0,4,8, -1,3,7,

(45) C语言中,函数的隐含存储类别是

A)auto B)static C)extern D)无存储类别

(46) 下面程序的输出是

int w=3

main()

{ int w=10printf("%d\n",fun(5)*w)}