C语言程序设计考试题答案

更新时间:2024-01-13 22:39:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、 已知int i, x[3][4];则不能将x[1][1]的值赋给变量i的语句是______ (分数:2 分)

A. i=*(*(x+1)) B. i=x[1][1] C. i=*(*(x+1)) D. i=*(x[1]+1) 标准答案是:A。

2、 当c的值不为0时,在下列选项中能够将c的值赋给变量a、b的是______. (分数:2 分)

A. a=c=b;

B. (a=c)&&(b=c); C. c=b=a; D. (a=c)||(b=c); 标准答案是:B。

3、 函数的功能是交换变量x和y中的值,且通过正确调用返回交换的结果。能正确执行此

功能的函数是______。(分数:2 分)

A. fund(int *x, int *y){ *x=*x+*y; *y=*x-*y; *x=*x-*y;} B. funb(int x, int y){ int t;t=x; x=y; y=t;}

C. funa(int *x, int *y){ int *p;*p=x; *x=*y; *y=*p;} D. func(int *x, int *y){ *x=*y; *y=*x;} 标准答案是:A。

4、 若x=2,y=3则x||y的结果是______ (分数:2 分)

A. 0 B. 3 C. 1 D. 2

标准答案是:C。

5、 已知int a[10];则对a数组元素的正确引用是______ (分数:2 分)

A. a[10] B. a[3.5] C. a[10] D. a(5)

标准答案是:C。 二、多选

1、若定义:int a【2】【3】{0,2,4,6,8,10};以下描述正确的有______ (分数:3 分) A. *(a+1)为元素6的地址 B. *(a【1】+1)的值为2 C. **(a+1)+2的值为8 D. a【0】与a的相同 标准答案是:ABCD。

2、在缓冲文件系统中用于读写的函数有______ (分数:3 分) A. putchar() B. fread() C. rewind() D. purw()

标准答案是:ABD。

3、指出下面合法的标识符______ (分数:3 分) A. 3ab B. ABC C. a_3 D. _stu2

标准答案是:ABC。

4、指出下面哪些是合法的用户定义的标识符______ (分数:3 分) A. P-S B. _908 C. wind D. x y

标准答案是:BC。

6、 这段程序中的常量有:#define PI 3.14 ;void main(){ int sum;sum = 10 +

