文档库 最新最全的文档下载
当前位置:文档库 › c语言考试题22

c语言考试题22

c语言考试题22
c语言考试题22

(1) 一台内存容量为64MB的微型机,其常规内存为( B )。

选择支:

A: 1M

B: 640KB

C: 16MB

D: 4MB

(2) 修改高级语言源程序的工具是( D )。

选择支:

A: 调试程序

B: 解释程序

C: 编译程序

D: 编辑程序

(3) 所谓“裸机”是指( A )。

选择支:

A: 不装备任何软件的计算机

B: 只装备操作系统的计算机

C: 单片机

D: 单板机

(4) 在计算机中采用二进制,是因为( D )。

选择支:

A: 可降低硬件成本

B: 两个状态的系统具有稳定性

C: 二进制的运算法则简单

D: 上述三个原因

(5) 系统软件和应用软件的关系是( D )。

选择支:

A: 系统软件以应用软件为基础。

B: 互为基础。

C: 互不为基础

D: 应用软件以系统软件为基础

(6) 二进制数1111.1对应的十六进制数是( B )。选择支:

A: F.1

B: F.8

C: 16.1

D: 16.8

(7) 以下程序的输出结果是___A_____.

void fun(int a, int b, int c)

{ a=456; b=567; c=678; }

main()

{ int x=10, y=20, z=30;

fun(x, y, z);

printf("%d,%d,%d\n", z, y, x);}

A) 30,20,10

B) 10,20,30 C) 456567678

D) 678567456

(8) 下列程序段不是死循环的是C

A) int i=100;

while (1)

{i=i%100+1;

if (i>100) break;

}

B) for(;;);

C) int k=0;

do{++k;} while (k==0);

D) int s=36;

while (s);--s

(9) 下列字符数组长度为5的是A

A) char a[]={'h', 'a', 'b', 'c', 'd'};

B) char b[]= {'h', 'a', 'b', 'c', 'd', '\0'};

C) char c[10]= {'h', 'a', 'b', 'c', 'd'};

D) char d[6]= {'h', 'a', 'b', 'c',

'\0' };

(10) 已有程序段和输入数据的形式如下,程

序中输入语句的正确形式应当为D

main()

{int a;float f;

printf("\nInput number:");

输入语句

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

}

Input number: 4.5 2

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

B)scanf("%f,%d",&f,&a)

C)scanf("%d%f",&a,&f);

D)scanf("%f%d",&f,&a);

(11) 若希望当A的值为奇数时,表达式的值为"真",A的值为偶数表达式的值为"假"。

则以下不能满足要求的表达式是:C

A) A%2==1 B)!(A%2 ==0) C)!(A%2) D) A%2

(12) 下面程序段是输出两个字符串中对应字

符相等的字符。请选择填空。A

char x[]="programming";

char y[]="Fortran";

int i=0;

while (x[i]!='\0',&& y[i]!'\0')

{if (x[i]==y[i]) printf ("%c",【1】);

else i++;}

}

【1】A)x[i++] B)y[++i] C)x[i]

D)y[i]

(13) 若以下变量均是整型,且num=sum=7;则

执行表达式sum=num++,sum++,++num后sum的

值为A

A) 7 B) 8 C) 9 D) 10

(14) 设C语言中,一个int型数据在内存中占4

个字节,则 int型数据的取值范围为:D A) 0~255 B) 0~32767 C) 0~65535 D) -2147483648~2147483647

(15) 下面四个选项中,均是合法整型常量的

选项是:A

A)160 B)一0xcdf C)一01 D)一

0x48a

一0xffff 01a 986, 012

2e5

011 0xe 0668 0x

(16) C语言中的标识符只能由字母,数字和下

划线三种字符组成,

且第一个字符(C)。

A) 必须为字母

B) 必须为下划线

C) 必须为字母或下划线

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

(17) 下面程序段的运行结果是:C

for (y=1;y<10;) y=((x=3*y,x+1),x-1); printf ("x=%d,y=%d",x,y);

A)x=27,y=27 B)x=12,y=13 C)x=15,y=14 D)x=y=27

(18) 下列变量说明语句中,正确的是(D)。

A) char:a b c;

B) char a;b;c;

C) int x;z;

D) int x,z;

(19) 下面不正确的字符串常量是。A

A)'abc' B)"12'12" C)"0" D)""

