C程序设计测试卷及答案
题号 一 二 三 四 五 六 总分 得分
考试形式:■闭卷 □开卷 ■笔试 □机试 答卷要求:试卷答案需填写至答题卡内
一、单项选择题(每小题 2 分,共 30 分)
1 2 3 4 5 6 7 8 9 10 D C A B D B D A B A 11 12 13 14 15 D
B
B
C
D
1、下列关于C 语言的叙述中正确的是(D )。
A) C 程序可只能是一个函数
B) 注释说明只能位于一条语句的后面
C) C 程序的运行开始是从第一个函数开始 D) C 程序必须包含一个main()函数 2、C 语言源程序文件经过C 编译程序编译连接之后生成一个后缀为( C )的文件。
A) .c
B) .obj
C) a#10 D) Pad C) .exe D) .bas
C) a#10 D) Pad
3、下列格式符中,可以用于以16进制形式输出整数的是(A )。
A) %x
B) %f
C) %c
D) %d
4、下列标识符中,不合法的用户标识符为( B )。
A) _int
B) a#10
C) abc
D) Pad
5、下面运算符优先级最低的是(D )。
A) !
B) >=
C) %
D) +=
6、若变量已正确定义,执行语句scanf("%d%d%d",&x,&y,&z);时,( B )是正确的输入。
A) 20, 30,40
B) 203040
C) 20,30,40,
D) 20 30 40
7、下列条件语句中,功能与其他语句不同的是 (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);
8、执行语句“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
9、下列各语句定义了数组,其中一个不正确的是( 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};
10、在C 程序中,若对函数类型未加说明,则函数的隐含类型为(A )。
A) int
B) float
C) double
D) void
11、在C 语言程序中,在函数内部定义的变量称为( D )。
A) 动态变量
B) 静态变量
C) 外部变量
D) 内部变量
12、下列语句定义p 为指向float 类型变量d 的指针,其中哪一个是正确的( B )。
A) float d,*p=d;
B) float d,*p=&d; C) float d,p=d;
D) float *p=&d,d;
13、C 语言中字符中的结束标记是(
)。
A) 空格
B) '\0'
C) '\n'
D) '\10'
14、若struct teacher{ int num ;char name[10]; char sex; int age; float score;}teacher1;则变量teacher1所占用的内存字节是( C )。
A) 5 B) 14 C) 19 D) 20 15、以“追加”方式打开文本文件a:\aa.dat,下列语句中哪一个是正确的( D )。
A) fp=fopen("a:\\aa.dat ", "r+"); B) fp=fopen("a:\aa.dat ", "w"); C) fp=fopen("a:\aa.dat ", "r");
D) fp=fopen("a:\\aa.dat ", "a");
二、填空题(每小题 2 分,共 10 分)
1 循环结构
2 1
3
4 4 9 5
#include
1、在C 语言中,程序的结构通常有三种:顺序结构、选择结构和_循环结构_____。
2、设已定义了整型变量a,b,c ,其值分别为a=3,b=2,c=1,则表达式a<b<c 的值为__1___。
3、定义一个整型数组a[5],则下标最大的数组元素为 4 。
4、有程序段:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b; b=p[5]; 则b 中的值是 9 。
5、C 语言提供了 #include 命令用来实现“文件包含”的操作。
广东科技学院2012 — 2013 学年第一学期《C 语言程序设计》期末考试试卷(B 卷)
……………………………装……………………………………………订………………………………线………………………………
三、程序改错题。
指出下列程序错误代码并改正,使其能正确运行。
(每题有2处错,指出1处得1分,改正得2分,每处 3分,共 12 分)
1、
#include <stdio.h>
int main{
int x;
x=3;
printf(“%d”,x)
}
2、
void f(int x){
return x*2.0;
}
int main()
{ double y;
y=f(2);
printf("y=%d\n",y);
}
四、程序分析题,根据下列程序,写出其运行结果。
(每小题 4 分,共 12 分)1、
#include <stdio.h>
int main()
{ int a=3,b=0,c=1;
printf("%d,%d,%d\n",a,++b,c);
printf("%d,%d,%d\n",a++,b,- -c);
}
输出结果:______
3,1,1
3,1,0
2、
#include <stdio.h>
int main()
{ int b[]={1,2,3,4},i,j=1,s=0;
for(i=3;i>=0;i--)
{ s=s+b[i]*j; j=j*10; }
printf("s=%d\n",s);
}
输出结果:______
s=1234
3、
#include <stdio.h>
void f(int y,int *x){ y=y+*x; *x=*x+y; }
int main( )
{ int x=2,y=4;
f(y,&x);
printf(“x=%d,y=%d\n”,x,y);
}
输出结果:______
x=8,y=4
五、程序填空题(每空 3 分,共 12 分)
1、已知能被4整除而不能被100整除的或者能被400整除的年份是闰年,则闰年的判断条件程序如下:
int main()
{ int year,leap;
scanf("%d",&year);
if ( (year%4==0) && (year%100!=0) || (year%400==0))
leap=1;
else
leap=0;
if (leap==1) printf("是闰年\n");
else printf("不是闰年\n");
}
2、下面程序的功能是:用冒泡法将整型数组a中的元素从小到大排列,请填空。
#include <stdio.h>
int main()
{ int a[10]={11,-2,37,4,5,76,7,45,91,75},i,j,t;
for(i=0;i<10;i++)
for(j=0;j<10-i;j++)
if(a[j]>a[j+1])
{ t=a[j]; a[j]=a[j+1]; a[j+1]=t; }
for(i=0;i<10;i++) printf("%d ",a[i]);
printf("\n");
}
六、编程题(第1题 12 分,第2题12分,共 24 分)
1.编写一程序,输入a,b,c三个实数,计算并输出其中最小值min,并输出a,b,c及min 的值。
2.定义一个函数f(int a[],int n),处理求斐布拉契数列,各斐布拉契数列的值存储在数组a中,参数n代表求前n项斐布拉契数列。
斐布拉契数列 1,1,2,3,5,8,13,21……。
C语言程序设计(附答案)
C语言程序设计考试试卷(附答案)计算机程序设计课程56 学时 3.5 学分考试形式:闭卷一、选择题(15小题,每小题2分,共计30分)1.下面不正确的字符串常量是 A 。
A)'abc' B)"12'12" C)"0" D)" "2.以下正确的叙述是 DA)在C程序中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误(精确)地表示D)在C程序中,%是只能用于整数运算的运算符3.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为 AA)D B)68 C)不确定的值 D)C4.sizeof(float)是 B :A)一个双精度型表达式 B)一个整型表达式C)一种函数调用 D)一个不合法的表达式5.以下说法正确的是 D :A)输入项可以为一实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);6.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是 D (注:<CR>表示回车)。
int a1,a2; char c1,c2;scanf("%d%d",&a1,&a2); scanf("%c%c",&c1,&c2);A) 1020AB<CR> B)10 20<CR>AB<CR>C)10 20 AB<CR> D)10 20AB<CR>7.请阅读以下程序:void main(){int a=5,b=0,c=0;if(a=b+c) printf("***\n");e1se printf("$$$\n");以上程序 D :A)有语法错不能通过编译 B)可以通过编译但不能通过连接C)输出*** D)输出$$$8.下面程序段的运行结果是 C 。
C语言程序设计试题及答案解析
C语言程序设计试题第1、2、3章 概述、类型、表达式一、选择题1、 一个C程序由若干个C函数组成,各个函数在文件中的位置顺序为:( )A、 任意B、 第一个函数必须是主函数,其他函数任意C、 必须完全按照执行的顺序排列D、 其他函数可以任意,主函数必须在最后2、 下列四个叙述中,正确的是:( )A、 C程序中的所有字母都必须小写B、 C程序中的关键字必须小写,其他标示符不区分大小写C、 C程序中的所有字母都不区分大小写D、 C语言中的所有关键字必须小写3、 下列四个叙述中,错误的是:( )A、 一个C源程序必须有且只能有一个主函数B、 一个C源程序可以有多个函数C、 在C源程序中注释说明必须位于语句之后D、 C源程序的基本结构是函数4、 下面不是C语言合法标识符的是:( )A、abcB、5nC、_4mD、x35、 以下叙述不正确的是:( )A. 分号是C语句的必要组成部分B. C程序的注释可以写在语句的后面C. 函数是C程序的基本单位D. 主函数的名字不一定非用main来表示6、 C语言中允许的基本数据类型包括:( )A. 整型、实型、逻辑型B. 整型、实型、字符型C. 整型、字符型、逻辑型D. 整型、实型、逻辑型、字符型7、 C语言中能用八进制表示的数据类型为:( )A、字符型、整型B、整形、实型C、字符型、实型、双精度型D、字符型、整型、实型、双精度型8、 下列属于C语言合法的字符常数是:( )A、’\97’B、”A”C、’\t’D、”\0”9、 在C语言(VC环境)中,5种基本数据类型的存储空间长度的排列顺序为:( )A、char<int<=long int <=float<doubleB、char=int<long int <=float<doubleC、char<int<long int=float=doubleD、char=int=<long int <=float<double10、 在C语言中(VC环境),一定是长整型常数的是:( )A、0LB、4962710C、0412765D、0xa34b7fe11、 若有以下定义语句char c1=’b’, c2=’e’;printf(“%d,%c\n”,c2-c1,c2-‘a’+’A’);则输出结果是:( )A、2,MB、3,EC、2,ED、输出项与相应的格式控制不一致,输出结果不确定12、 以下合法的赋值语句是:( )A、x=y=100B、d--;C、x + yD、c = int(a+b);13、 设变量t为int型,下列选项中不正确的赋值语句是:( )A、++t;B、n1=(n2=(n3=0));C、k=i==m;D、a=b+c=1;14、 在以下一组运算符中,优先级最高的是:( )A、<=B、==C、%D、&&15、 下列能正确表示a≥10或a≤0的关系表达式是:( )A、a>=10 or a<=0B、a<=10 || a>=0C、a>=10 || a<=0D、a>=10 && a<=016、 下列只有当整数x为奇数时,其值为“真”的表达式是:( )A、x%2==0B、!(x%2==0)C、(x-x/2*2)==0D、! (x%2)17、 设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是:( )A、1 0< a < 15B、!(a<=10 || a>=15)C、a>10 && a<15D、!(a<=10) && !(a>=15)18、 已知x=43, ch=’A’,y=0;则表达式(x>=y&&ch<’B’&&!y)的值是:( )A、0B、语法错C、1D、“假”19、 表达式17%4 /8的值为:( )A、0B、1C、2D、320、 语句printf(“%d”,(a=2)&&(b= -2));的输出结果是:( )A、无输出B、结果不确定C、-1D、121、 一个可执行的C程序的开始执行点是:( )A. 程序中的第一个语句B. 包含文件中的第一个函数C. 名为main的函数D. 程序中的第一个函数22、 组成C语句的一个必不可少的符号是:( )A. 逗号B. 引号C. 冒号D. 分号23、 若将int、long、float等类型的数据进行混合运算,其结果的数据类型是:( )A. intB. longC. floatD. double24、 下述是C语言中有关变量定义的几个说法,正确的是:( )A. 变量可以不定义直接使用B. 一个说明语句只能定义一个变量C. 几个不同类型的变量可在同一语句中定义D. 变量可以在定义时进行初绐化25、 与x * = y + z等价的赋值表达式是:( )A. x = y + zB. x = x * y + zC. x = x * (y + z)D. x = x + y * z26、 当代电子计算机能够自动地处理指定的问题是因为:( )A.计算机是电动的B.有解决该问题的计算机程序C.事先存储了解决该问题的程序D.以上都不是27、 以下叙述中最准确的是:( )A.计算机程序是处理某一问题所有指令的集合B.计算机程序是处理某一问题所用到的所有数据的集合C.计算机程序是处理某一问题的所有指令及其数据的集合D.计算机程序是处理某一问题的所有指令及其数据的有序集合28、 关于计算机程序设计,以下描述最准确的是:( )A.程序设计就是用语言来编写程序B.程序设计就是用计算机语言来编写程序C.程序设计就是用计算机程序设计语言来编写程序D.程序设计就是用计算机能识别的语言来编写程序29、 目前编写计算机程序一般采用的是:( )A.机器语言 B.汇编语言 C.高级语言 D.英语30、 设计一个计算机程序最基本的工作是:( )A.制定正确的算法 B.选择合理的数据结构C.制定正确的算法和选择合理的数据结构 D.以上都不是31、 算法具有五个特性,以下选项中不属于算法特性的是:( )A.有穷性 B.简洁性 C.可行性 D.确定性32、 下述哪一个不是结构化程序基本结构:( )A.顺序 B.选择 C.循环 D.嵌套33、 C语言是一种:( )A.机器语言 B.汇编语言 C.高级语言 D.以上都不是34、 C语言源程序的扩展名为:( )A..exe B..c C..obj D..cpp35、 C程序编译后最终产生(即计算机执行)的文件的扩展名为()A..exe B..c C..obj D..cpp36、 下列各项中,不是C语言的特点是:( )A.语言简洁、紧凑,使用方便B.程序执行效率高,可移植性好C.能实现汇编语言的大多数功能D.有较强的网络操作功能37、 构成C语言源程序的基本单位是:( ) A.子程序 B.过程 C.文本 D.函数38、 下列叙述正确的是:( )A.C语言源程序可以直接在DOS环境中运行B.编译C语言源程序得到的目标文件可以直接在DOS环境中运行C.C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行D.C语言源程序可以直接在VC++环境中运行39、 某C程序由一个主函数main()和一个自定义函数max()组成,则该程序:( )A.写在前面的函数先开始执行B.总是从main()函数开始执行C.总是从max()函数开始执行D.写在后面的函数先开始执行40、 以下叙述不正确的是:( )A.分号是C语句的必要组成部分B.C程序的注释可以写在语句的后面C.函数是C程序的基本单位D.主函数的名字不一定用mian表示41、 以下为C语句的是:( )A.a=8 B.a++; C.if(a>8) D.#include <stdio.h>以下不是C语句的是:( )A.a=8; B.a++; C.if(a>8); D.for(i=1;i<5;i++)42、 以下所列语句中,合法的语句是:( )A.a=1,b=2 B.++a; C.a=a+1=5 D.y=int(a);43、 C程序中的复合语句指的是:( )A.并列的多个C语句 B.写在同一行中的多个C 语句C.用一对大括号对括的多个C语句 D.就是函数体中的语句44、 当一个很长的C语句(中间无字符串)在一行写不下(超出屏幕的宽度)时,应该:( )A.由系统自动换行 B.立即按回车键换行C.在任意一个空格处按回车键换行D.输入一个分号后并按回车键换行换行45、 在x值处于-2~2,4~8时值为“真”,否则为“假”的表达式是:( )。
C程序设计试卷及答案
C程序设计试卷及答案《c程序设计》考试试题(120分钟)一、单项选择题(每小题2分后,共60分后)?1.以下运算符中优先级最低的就是________。
a)<b)+c)&&d)!=2.c语言中的标识符只能由字母、数字和下划线组成且第一个字符________。
a)必须为字母b)必须为下划线c)必须为字母或下划线d)可以就是字母,数字或下划线中任一种3.推论char型变量ch与否为大写字母的恰当表达式就是________。
a)@a@<=ch<=@z@b)(@a@<=ch)and(@z@>=ch)c)(ch>=@a@)&(ch<=@z@)d)(ch>=@a@)&&(ch<=@z@)4.以下的for 循环________。
for(x=0,y=0;(y!=123)&&(x<4);x++);a)是无限循环b)循环次数不定c)执行4次d)执行3次5.putchar函数可以向终端输出一个________。
a)字符或字符变量值b)字符串c)整型变量表达式的值d)实型变量值6.设a,b,c都就是int型变量,且a=3,b=4,c=5,则下面的表达式中,值0的表达式就是________。
a)@a@&&@b@b)ac)a||b+c&&b-cd)!((a7.推论字符串a和b与否成正比,应采用________。
a)if(a==b)b)if(a=b)c)if(strcpy(a,b))d)if(strcmp(a,b))8.请阅读以下程序:main(){inta=5,b=0,c=0;if(a=b+c)printf(\elseprintf(\}以上程序________。
a)有语法错误不能通过编译b)可以通过编译但不能通过连接c)输出***d)输出$$$9.t为int类型,步入下面的循环之前,t的值0,while(t=l){??}则以下叙述中正确的是________。
完整word版,C语言程序设计期末考试试题(含答案)
C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。
#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。
C语言程序设计试卷(含答案)
.2015年春季学期《C 语言程序设计》试卷A一.选择(每道小题2分,合计30分)1、以下选项中合法的标识符是( )。
A)1_1B)1-1C)_11D)1_ _2、若函数中有定义语句:int k;,则( )。
A)系统将自动给k 赋初值0 B)这时k 中的值无定义 C)系统将自动给k 赋初值-1D)这时k 中无任何值3、以下选项中,能用作数据常量的是( ) 。
A)o115B)0118C)1.5e1.5D)115L4、设有定义:int x=2;,以下表达式中,值不为6的是( )。
A)x*=x+1 B)X++,2*x C)x*=(1+x)D)2*x,x+=25、程序段:int x=12; double y=3.141593;printf("%d%8.6f",x,y);的输出结果是( )。
A)123.141593 B)12 3.141593C)12,3.141593D)123.14159306、把2进制数10000111101转化为十进制数为( )。
A)1083B)1084 C)1085D)10867、以下是if 语句的基本形式: if(表达式) 语句 其中"表达式"( )。
A)必须是逻辑表达式B)必须是关系表达式 C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式8、有以下程序#include <stdio.h> main(){ int x; scanf("%d",&x);if(x<=3); elseif(x!=10) printf("%d\n",x);}程序运行时,输入的值在哪个范围才会有输出结果( )。
A)不等于10的整数 B)大于3且不等于10的整数 C)大于3或等于10的整数D)小于3的整数9、有以下程序#include <stdio.h> main(){ int a=1,b=2,c=3,d=0; if (a==1 && b++==2)if (b!=2||c--!=3) printf("%d,%d,%d\n",a,b,c);else printf("%d,%d,%d\n",a,b,c); else printf("%d,%d,%d\n",a,b,c);} 程序运行后输出结果是( )。
C语言程序设计试题及答案
《C语言程序设计》(卷)考核班级学生数印数考核方式闭卷考核时间120 分钟(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷第一部分:基础知识(20项,共40分)1.一个C语言程序是由()组成的。
A.主程序B.子程序C.函数D.过程2.转换说明符%x的输出形式是()。
A.十进制B.八进制C.十六进制D.二进制3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( “------------“) ;的正确说法是()。
A.循环体只执行一次B.死循环C.循环体一次也不执行D.输出-----------4.若x、y、z均为int 型变量,则执行下列语句后的z值为()。
x=1; y=2; z=3; z=(x>y)?z :y ; z = (z<y)?z:x;A.1 B.4 C.2 D.35.下面标识符中,合法的用户标识符为()。
A.P#Ad B.12a C.char D._int6.‘A’+ 3 的结果是()。
A.’A’B.’D’的ASCⅡ码C.65 D.37.语句char str[20];说明str是一个字符串,最多能表示()。
A.20个字符B.19个字符C.18个字符D.21个字符8.将int 型变量n转换成float型变量的方法是()。
A.float n B.(float)n C.float(n) D.21个字符9.以下不正确的描述是()。
A.使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成B.while循环是先判断表达式后执行循环体语句C.do-while和for循环均是先执行循环体语句,后判断表达式D.for、while、do-while循环中的循环体均可以由空语句构成10.在循环中使用break 语句的功能是()。
A.使程序的执行跳出break所在的那一重循环B.使程序执行结束C.跳出包含此break语句的所有循环D.终止本次循环,继续下次循环11.下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是()。
C语言程序设计(自定义类型)期末单元测试与答案
一、单选题1、若有以下结构体定义struct A{int x;int y;}a;则正确的引用或定义是()A.struct b;b.x = 10;B.struct A b = [10];C.A.x = 10;D.A b;b.x = 10;正确答案:B解析:B、先定义类型Struct A的一个变量b,使用{}的方式为b提供初值,b正常需要两个值,而这里传一个值10,也是正确的,相当于把10赋值给b.x2、设有以下定义struct Stu{char name [10];int score;}a,b;则以下描述中错误的是()A.Stu为该结构体的类型名,故定义该结构体类型的一个变量c的语法为Stu c;B.a和b为该结构体类型的两个成员C.struct 为结构体类型的关键字D.为变量a的score赋值98的语句可写为a.score = 98;正确答案:A3、设有以下说明语句struct ex{int x;float y;char z;}example;则下面的叙述中不正确的是()A.example是结构体类型名B.x、y、z都是结构体成员名C.struct 是结构体类型的关键字D.struct ex是结构体类型名正确答案:A解析:A、struct example是类型名,只写example并不知道其是函数名还是int变量名还是float变量名4、以下结构体数组的定义格式中正确的是()struct stu{char name[10];char no[15];int score;};A.struct a[10];B.struct stu a[10];C.struct stu [10];D.stu a[10];正确答案:B解析:B、类型名为struct stu 数组名为a 正确5、以下描述中正确的是()typedef struct{int n;char ch[10];A.PER是结构体类型的变量名B.PER是结构体类型的数组名C.PER是结构体类型的类型同义词,代表该结构体类型D.PER是结构体类型的关键字正确答案:C6、以下描述中错误的是()struct Point{float x;float y;}a[5];A.a为struct Point结构体类型的变量,该变量占5个字节B.a为结构体数组名,该数组中含有5个该结构体类型的变量C.struct Point为该结构体类型D.struct为类型关键字正确答案:A7、以下描述中正确的是()struct Point{float x;float y;A.a[5].x = 7.8f;a[5].y = 6.9f;B.a[0].x = 2.1;a[0].y = 4.3;C.a = {1,2}D.a[0] = {2.1,4.3}正确答案:B解析:A、数组下标越界,正确范围0~4 C、数组名是常量,不能为其赋值D、变量a[0]中包含两个成员a[0].x和a[0].y , 不能为变量a[0]整体赋值8、若有以下定义语句,union data{int i;char c;float f;}a;int n;则以下语句中正确的是()A.a= 3.4f;B.a.i = 5;C.a = {3,'e',1.2};D.a.c= "e";正确答案:B解析:A、a.f = 3.4f; C、不能整体赋值D、应为'e'9、下列对枚举类型的定义正确的是()A.enum a{"A","B"=4,"C"};B.enum a{A;B;C};C.enum a={A,B=4;C};D.enum a{A,B=4;C};正确答案:D解析:B、各元素之间用逗号间隔C、不该有赋值号,enum a{A,B=4;C};2、#include<stdio.h>struct abc{ int a, b, c; };int main(void){struct abc s[2]={{1,2,3},{4,5,6}}; int t;t=s[0].a+s[1].b;printf("%d \n",t);return 0;}以上程序的输出结果为:A.8B.5C.7D.6正确答案:D10、struct ex{ int x ; float y; char z ;} example;则下面的叙述中不正确的是()A. x,y,z都是结构体成员名B.struct是结构体类型的关键字C.struct ex是结构体类型D. example是结构体类型名正确答案:D解析:D、example是结构体类型的一个变量,不是类型名11、关于单链表的描述中错误的是()A.结点的指针域中存放下一个数据元素的地址B.为单链表中每个元素分配一个结点,一般结点有两个数据成员,数据域和指针域C.结点的指针域中存放下一个数据元素所在结点的地址D.单链表中头结点可有可无,一般其标志作用,不存储数据元素正确答案:A12、关于单链表基本概念的描述中正确的是()A.单链表中的头结点就是首元结点B.单链表的头指针也就是指向单链表中首元结点的指针C.单链表的头指针是指向单链表中第一个结点的指针D.单链表的头指针也就是指向单链表中头结点的指针正确答案:C二、判断题1、链式存储中每个结点在物理位置上是连续的正确答案:×2、顺序存储结构中,逻辑上相邻的数据元素在物理位置上也相邻正确答案:√3、结构体类型、联合体类型及枚举类型均属于用户自定义的类型正确答案:√。
c程序语言设计考试题及答案
c程序语言设计考试题及答案一、单项选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是:A. varB. letC. intD. define答案:C2. 下列哪个选项不是C语言中的控制结构?A. 顺序结构B. 选择结构C. 循环结构D. 递归结构答案:D3. C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. =答案:A4. 在C语言中,哪个函数用于计算并返回数组中元素的个数?A. sizeofB. countC. lengthD. size5. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D6. C语言中,用于声明指针变量的关键字是:A. pointerB. ptrC. *D. ref答案:C7. 在C语言中,哪个运算符用于取地址?A. &B. *C. %D. ^答案:A8. 下列哪个选项是C语言中合法的标识符?A. 2variableB. variable2C. variable-nameD. $variable答案:B9. C语言中,用于定义函数的关键字是:B. functionC. defD. void答案:B10. 在C语言中,哪个函数用于输出字符串?A. printfB. coutC. putsD. print答案:C二、填空题(每题2分,共20分)1. C语言标准库函数中,用于计算两个数的差的函数是________。
答案:abs2. 在C语言中,________运算符用于比较两个值是否相等。
答案:==3. C语言中,________关键字用于声明一个函数。
答案:void4. C语言中,________关键字用于声明一个结构体。
答案:struct5. 在C语言中,________关键字用于声明一个枚举类型。
答案:enum6. C语言中,________函数用于将整数转换为字符串。
C语言程序设计试卷及答案
C语言程序设计试卷及答案(总14页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--2C 语言程序设计 笔试试题题号 一 二 三 四 五 六 笔试(70%) 综合 (30%) 总分分数试卷说明:1. 笔试卷面总分100分,取卷面成绩的70%计入总分;2. 综合成绩为平时成绩(10%)和实验成绩(20%)之和,占总分的30%;3. 答题时禁止拆开试卷钉,试卷背面即为草稿纸;4. 答题时间120分钟。
一、单项选择题。
将正确答案填入下面框中。
(本题16分,每小题1分) 题号 1 2 3 4 5 6 7 8 答案 题号 9 10 11 12 13 14 15 16 答案1. 有以下程序 main() {int a=1,b=0; if(!a) b++;else if(a==0) if(a) b+=2; else b+=3;printf(“%d\n ”,b); }则程序输出( A )。
A) 0B) 1C) 2D) 32. 有以下定义:int a; long b; double x,y;则下列正确的是( A )。
A) a%(int)(x-y)B) a=x!=y C) (a*y)%b D) y=x+y=x号学名姓注意行为规范 遵守考试纪律3. 若有定义 int (*p)[3];则下列说法正确的是( C )。
A) 定义了基类型为int的三个指针变量B) 定义了一个名为 *pt、具有三个元素的整型数值C) 定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组D) 定义了基类型为int的具有三个元素的整型数组4. 有以下程序段main(){ int x=10;while(x--);printf("x=%d\n",x);}则最后的输出结果是:( B )。
A) x=0 B) x= -1 C) x=1 D)while构成无限循环5. 有以下程序:int fun(){static int x=1;x *= 2;return x;}main( ){ int i,s=1 ;for(i=1 ;i<=2 ;i++) s=fun() ;printf(“%d\n ”,s) ;}执行后的输出结果为( D )。
C程序设计试卷及答案
数组a : 1 2 3 4 5 0 6 0 0 0 0 0 C 语言考试样卷及参考答案一、选择题(40题,每题1.5分,共60分)【1】以下关于C 语言标识符的描述中,正确的是 。
A )标识符可以由汉字组成B )标识符只能以字母开头C )关键字可以作为用户标识符D )Area 与area 是不同的标识符答案:D )Area 与area 是不同的标识符(C 语言标识符中大小写字母被认为是不同的字符)【2】以下不属于C 语言关键字的是 。
A )case B)byte C)enum D)sizeof答案:B )byte【3】CA ) 【4A )’【5 A )答案:【6【7A )【8A )!答案:D )!,/,==,=【9】以下程序的运行结果是什么?void main(){int a[][3]={{1,2,3},{4,5},{6},{0}};clrscr();printf("%d,%d,%d\n",a[1][1],a[2][1],a[3][1]);}结果:5,0,0【10】以下各语句或语句组中,不正确的操作是 。
A) char s[ ]=”abcde” B) char *s;gets(s);C) char *s;s=”abcde” D) char s[300];scanf(“%s”,s);答案:B (指针*s没有指向确定的变量)【11】以下叙述中不正确的是。
A)在不同的函数中可以使用相同名字的变量B)程序中有调用关系的函数必须放在同一个源文件中C)在一个函数内定义的变量,其变量名只在本函数范围内有效D)函数中的形式参数是局部变量答案:B【12】以下程序的运行结果是什么?void main(){ int i=1,v1=0,v2=0,v3=0;for (i=5;i<15;i++){ switch (i%3){ case 1:v1++;case 2:v2++;break;default:v3++;}}printf("%d,%d,%d\n",v1,v2,v3);}i v1 v2 v35 16 17 1 28 39 210 2 411 512 313 3 614 7结果:3,7,3【13】在循环语句的循环体中执行break语句,其作用是。