15;printf(\is 25\\n\这段程序中常量有______ (分数:3 分) A. 10 B. sum C. 15 D. PI

标准答案是:ACD。

1、 说明语句int *(*p)();的含义是______ (分数:2 分)

A. p是一个指向int型数组的指针 B. .p是指针变量,它构成了指针数组

C. p是一个指向函数的指针,该函数的返回值是一个整型

D. p是一个指向函数的指针,该函数的返回值是一个指向整型的指针 标准答案是:D

2、 已知int a, *p=&a;则下列函数调用中错误的是______ (分数:2 分)

A. scanf(”%d”, &a); B. scanf(”%d”, p); C. printf(”%d”, a); D. printf(”%d”, p); 标准答案是:D。

3、 在C语言中,字符型数据在内存中的存储形式是______ (分数:2 分)

A. 原码 B. 补码 C. 反码 D. ASCII码 标准答案是:D。

4、 已定义以下函数:fun(int *p){ return *p; }该函数的返回值是______ (分数:2 分)

A. 不确定的值

B. 形参p所指存储单元中的值 C. 形参p中存放的值 D. 形参p的地址值 标准答案是:D。

5、( )已知char b[5],*p=b; ,则正确的赋值语句是(分数:2 分) A. b=“abcd”; B. *b=“abcd”; C. p=“abcd”; D. *p=“abcd”; 标准答案是:C。 二、多选

1、如果要把常量327存入变量a中,a可以定义成哪些类型?______ (分数:3 分) A. int B. char C. long D. float

标准答案是:ACD。

2、下面哪些写法是对的,而且是常量?______ (分数:3 分) A. 125 B. -0.456 C. 1.25E+20 D. 'AB'

标准答案是:AC。

3、指出下面错误的表达式______ (分数:3 分) A. a+b=5 B. 56=a11 C. i=i++

D. 5.6+6.2%3.1

标准答案是:ABD。

4、 若变量f已说明为float类型,i为int类型,则下面哪些表达式(或语句)能够实现将f中的

数值保留小数点后两位,第三位进行四舍五入的运算?______ (分数:3 分) A. f=(f*100+0.5)/100.0 B. i=f*100+0.5,f=i/100.0; C. f=(int)(f*100+0.5)/100.0; D. f=(f/100+0.5)*100.0; 标准答案是:BC。 5、 已知a为整型变量,那么与表达式a!=0真假值情况相同的表达式有哪些?______ (分数:

3 分) A. a>0||a<0 B. a C. !a==0 D. !a

标准答案是:ABC。

1、( )若有以下定义:char s[20]= \,*ps=s;则不能代表字符g的表达式是(分数:2 分) A. ps+3 B. s[3] C. ps[3]

D. ps+=3,*ps

标准答案是:B。

2、( )当对两个字符串进行比较时,应该使用的函数是(分数:2 分) A. strcat B. strcmp C. strcpy D. strlen

标准答案是:B。

3、( )strlen 11.若i为整型变量,则以下循环的次数是for(i=2;i==0;)printf(“%d”,i--); (分数:2 分) A. 无限次 B. 0次 C. 1次 D. 2次

标准答案是:B。

4、( )以下关于数组的描述正确的是(分数:2 分) A. 数组大小固定,但是可以有不同类型的数组元素 B. 数组大小可变,但是所有数组元素的类型必须相同 C. 数组大小固定,所有元素的类型必须相同 D. 数组大小可变,可以有不同类型的数组元素 标准答案是:C。

5、( )以下能正确定义数组并正确赋初值的语句是(分数:2 分) A. int N=5,b[N][N];

B. int a[1][2]={{1},{3}}; C. int c[2][]= {{1,2},{3,4}}; D. int d[3][2]={{1,2},{34}}; 标准答案是:D。 二、多选

1、程序的结构可分为哪几类______ (分数:3 分) A. 顺序结构 B. 循环结构 C. 程序结构 D. 选择结构

标准答案是:ABD。 2、已知a为整型变量,那么与表达式a!=0真假值情况相同的表达式有哪些?______ (分数:3 分) A. a>0||a<0 B. a C. !a==0 D. !a

标准答案是:ABC。 3、已知a为整型变量,那么与表达式a!=0真假值情况相同的表达式有哪些?______ (分数:3 分) A. a

B. !a==0 C. !a

D. a>0||a<0

标准答案是:ABD。

4、指出下面错误的表达式______ (分数:3 分) A. a=5,b=6,c=7 B. i=i++

C. 5.6+6.2%3.1 D. 56=a11

标准答案是:BD。

5、 下面哪些写法是对的,而且是常量?______ (分数:3 分)

A. 125 B. 2.5E+21 C. AB' D. \\n\\\\\\'\\123 标准答案是:BD。

1、( )选择正确的输入语句( )。:(其中:char string[20];)使得string的内容为\数:2 分)