(20) 下面程序是从键盘输入学号,然后输出学号中百位数字是3的学号,输入0时结束循

环。请选择填空。B

#include

main()

{long int num;

scanf("%ld",&num);

do { if( 【1】) printf("%ld",num);

scanf("%ld",&num);

}while(num!=0);}

【1】 A) num==3 B) num/100%10==3 C)num%100==3 D) num/100==3

(21) 下列语句中,不正确的是(C)。

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

(22) 以下定义语句中,错误的是(D)。

A) int a[]={1,2};

B) char *a[3];

C) char s[10]="test";

D) int n=5,a[n];

(23) char *match(char c)是(A)。

A) 函数定义的头部

B) 函数预说明

C) 函数调用

D) 指针变量说明

(24) 以下语句中,循环次数不为10次的语句

是(A)。

A) for(i=1;i<10;i++);

B) i=1;do{i++;}while(i<=10);

C) i=10;while(i>0){--i;}

D) i=1;m:if(i<=10){i++;goto m;} (25) printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式B

A)从左起输出该字串,右补空格

B)按原字符长从左向右全部输出

C)右对齐输出该字串,左补空格

D)输出错误信息

(26) 已知各变量的类型说明如下:A

int k,a,b;

unsigned long w= 5;

double x=1.42;

则以下不符合C语言语法的表达式是:A

A) x%(一3) B) w+=-2

C) k=(a=2,b=3,a十b) D)a十= a一

=(b=4)*(a=3)

(27) 下面程序(每行程序前面的数字表示行号)。C

1 main()

2 {

3 float a[10]={0.0};

4 int i

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

scanf("%d",&a[i]);

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

a[0]=a[0]+a[i];

7 printf("%d\n",a[0]);

8 }

A)没有错误 B)第3行有错误

C)第5行有错误 D)第7行有错误

(28) 经过下列的语句 int j,a[10],*p;定义后,下列语句中合法的是(A)。

A) p=p+2;

B) p=a[5];

C) p=a[2]+2;

D) p=&(j+2);

(29) 若运行以下程序时,从键盘输入ADescriptor(CR)表示回车),则下面程序的运行结果是:D

#include

main()

{ char c;

int v0=0.v1=0,v2=0;

do{

switch(c=getchar())

{case 'a':case 'A' :

case 'e':case ' E' :

case 'i':case 'I' :

case 'o':Case 'O' :

case 'u':case 'U' :vl+=1;

default:v0+=1;v2+=1 ;} ;

while(c!='\n');

printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2); }

A)v0=7,v1=4,v2=7 B)

v0=8,v1=4,v2=8

C)v0= 11,v1=4,v2=11 D)

v0=12,vl=4,v2=12

(30) int a[10];合法的数组元素的最小下标值为(D)。

A) 10

B) 9

C) 1

D) 0

(1) 在定义函数中指定的形参变量,在未调用函数时,并不占内存中的存储单元。对

(2) 数组初始化时,若初始化列表中的初始化值个数多于数组元素个数,则错误。对

(3) 若在函数内定义形参数组a:int a[3][4];则数组a中各元素可在程序的编译阶段得到初值0错。

(4) 当两个字符串所包含的字符个数相同时,才能比较两个字符串的大小。错

(5) 当两个字符串所包含的字符个数相同时,才能比较两个字符串的大小。错

(1) 若某个整数N的所有因子之和等于N的倍数,则称N为多因子完备数。例如,28是多因子完备数。因为:1+2+4+7+14+28=56=28*2 ,求:[100,1000]间有多少个多因子完备数,将下列程序补充完整,正确结果填入相应窗口。

程序:

原程序:

#include

#include

main()

{

int a,b,c,n,count=0;

for (a=100; a<=1000; a++)

{

_____________

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

if (a%c ==0)

b=b+c;

if (b%a==0)

{

_______________

}

}

printf("\n count = %d",count);

}

案 3

(2) 以下程序求10000以内的所有完全数的个数,请

修改程序中的错误,使它能得出正确的结果,并给出

正确结果,填入相应窗口。”完全数”是指:一个数如

果刚好与它所有的真因子

(不包括该数本身)之和相等,如:6=1+2+3,则6就

是一个完全数。

程序:

原程序:

#include

#include

main()

{

int count,n,m,s,k;

count=0;

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

{

s=1;

k=n/2+1;

for (m=1;m

if (n%m==0)

s+=1;

if (s==n)

{

count+=1;

}

}

printf("\nThe count=%d",count);

}

答案4

(1) 编写程序,求出100到400之间同时满足除3余2和

除5余3条件的数的和

大学C语言考试试题及答案

精选考试类文档,如果您需要使用本文档,请点击下载! 祝同学们考得一个好成绩,心想事成,万事如意! 大学C语言考试试题及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串

选项B,C,分别用{}和’’标识字符串 选项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 6.下列C语言用户标识符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 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 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。 A)2.5 B)2 C)1 D)3 11.如果int a=3,b=4;则条件表达式"a

大学c语言考试题库含答案

================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。int a=10; printf("%d",a++); A、11 和10 B、11 和11 C、10 和11 D、10 和10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B

能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0 D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0;

2020最新C语言考试题库及答案

精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 精选考试类文档,如果需要,请下载,希望能帮助到你们! 2020最新C语言考试题库及答案

姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串

在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项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 6.下列C语言用户标识符中合法的是( B )。

A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 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 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。 A)2.5 B)2 C)1 D)3 11.如果int a=3,b=4;则条件表达式"a

C语言考试试题

试题 课程名称C语言程序设计适用时间 试卷类别 A 适用专业、年级、班 一、选择题(每小题2分, 2×25=50分) 1.下列叙述错误的是( )。 A) C程序中的每条语句都用一个分号作为结束符B) C程序中的每条命令都用一个分号作为结束符 C) C程序中的变量必须先定义,后使用 D) C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写 2.以下叙述不正确的是( )。 A) 一个C源程序必须包含一个main函数B) 一个C源程序可由一个或多个函数组成 C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面 3.C语言中最简单的数据类型包括( )。 A)整型、实型、逻辑型B)整型、实型、字符型 C)整型、字符型、逻辑型D)字符型、实型、逻辑型 4.C语言中运算对象必须是整型的运算符是( )。 A)%= B)/ C)= D)<= 5.若变量a,i已正确定义,且i已正确赋值,合法的语句是( )。 A)a= =1 B)++i;C)a=a++=5;D)a=int(i); 6.下列运算符中优先级最高的是( )。 A) < B) + C) && D) ! = 7.设有说明:char w;int x;float y;double z;则表达式w*x+z-y 值的数据类型是( )。 A) int B) float C) double D) char 8.设x和y均为int型变量,则语句:x+=y;y=x-y;x-=y;的功能是( )。 A)把x和y按从大到小排列B)把x和y按从小到大排列C)无确定结果D)交换x和y中的值 9.设整型变量a,b的值均为8, printf("%d,%d",(a++,++b),b--);的输出是( )。 A)8,8 B)8,7 C)9,9 D)8,9 10.若有语句scanf("%d%d",&a,&b);要使变量a,b分别得到10和20,正确的输入形式为( )。 A)10 20 B)10,20 C)1020 D)10:20 11.判断char型变量ch是否为大写字母的正确表达式是( )。 A)'A'<=CH<='Z' B) (CH>='A')& (CH<='Z') C)(CH>='A')&& (CH<='Z') D) ('A'<=ch)AND('Z'>=ch) 12.有如下程序 main( ) { int x=1,a=0,b=0; switch(x) { case 0: b++; case 1: a++; case 2: a++;b++; } printf("a=%d,b=%d\n",a,b);} 该程序的输出结果是( )。 A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 13.以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下: main( ) { int n,k; float score,sum,ave; sum=0.0; for(n=1;n<=10;n++) { for(k=1;k<=4;k++) { scanf("%f",&score); sum+=score; } ave=sum/4.0; printf("NO%d:%f\n",n,ave); } } 上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是( )。 A) sum=0.0; B) sum+=score; C) ave=sun/4.0; D) printf("NO%d:%f\n",n,ave);

c语言考试题