A. scanf(\B. scanf(\C. scanf(\D. gets(string); 标准答案是:D。

2、( )对以下说明语句 int a[10]={6,7,8,9,10}; 的正确理解是(分数:2 分) A. 将5个初值依次赋给a[6]至a[10] B. 将5个初值依次赋给a[0]至a[4]

C. 因为数组长度与初值的个数不相同,所以此语句不正确 D. 将5个初值依次赋给a[1]至a[5] 标准答案是:B。

3、( )以下标识符中可以作为用户函数名的是(分数:2 分) A. struct B. int C. union D. go_to

标准答案是:D。

4、源程序要正确地运行,必须要有什么函数?______ (分数:2 分) A. printf函数 B. 自定义的函数 C. main

D. 不需要函数 标准答案是:C。

5C语言程序由什么组成?______ (分数:2 分) A. 子程序

B. 主程序和子程序

(分

标准答案是:AB。

1、 putchar函数可以向终端输出一个:______ (分数:2 分)

A. 整型变量表达式值 B. 字符串 C. 实型变量值 D. 字符或字符型变 标准答案是:D。

2、 printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度

大于5,则输出按方式______ (分数:2 分) A. 从左起输出该字串,右补空格 B. 按原字符长从左向右全部输出 C. 右对齐输出该字串,左补空格 D. 输出错误信息 标准答案是:B。

3、 已知static int a[2][3]={2,4,6,8,10,12}; 正确表示数组元素地址的是______ (分数:2 分)

A. *(a[1]+2) B. a[1]+3 C. *(a+1) D. a[0][0] 标准答案是:C

4、 函数调用strcat(strcpy(str1, str2), str3)的功能是______ (分数:2 分)

A. 将串str1复制到串str2中,然后再连接到str3之后

B. 将串str2复制到串str1中,然后再将串str3连接到串str1之后 C. 将串str2复制到串str1中,再将串str1连接到str3之后 D. 将串str1连接到串str2之后,再复制到str3之中 标准答案是:B。

5、 已知int a[10];则对a数组元素的正确引用是______ (分数:2 分)

A. a[10] B. a[3.5] C. a(5) D. a[10]

标准答案是:D。 二、多选 1、若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是______ (分数:3 分)

A. a=b=c=d=100 B. d++; C. c+b;

D. d=(c=22)-(b++) 标准答案是:ABD。

2、以下描述正确的是______ (分数:3 分)

A. 使用while和do-while循环时,循环变量初始话的操作应在循环体语句之前完成 B. while循环是先判断表达式,后执行循环语句

C. do-while和for循环均是先执行循环语句,后判断表达式

D. for,while和do-while循环中的循环体均可以由空语句构成 标准答案是:ABD。

3、以下4个选项中,可以看作是一条语句的有______ (分数:3 分) A. {;}

B. a=0,b=0,c=0; C. if(a>0)

D. if(b==0) m=1;n=2; 标准答案是:ABC。

4、以下叙述正确的是______ (分数:3 分) A. C语言严格区分大小写英文字母 B. C语言用\作为语句分隔符

C. C程序书写格式自由,一行内可以写几个语句,一个语句也可以写在几行上 D. 可以使用/*…*/对C程序中的任何部分作注释 标准答案是:ABCD。

5下列对逻辑运算符两侧的运算对象的数据类型描述不正确的是______ (分数:3 分) A. 只能是0或1

B. 只能是0或非0正数 C. 可以是整型或字符型数据 D. 可以是任何类型的数据 标准答案是:ABD。

1、 在C语言的if语句中,用作判断的表达式为______ (分数:2 分)

A. 关系表达式 B. 逻辑表达式 C. 算术表达式 D. 任意表达式 标准答案是:D。

2、 若希望当A的值为奇数时,表达式的值为\真\的值为偶数表达式的值为\假\。则以下不

能满足要求的表达式是______ (分数:2 分) A. A%2= =1 B. !(A%2 = =0) C. !(A%2) D. A%2

标准答案是:C。

3、 已知char s[20]= ”programming”, *ps=s;则不能引用字母o的表达式是______ (分数:2

分) A. ps+2 B. s[2] C. ps[2]

D. ps+=2, *ps 标准答案是:A。

4、 已知char b[5], *p=b;则正确的赋值语句是。______ (分数:2 分)

A. b=”abcd” B. *b=”abcd”; C. p=”abcd”;

D. *p=”abcd”; 标准答案是:C。

5、 已知int a[]={1,2,3,4,5,6,7,8,9,10,11,12}, *p=a; 则值为3的表达式是______ (分数:2 分)

A. p+=2, *(p++) B. p+=2, *++p C. p+=3, *p++ D. p+=2, ++*p 标准答案是:A。

二、多选1、以下不符合C语言语法的实型常量是______ (分数:3 分) A. 1.2E0.5 B. 3.14.159E C. 0.005 D. E15

标准答案是:ABD。

2、以下叙述中正确的是______ (分数:3 分) A. 一个C源程序可由一个或多个函数组成 B. 一个C源程序必须包含一个main()函数 C. C源程序的基本组成单位是函数

D. 在C源程序中,注释说明只能位于一条语句的最后 标准答案是:ABD。

3、以下正确的if语句形式是______ (分数:3 分) A. if (x>y && x!=y) B. if (x==y) x+=y

C. if (x!=y) scanf(\D. if (x

4、以下选项中不是C语言合法整数的是______ (分数:3 分) A. 10110 B. 386 C. 0Xffa D. x2a2

标准答案是:BD。

5以下关于数组描述错误的是______ (分数:3 分)

A. 数组的大小是固定的,但可以有不同的类型的数组元素 B. 数组的大小是可变的,但所有数组元素的类型必须相同 C. 数组的大小是固定的,所有数组元素的类型必须相同 D. 数组的大小是可变的,可以有不同的类型的数组元素 标准答案是:ABD。

1、 设有定义:int x=12,n=5; 则表达式x%=(n%2)的值为______ (分数:2 分)

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

标准答案是:D。

2、 针对下列程序段回答问题( ).for(t=1;t<=100;t++){scanf(\______ (分数:

2 分)

A. x>=0时什么也不输出

B. 最多允许输出100个非负整数 C. printf函数永远也不执行 D. 当x<0时整个循环结束 标准答案是:B。

3、 已知char b[5],*p=b; ,则正确的赋值语句是______ (分数:2 分)

A. b=“abcd”; B. *b=“abcd”; C. p=“abcd”; D. *p=“abcd”; 标准答案是:C。

4、 在C语言中,十进制数47可等价地表示为______ (分数:2 分)

A. 2f B. 02f C. 57 D. 57

标准答案是:D。

5、 有两个整型变量dog和cat,若要从磁盘文件把数据读到其中,正确的形式是______ (分

数:2 分)

A. fscanf(dog ,2,1,fp);

B. fscanf(fp,\C. fscanf(dog ,cat,2,1,fp);

D. fscanf(fp,\标准答案是:B。 二、多选 1、下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n中的较大者,请选择填空:#indude \m=0,n=0;char c; 1; while((_____)!='\\n'){ if(c>='A' && C<='Z') m++ if(c>='a' && c<='z') n++;}printf(\A. c=getchar() B. getchar() C. c=getchar() D. scanf(\标准答案是:AC。

2、以下选项中,合法的字符常量是______ (分数:3 分) A. '\\t' B. '\\17' C. \D. '\\xaa'

标准答案是:ABD。

3、以下用户标识符,其中合法的是______ (分数:3 分) A. return B. f2_G3

C. A3-3 D. abc

标准答案是:BD。

4、以下可以定义为用户标识符的有______ (分数:3 分) A. scanf B. short C. _3com_ D. int

标准答案是:AC。

5以下选项中合法的表达式是______ (分数:3 分) A. 0<=x<100 B. i=j==0

C. (char)(65+3) D. x+1=x+1

标准答案是:ABC。 简答题

1#include void main() { int i=0,j=1; for (i=2;i<=10;i++) { j*=i; } printf(\ 21. 定义文件指针 2. 打开文件,判断是否成功打开,若打开失败,程序退出运行状态 3. 对文件进行读写操作 4. 关闭文件 名词解释 1条件语句

2条件语句否定分支(与 if 连用) 论述题 1限制|调试

本文来源:https://www.bwwdw.com/article/b34o.html

Top