高三11月份月考C语言考试题 一、选择题:(30分) 1.在每一个C程序中都必须包含一个名为()的函数. A.main B. MAIN C. name D. function 2.以下叙述正确的是(). A.C程序中注释部分可以出现在程序中任意合适的地方 B.花括号{和}只能作为函数体的定界符 C.构成C程序的基本单位是函数, 所有函数名都可以由用户命名 D.分号是C语句之间的分隔符, 不是语句的一部分 3.若有定义int a; 变量a占用内存的2个字节, 则a所能存储数据的最 小值是(). A.0 B. -32767 C. -32768 D. -65535 4.在下列4组八进制和十六进制数中, 全部正确的是(). A.123 089 0x23af 0xbd B. 0a21 056 0xabc 0x789 C.010 052 0xdfa 0xff14 D. 0x123 0283 0xabc 0x25f 5. 设有定义”int x=8,y,z;”执行”y=z=x++; x=y==z;”后,变量x的值是() A. 0 B. 1 C. 8 D. 9 6. 能正确表示关系33 and x<5 B. 33||X<5 D. x>3&&x<5 7. 下面表达式正确的是() A. a+b=5 B. 56=a11 C. 5.6+6.2%3.1 D. a=5,b=6,c=7 8. 已知a为整型变量,表达式a!=0真假情况不同的表达式是() A. a>0||a<0 B. a C. !a==0 D. !a 9. 下面程序的输出结果是() main() { int x=’\23’; printf(“%d\n”,--x); } A.19 B. 18 C. 23 D. 24 10. 以下运算符优先级别最低的是() A. ++ B. , C. ?: D. / 11. 下面程序如果在运行时输入18,18,那么b的值是() main() { int a,b; scanf(“%d,%o”,&a,&b); b+=a; printf(“%d”,b); } A. 36 B. 34 C. 输入错误,b的值不确定 D. 18 12. 有以下程序,执行后输出的结果是() main() { int a=5,b=4,c=3,d=2; if(a>b>c) printf(“%d”,d); } A. 2 B. 无输出 C. 5 D. 有语法错误,编译不能通过 13. 执行下面程序段的输出结果是()。 int x=4, y=-55; if(x>0) if(y>0) printf(“AA”); else printf(“BB”); A. AA B. BB C. 无输出 D. 程序错误 14.以下程序的输出结果是()。 main() { if(2==3-1<=8!=4*3) printf(“true\n”); else printf(“false”); } A. true B. false C. T D. F 15.选择i正确的运行结果是() int i=10; switch(i) { case 9: i+=1; break; case 10: i+=1; break; case 11: i+=1; default: i+=1; } A.10 B. 11 C. 12 D. 13 二、填空题(30分) 1.设变量num和变量x的数据类型均为float, num的值为 2.5, 则执行 语句x=(int)num+3.2E-1;后, num的值为______,x为_______。 2.C语言规定: 在每一个字符串结尾加上个______,以便根据此判断是否 结束。 3.当a=6,x=6.8,b=4时,表达式x+a%7(int)x+8/3+b的值是 _____

C语言考试试题基础版

一、选择题 1. 在每个C 程序中都必须包含有这样一个函数,该函数的函数名为 。 A. main B. MAIN C. name D. function 2. 在以下关于C 语言的注释的叙述中,不正确的是 。 A .注释可用"/*"、"*/"形式表示,也可用"//"形式表示 B .编译器在编译一个程序时,将跳过注释,不对其进行处理 C .编译器在编译一个程序时,可发现注释中的单词拼写错误 D .程序中注释的多少不会影响所生成的可执行文件的长度 3. 以下叙述不正确的是 。 A .在C 程序中,严格区分大小写字母 B .一个C 源程序有且仅有一个main 函数 C .在C 程序中,注释只能位于一条语句的后面 D .一个C 程序总是从main 函数开始执行 4. 下列合法的标识符为 A. abde+ B. #KDJF C. 67KDJ D. DK3_ 5. 关于字符串和字符的关系正确的是 A. “A ”与’A ’是相同的 B. 字符串是常量,字符是变量 C. “A ”与’A ’是不同的 D. “A ”与“A ”是相同的 6. 下面关于语句的说法正确的是 A. 下面这两段程序的执行效果是一致的 B. 空语句是只有一个分号的语句,它其实什么也不干 C. 语句的构成不一定需要分号 D. 语句的书写对程序的运行不起作用,因此可以随便写都可以 7. 以下各标识符中,合法的用户标识符组为 。 A. PAd ,P#d ,b-b ,abc ,_0123,ssiped B. cin ,a10,CPP ,float ,del_word ,signed C. void ,max ,hiy ,,list ,*jer if (x>y) {z=x; s=z*z;} else {z=y;s=1/(z*z);} if (x>y) z=x; s=z*z; else z=y;s=1/(z*z);

C语言考试题及答案

一、单项选择题:(10分,每题2分) 1.char *p[10];该语句声明了一个: c 。 A)指向含有10个元素的一维字符型数组的指针变量p B)指向长度不超过10的字符串的指针变量p C)有10个元素的指针数组p,每个元素可以指向一个字符串 D) 有10个元素的指针数组p,每个元素存放一个字符串 2.若int x;且有下面的程序片断,则输出结果为: D 。 for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "**%d\n", x); } A) ##3B) **3C) **3D)##3**4 **4 ##4 ##4**5 ##5 ##5 **5 3.在while(!x)语句中的!x与下面条件表达式等价的是:D 。 A) x!=0 B) x==1 C) x!=1 D) x==0 4.已知 struct point { int x; int y; }; struct rect { struct point pt1; struct point pt2; }; struct rect rt; struct rect *rp = &rt; 则下面哪一种引用是不正确的__D______。 A) r t.pt1.x B) (*rp).pt1.x C) r p->pt1.x D) rt->pt1.x 5.若二维数组a有m行n列,则下面能够正确引用元素a[i][j]的为: C 。 A) *(a+j*n+i) B) *(a+i*n+j) C) *(*(a+i)+j) D) *(*a+i)+j CDDDC 二、分析程序并写出运行结果。(25分,每题5分) 1. #include main()

c语言考试试题

一、选择题 以下表达式中非法的是_______ A. 0<=x<=10 B. i=j==0 C. (char)(65+3) D. x+1=x+1 设有int x=10,y=10; 表达式x&&x-y || x+y 的结果为_______ A.20 B. 10 C. 0 D. 1 若有int x=3;执行语句if(x) x=x+3;else x=x-3; 后,变量x的值为_____ A. 3 B. 6 C. 0 D. 该语句有语法错误 若有定义int x=3; 执行语句while(x>=0) x-- ; 后,变量x的值为_______ A. 3 B. 0 C. -1 D. 2 若有定义int x=3若有定义char st[20]= "abc\ndef"; 则函数strlen(st)的值为_______ A.20 B.8 C.9 D.7; 在函数调用语句fun((x1,x2),(x3,x4,x5))中的实参的个数是_______ A. 1 B. 2 C.3 D. 4 数组初始化为:int a[10]={1,3,5,7}; 则数组元素a[4]的值为_______ A. 0 B. 7 C. 不确定 D. 1 若有定义int x,*p; 能为变量p正确赋值的表达式为________ A. p=x B. p=*x C. p=&x D. *p=x 若有定义struct sk{int a;float b}data; int *p;若要使p指向data中的成员a,正确 的赋值语句为_______________ A.p=&a; B.p=data.a; C.p=&data.a; D.*p=data.a C语言程序语句的分割符,也就是一条语句的结束符是( )。 A.逗号 B.句号 C.分号 D.括号 字符型变量输入、输出的格式是( )。 A.%d b.%f C.%c d.%s 下面求梯形面积的C语句中变量a,b,h,s是float型,不正确的是( )。 a.s=1/2*(a+b)*h B.s=1.0/2*(a+b)*h C.s=1/2.0*(a+b)*h D.s=(a+b)*h/2 While和do/while二种循环语句可能的最少的循环次数分别是( )。 A.0次和0次 B.0次和1次 C.1次和0次 D.1次和1次 说明char a[10]中定义了( )。 A.a[1]至a[10]共10个变量 B.a[1]至a[9]共9个变量 C.a[0]至a[10]共11个变量 D.a[0]至a[9]共10个变量

c语言期末测试题(附答案)

** 课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个 正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。A)’a’&&’b’ B)a<=b C)((a>b)||(b

【】 A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 计算机技术基础试题第2页(共11页)

C语言考试题及答案

一、单项选择题:(10分,每题2分) 1. char*p[10]; 该语句声明了一个:。 A) 指向含有10个元素的一维字符型数组的指针变量p B) 指向长度不超过10的字符串的指针变量p C) 有10个元素的指针数组p,每个元素可以指向一个字符串 D) 有10个元素的指针数组p,每个元素存放一个字符串 2 .若intx;且有下面的程序片断,则输出结果为:。 for(x=3;x<6;x++) { prin tf((x%2)"##%d":"**%d\n" ,x); } A) ##3 B)**3 C) **3 D)##3**4 **4##4##4**5 ##5 ##5**5 3 .在while (!x )语句中的!x与下面条件表达式等价的是:。 A)x!=0B)x==1 C)x!=1 D)x==0 4 .已知 structpoi nt { intx; inty; }; structrect { structpoi ntpt1; structpoi ntpt2; }; structrectrt; structrect*rp 二&rt; 则下面哪一种引用是不正确的__________ 。 A) r t.pt1.xB) (*rp).pt1.xC) rp->pt1.x D)rt->pt1.x 5 .若二维数组a有m行n列,则下面能够正确引用元素a[i][j]的为:。 A)*(a+j* n+i)B)*(a+i* n+j) C)*(*(a+i)+j) D)*(*a+i) +j CDDDC 二、分析程序并写出运行结果。(25分,每题5分) 1 . #include main ()

C语言考试题

〖第1题〗『填空』(1分) 已知 i=5;写出语句 a=--i; 执行后整型变量 a 的值是【1】. 答案: 1). 4 〖第2题〗『填空』(1分) 为了避免嵌套条件语句的二义性,C++语言规定else 与其前面最近的【1】语句配对. 答案: 1). if 〖第3题〗『填空』(1分) 若所用变量都已正确定义,请填写以下程序段的输出结果【1】. for(i=1;i<=5;i++); cout<<"OK"<b? a:b; return c; } void main() { int a=8; cout<z的值为【1】. 答案: 1). 1 〖第6题〗『填空』(1分) int x=2;z=++x+1; 则z的值为【1】. 答案: 1). 4 〖第7题〗『填空』(1分) int x=2,y=3,z=4; 则表达式x+(y>!z)的值为【1】. 答案: 1). 3 〖第8题〗『填空』(1分) 表达式18 && 53 的值是【1】. 答案: 1). 1 〖第9题〗『填空』(1分) 在C++程序中使用文件结束后要关闭文件,关闭文件 的函数名是【1】.

答案: 1). close 〖第10题〗『填空』(1分) 当一个函数无返回值时,函数的类型应定义为【1】 答案: 1). void 〖第11题〗『填空』(1分) 在C++程序中使用文件前打开文件,打开文件的函数名是【1】. 答案: 1). open 〖第12题〗『填空』(1分) 设x=2.5,a=7,y=4.7,算术表达式 x+a%3*(int)(x+y)%2/4的值为【1】. 答案: 1). 2.5 〖第13题〗『填空』(1分) 执行语句char str[81]="abcdef";后,字符串str结束标志存储在str[【1】] (在括号内填写下标值)中. 答案: 1). 6 〖第14题〗『填空』(1分) 执行下列语句后,b 的十进制值是【1】. int x=240,y=15,b; char z='A'; b=(( x && y ) && ( z < 'a' )); 答案: 1). 1 〖第15题〗『填空』(1分) cin.get()函数只能接收一个【1】. 答案: 1). 字符 〖第16题〗『填空』(1分) int x=2,y=3,z=4; 则表达式x+y>!z的值为【1】. 答案: 1). 1 〖第17题〗『填空』(1分) int x=y=z=2;x=y==z; 则x的值为【1】. 答案: 1). 1 〖第18题〗『填空』(1分) C++语言程序的三种基本结构是:顺序结构,选择结构,【1】结构. 答案: 1). 循环

大学C语言考试题及答案

大学C语言考试题及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项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 6.下列C语言用户标识符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 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 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。 A)2.5 B)2 C)1 D)3 11.如果int a=3,b=4;则条件表达式"a

C语言考试题库及答案

7、C 语言程序的基本单位是 A) 程序行B) 语句 8 、设int a=12, 则执行完语句a+=a-=a*a 后,a 的值是 ___ D ___ A) 552 B) 264 C) 144 D) -264 9 、执行下面程序中的输出语句后,输出结果是 ___ B__. #include void main() {int a; printf("%d\n",(a=3*5,a*4,a+5)); } A) 65 B) 20 C) 15 D) 10 10 、下面程序的输出是 _____ B _____ 14 、以下程序的输出结果是______ D ____ . #include void main() { int x=10,y=10; printf("%d %d\n",x--,--y); } A) 10 10 B)99 C)910 D)109 1、下面程序的输出是___D ________ #include void main() { int k=11; printf("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 2、在下列选项中,不正确的赋值语句是__D ________ . A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1; 3、下面合法的C 语言字符常量是__________ A ___ . A) '\t' B) "A" C) 65 D) A 4、表达式: 10!=9 的值是 _________ D ___ . A) true B) 非零值C) 0 D) 1 5、C 语言提供的合法的数据类型关键字是 ____ B ___ . A) Double B) short C) integer D) Char 6 、字符(char) 型数据在微机内存中的存储形式是 __D__. A) 反码B) 补码C) EBCDIC 码D) ASCII 码 {int x=023; printf("%d\n",--x); } A) 17 B) 18 11 、下面程序的输出的是 #include void main() {int x=10,y=3; printf("%d\n",y=x/y); } A) 0 B) 1 C) 23 D) 24 ____ C ___ C) 3 D) 不确定的值 12 、已知字母A 的ASCII 码为十进制的65,下面程序的输出是 ____________ A ____ . #include void main() {char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } A) 67,D B) B,C C) C,D D) 不确定的值 13 、若要求在if 后一对圆括号中表示 a 不等于0 的关系,则能正确表示这一关系的表达式为_________ D__. A) a<>0 B) !a C) a=0 D) a ____ C _____ . C) 函数D) 字符

C语言考试试题

c语言考试题(一) 一、单项选择题(每题2分,共20分) 1、以下选项中属于C语言的数据类型是() A.复数型B.逻辑型C.集合型D.双精度型 2、一个C程序的执行是从() A.main()函数开始,直到main()函数结束B.第一个函数开始,直到最后一个函数结束 C.第一个语句开始,直到最后一个语句结束D.main()函数开始,直到最后一个函数结束 3、设有语句int a=3;则执行语句a+=a-=a*a;后,变量a的值是()A.3 B.0C.-12D.9 4、若有char c[5]={'c','d','\0','e','\0'};则执行语句printf("%s",c);结果是( )。 A.cd\0e B.'c''d' C.cd D.cd e 5、已知:int a[2][3]={1,2,3,4,5,6}, (*p)[3]=a;则下列表达式不是4的是( )。 A.*(*p+3) B.*p+3 C.*(*(p+0)+3) D.a[0][3] 6、以下有宏替换不正确的叙述( ). A.宏替换不占用运行时间B.宏名无类型 C.宏替换只是字符串替换D.宏名必须用大写字母表示

7、执行char str[10]=”Ch\nina”; strlen(str)的值是()A.5 B.6 C.7 D.9 8、下面程序的输出结果是:() #define POWER(x) (x*x) main() {int i=4; printf("%d",POWER(i-2)); } A. -9 B. -7 C. 5 D. -6 9、在定义int a[3][4][2];后,第10个元素是() A.a[2][1][2] B.a[1][0][1] C.a[2][0][1] D.a[2][2][1] 10、下面程序的输出结果是:() typedef struct {long x[2]; short y[4]; char z[8]; }MYTYPE; MYTYPE a; main() { printf("%d\n",sizeof(a));} A. 2 B. 8 C. 14 D. 24 二、填空题(每空1分,共11分) 1、字符串"A"在内存中占用的字节数为。 2、C语言中的标识符只能由字母、下划线和组成。

c语言考试题

fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是()。 A、读或读写 B、追加 C、只写 D、答案B和C都正确 【参考答案】错误 A 【学生答案】 、 D 使用共用体变量,不可以()。 A、同时访问所有成员 B、进行动态管理 C、节省存储空间 D、简化程序设计 【参考答案】正确 A 【学生答案】 % A 设有如下定义:struct sk {int a; float b;} data,*p; 若要使p指向data中的a域,正确的赋值语句是()。 A、p=(struct sk*) ; B、*p=; C、p=&; D、p=&data,a; 【参考答案】错误 C \ 【学生答案】 B 以下程序段执行后输出的结果是( ). char str[ ]="ABCD",*p=str; printf("%d\n",*(p+4)); A、字符'D'的地址 B、0 C、不确定的值 D、68 【参考答案】错误 ^

B 【学生答案】 D 已定义char a[10];和char *p=a;,下面的赋值语句中正确的是( ). A、p="Turbo c"; B、a="Turbo c"; C、*p="Turbo c"; > D、a[10]="Turbo c"; 【参考答案】错误 A 【学生答案】 C 设有如下程序,请选择正确答案( )。 #include <> main() {int **k,*j,i=100; 》 j=&i, k=&j; printf("%d\n",**k); } A、运行错误 B、100 C、i的地址 D、j的地址 【参考答案】正确 B / 【学生答案】 B 以下叙述正确的是()。 A、可以把if定义为用户标识符,但不能把define定义为用户标识符 B、define和if都不能定义为用户标识符 C、可以把define定义为用户标识符,但不能把if定义为用户标识符 D、可以把define和if定义为用户标识符 【参考答案】正确 C ?

c语言笔试题(答案)

笔试题 一、填空题(每个空4分,共28分) 1)struct tagABC { char name[10]; char sex; long sno; float score[4]; }*pAbc;(四字节对齐) pAbc=NULL; 那么,执行pAbc+=2;之后pAbc的值为(64 ) 2)如下代码,最终value的值是(8) int *p1,*p2; int value; p1=(int*)0×400; p2=(int*)0×408; value = p2-p1; 3)如下代码,printf的结果为(2) #include〈stdio.h〉 #include〈string.h〉 void main(void) { char acNew[20]= “\\0\0”; printf(“%d\n”,strlen(acNew)); } 4) 有如下程序段,运行该程序的输出结果是(33) main () { int y=3,x=3,z=1; printf(“%d%d\n”,(++x,y++),z+2); } 5)设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后,n的值为(2)6)struct tagAAA { Unsigned char ucId:1; Unsigned char ucPara0:2; Unsigned char ucState:6; Unsigned char ucTail:4; Unsigned char ucAvail; Unsigned char unTail2:4;

Unsigned long ulData; }AAA_S 问:AAA_S在字节对齐分别为1,4情况下,占用的空间大小分别是多少?( 9)(12 ) 二、选择题(每题2分,共34分) 1)若有说明int(*p)[3];以下叙述正确的是( D ) A:p是指针数组 B:(*p)[3]和*p[3]等价 C:p是指向一维数组中任何一个元素的指针 D:p是指向含有3个整型元素的一维数组的指针 2)以下关于单元测试的描述,哪些是对的?(D) A:黑盒测试针对软件的功能,不考虑功能的实现细节; B:白盒测试针对源代码的测试,从程序功能的具体实现上找错; C:路径覆盖是黑盒测试的一种方法,编写测试用例使程序的每条语句都能走到; D:条件覆盖是百盒测试的一种方法, 编写测试用例使程序的每个判断的各种情况都能到3)以下可以用于任务间通信的有(ABCD) A:共享内存 B:信号量 C:消息队列和管道 D:socket调用 4)有关结构,以下哪些描述是对的?(BC) A:为了测试方便,尽量把一个结构的功能设计得多一些 B:不同结构间的关系不要过于复杂 C:结构中的各元素应代表同一事务的不同侧面,而不应把描述没有关系或关系很弱的不同事务的元素放到同一结构中 D:结构中元素的布局与排列顺序可以随意设计 5)关于强制类型转化,下面说法正确的是(ABCD) A:当目的结构的空间大于源结构的空间时,要重点关注内存访问超过源结构范围的情形,可能越界; B:当目的结构的空间小于源结构的空间时,要重点关注对目的结构赋值不能完全覆盖源结构范围的情形,可能遗漏; C:结构体之间的强制类型转换时,其成员字段的数据类型的差异也是要格外小心的; D:与结构体之间的强制类型转换相比,基本数据结构的强制类型转换更容易出现上面描述的情况,使用的时候,一定要慎之又慎; 6)正确的使用assert,软件系统不会对人为原因造成的错误进行处理。它有利于(A BCD) A:缺陷及早暴露,加快定位进程; B:明确表示函数接口或算法逻辑的校验关系,增强软件代码的可读性; C:去除不必要的容错处理,简化代码处理流程,降低软件处理复杂度; D:强化编程接口之间的契约,增强软件的可维护性; 7)对于循环体的执行效率,下述说法正确的是(ABCD ) A:循环体内工作量最小化 B:在多重循环中,应将最忙的循环放在最内层 C:尽量减少循环的嵌套层次 D:避免在循环体内做无谓的判断语句,将循环语句置于判读语句的代码块之中 8)设数组a[5]={10,20,30,40,50};已知指针p指向a[1];则表达式*++p的值是(A)

相关文档