《C语言程序设计》期考试卷-A卷(2010-2011第2学期)

合集下载

C语言程序设计考试题(全题)

C语言程序设计考试题(全题)

福建师范大学C语言程序设计考试题系别 _______ 班级 _______ 姓名_________ 学号________ 得分__________一、选择题(本大题共40个选项,每个选择项1.5分,共60分)1.在C语言中,合法的字符常数是【1】A)‘程序设计’ B)“程序设计”C)c D)‘\\’2.在C语言中,以下不正确的八进制或不正确的十六进制数是【2】A)090 B)0xABC)0xla D)-0163.执行int x=2,y=3;后表达式x=(y==3)的值是【3】A)0 B)1C)2 D)34.执行语句int a,b,c; a=(b=c=3, c++, b+=c);则a的值是【4】A) 3 B) 4C) 7 D) 115.在循环结构的循环体中执行break语句,其作用是【5】A) 结束本次循环,进行下次循环B) 继续执行break语句之后的循环体中各语句C) 跳出该循环体,提前结束循环D) 终止程序运行【6】main(){char s[]=”\’Address\’”;printf(%d\n”, strlen(s));}A) 9 B) 10C) 11 D) 12【7】main(){int a[]={2, 4, 6, 8, 10}, y=1, x;for(x=0; x<3; x++) y+=a[x+1];printf(“%d\n”, y);}A) 17 B) 18C) 19 D) 208.已定义char x[8]; int i;为了给x数组赋值,以下正确的语句是【8】A) x[8]=”Turbo C”; B) x=”Turbo C”;C) x[]=”Turbo C”; D) for(i=0; i<7; i++) x[i]=getchar();9.设int a[][4]={0, 0};则以下错误的描述是【9】A) 数组a的每个元素都可得到初值0B) 二维数组a的第一维大小为1C) 数组a的行数为1D) 只有元素a[0][0]和a[0][1]可得到初值0,其余元素得不到初值0 【10】fun3(int x){static int a=3;a+=x;return a;}main(){int k=2, m=1, n;n=fun3(k);n=fun3(m);printf(“%d\n”, n);}A) 3 B) 4C) 6 D) 911.以下四个运算符,按优先级由高到低的排列顺序是【11】A) ++ % += > B) % ++ > +=C) % += > ++ D) ++ % > +=【12】A) 在函数外部定义的变量是全局变量B) 在函数内部定义的变量是局部变量C) 函数的形参是局部变量D) 局部变量不能与全局变量同名13.“文件包含”预处理语句的使用形式中,当#include后面的文件名用“”括起时,寻找被包含的文件的方式为【13】A) 直接按系统设定的标准方式搜索目录B) 先在源程序所在目录搜索,再按系统设定的标准方式搜索C) 仅仅搜索源程序所在的目录D) 仅仅搜索当前目录14.设有语句int(*p)();则p是一个【14】A) 指向一维整型数组的指针变量B) 指针函数,该函数的返回值为指向整型变量的指针C) 指向函数的指针变量,该函数的返回值为整型D) 数组指针,它的每个元素都是一个可以指向整型变量的指针变量15.若有typedef float AR[5];AR a;则以下叙述正确的是【15】A) a是一个新类型名B) AR是一个实型数组C) AR是一个实型变量D) a是一个实型数组【16】A)整型、实型、逻辑型B)整型、实型、字符型、逻辑型C)整型、字符型、逻辑型D)整型、实型、字符型17.在C语言中,变量所分配的内存空间大小【17】A)均为一个字节 B)由用户自己定义C)由变量的类型决定 D)是任意的18.在C语言中,合法的整型常数是【18】A)-0x123 B)3.14159 C19.下列各变量均为整型,选项中不正确的C语言赋值语句是【19】A)i+=++i; B)i=j==k;C)i=j+=i; D)i=j+1=k;≤y≤z可用C语言的表达式表示为【20】A)(x<=y)&&(y<=z) B)(x<=y)and(y<=z)C)(x<=y<=z) D)(x<=y)&(y<z)21.若定义float a;现要从键盘输入a数据,其整数位为3位,小数位为2位,则选用【21】A)scanf(“%6f”,&a); B)scanf(“%”,a);C)scanf(“%”,&a); D)scanf(“%f”,a);【22】unsigned a=0356,b;b=~a|a<<2+1;printf(“%x\n”,b);A)ffba B)ff71 C)fff8 D)fc0223.要使以下程序的输出结果为4,则a和b应满足的条件是【23】main(){int s,t,a,b;scanf(“%d%d”,&a,&b);s=t=1;if(a>0) s += 1;if(a>b) t= s + t;elseif(a==b) t=5;else t=2*s;printf(“%d\n”,t);}A)a>0并且a<b B)a<0并且a<bC)a>0并且a>b D)a<0并且a<b24.若int i;则以下循环语句的循环执行次数是【24】for (i=2;i==0;) printf(“%d”,i--);A)无限次 B)0次C)1次 D)2次【25】main(){int i;for(i=100;i<200;i++){if(i%5==0) continue;printf(“%d\n”,i);break;}}A)100 B)101C)无限循环 D)无输出结果【26】int i=1,a[]={1,5,10,9,13,7};while(a[i]<=10) a[i++]+=2;for (i=0;i<6;i++) printf(“%d”,a[i]);A)2 7 12 11 13 9 B)1 7 12 11 13 7C)1 7 12 11 13 9 D)1 7 12 9 13 7“abcde”赋初值给字符数组,不正确的语句是【27】A)char s[]=“abcde”; B)char s[]={’a’, ’b’,’c’,’d’,’e’,’\0’};C)char s[]={“abcde”}; D)char s[5]= “abcde”;28.若变量c为char类型,能正确判断出c为小写字母的表达式是【28】A) 'a'<=c<= 'z' B) (c>= 'a')||(c<= 'z')C) ('a'<=c)and ('z'>=c) D) (c>= 'a')&&(c<= 'z')【29】void fun(int *x, int *y){ printf("%d %d", *x, *y); *x=3; *y=4;}main(){ int x=1,y=2;fun(&y,&x);printf("%d %d",x, y);}A) 2 1 4 3 B) 1 2 1 2 C) 1 2 3 4 D) 2 1 1 2【30】main(){ int i, k, a[10], p[3];k=5;for (i=0;i<10;i++) a[i ]=i;for (i=0;i<3;i++) p[i ]=a[i *(i+1)];for (i=0;i<3;i++) k+=p[i] *2;printf("%d\n",k);}A) 20 B) 21 C) 22 D)2331.当执行下面的程序时,如果输入ABC,则输出结果是【31】main(){ char ss[10]="1,2,3,4,5";gets(ss); strcat(ss, "6789"); printf("%s\n",ss);}A) ABC6789 B) ABC67 C【32】A) int a[2][3]={0}; B) int a[][3]={1,2,3,4,5};C) int a[2][3]={{1,2},{3,4},{5,6}}; D) int a[2][3]={{1},{3,4,5}};33.若int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是【33】A) 2 B) 3 C) 4 D)无确定值34.下面程序段的运行结果是【34】int a[2][3]={1,2,3},i,j;for(i=0;i<2;i++)for(j=0;j<3;j++){a[i][j]=a[i*j%2][j]+a[i][(i+j)%3];printf(“%d,”,a[i][j]);}A) 2,4,6,2,0,8, B) 1,2,3,0,0,0,C) 1,2,3,2,0,6, D) 2,4,6,2,0,6,35.下面程序段的运行结果是【35】int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12};printf(“%d\n”,a[2][1]);A) 2 B) 4 C) 7 D)836.定义一个结构体变量时,系统分配给它的内存大小是【36】A)各成员所需内存量的总和B)成员中占内存量最大者所需内存容量C)结构中第一个成员所需内存容量D)结构中最后一个成员所需内存容量37.若typedef char STRING[255];STRING s;,则s是【37】A)字符指针数组变量B)字符数组变量C)字符变量D)字符指针变量38.若已定义:int *p,a;,则语句p=&a;中的运算符“&”的含义是【38】A) 位与运算B) 逻辑与运算C) 取指针内容D)取变量地址39.若有定义char *p,ch;则不能正确赋值的语句组是【39】A)p=&ch;scanf(“%c”,p);B)p=(char *)malloc(1); *p=getchar();C)*p=getchar();p=&ch;D)p=&ch;*p=getchar();40.下面程序段的运行结果是【40】char s[]=“ABC”;int i;for(i=0;i<3;i++) printf(“%s”,&s[i]);A) ABC B) ABCABCABC C) AABABC D)ABCBCC1.下列叙述中正确的是A) C语言编译时不检查语法B) C语言的子程序有过程和函数两种C) C语言的函数可以嵌套定义D) C语言所有函数都是外部函数0.5 C) 2L D) '\72'3.下列选项中,合法的C语言关键字是A) V AR B) cher C) integer D) default4.设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为A) 不定值B) 4 C) 3 D) 15.下面程序段的运行结果是【5】float y=0.0,a[]={2.0,4.0,6.0,8.0,10.0},*p;int i;p=&a[1];fo r(i=0;i<3;i++) y+=*(p+i);printf(“%f\n”,y);A) 12.0000 B) 28.0000 C) 20.0000 D) 18.00006.下面程序段的运行结果是【6】char c[]={‘a’,‘b’,‘\0’,‘c’,‘\0’};printf(“%s\n”,c);A) ab c B) ‘a’‘b’C) abc D) ab7.下面程序段的运行结果是【7】char s[10],*sp=“HELLO”;strcpy(s,sp);s[0]=‘h’;s[6]=‘!’;puts(s);A) hELLO B) HELLO C) hHELLO! D) h!8.若有定义int a[3][5],i,j;(且0≤i<3,0≤j<5),则a[i][j]的地址不正确表示是【8】A) &a[i][j] B) a[i]+jC) *(a+i)+j D) *(*(a+i)+j)9.若有定义int *p[4];,则标识符p是一个【9】A) 变量的指针变量B) 指向函数的指针变量C) 指向有四个整数元素的一维数组的指针变量D)指针数组名,有四个元素,每个元素均为一个指向整型变量的指针10.若有定义char *language[]={“FORTRAN”, “BASIC”,“PASCAL”,“JA V A”, “C”};则language[2]的值是【10】A) 一个字符B) 一个地址C) 一个字符串D) 不确定11.C语言规定,函数返回值的类型由【11】所决定。

C语言程序设计试卷(含答案)

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程序设计》试卷A(级)含答案

一学期《C程序设计》试卷A(级)含答案
C) p=getchar()。D) p=”string”。
16.阅读以下程序
#include <stdio.h>
voidmain()
{intcase。float printF。
printf(“请输入2个数:”)。
scanf(“%d%f”, &case, &printF)。
printf(“%d %f”, case, printF)。
C) struct student{ char name[20]。char sex。int age。} s1。
D) struct { char name[20]。char sex。int age。} s1。
15.设有定义:char *p。以下选项中能够使字符型指针p正确指向一个字符串的是:【 】
A) char str[]=”China”。p=str[0]。B) scanf(“%s”, p)。
19.以下数组定义中错误的是【 】
A)int x[][3]={0};
B)int x[2][3]={{l,2},{3,4},{5,6}};
C)int x[][3]={{l,2,3},{4,5,6}};
D)int x[2][3]={l,2,3,4,5,6};
20.定义数组int a[10],若整型类型变量长度是2个字节,数组a的首地址是0,则&a[5]的值是:【 】
C)break语句只能用在循环体内和switch语句体内
D)在循环体内使用break语句和continue语句的作用相同
12.在C语言中,函数返回值的类型最终取决于【 】
A)函数定义时在函数首部所说明的函数类型
B)return语句中表达式值的类型
C)调用函数时主函数所传递的实参类型

2010-2011学年第二学期c++试题A卷

2010-2011学年第二学期c++试题A卷

广东海洋大学 2010 —— 2011 学年第二学期《C++程序设计x1》课程试题课程号: 162011532101x1√ 考试√ A 卷√ 闭卷□ 考查□ B 卷□ 开卷题 号 一 二 三 四 五 总分 阅卷教师各题分数 30 14 10 26 20 100 实得分数一、选择题(每小题1分,30道小题,共30分),请将答案写在下面表格中。

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.17.18. 19. 20. 21. 22. 23. 24. 25.26.27.28.29.30.1.以下叙述中,不正确的是( )。

A .在C++程序中,逗号运算符的优先级最低B .在C++程序中,APH 和aph 是两个不同的变量C .若a 和b 类型相同,在计算了赋值表达式a=b 后,b 的值将赋给a,而b 的值不变D .当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值 2.下面四个选项中,均是合法的标识符的选项是 ( ) A .2a DO sizeof B ._sum Day lotus_1_2_3 C .void define +WORD D .if struct type 3.如有下列定义:int x[3][2]={1,2,3,4,5,6}; int (*P) [2];则下面说法中,正确的是( )。

A. P 是一个数组指针B. P 是一个指针数组C. P 含有两个数组元素D.P 指向数组x 4.下面是由if 构成的一个程序段:班级:姓名:学号:试题共10页加白纸 1张密封线GDOU-B-11-302if(a<b) { if(d= =c) x=1; }else x=2;该程序段所表示的逻辑关系对应的表达式是________。

A.⎩⎨⎧≠≥=<=)d c b (a 2d)c b (a 1x 且且 B. ⎩⎨⎧≠<=<=)d c b (a 2d)c b (a 1x 且且 C. ⎩⎨⎧≠=<=)d (c 2d)c b (a 1x 且 D. ⎩⎨⎧≥=<=)b (a 2d)c b (a 1x 且5.在C++语言中用( )表示逻辑值为“真”。

《C语言程序设计》期中考试试卷

《C语言程序设计》期中考试试卷

淮海工学院10 – 11 学年第 2 学期 C语言程序设计期中考试试卷单项选择题答题表题答题表中)1.以下叙述中正确的是()。

A) C 程序的基本组成单位是语句B) C 程序中的每一行只能写一条语句C)简单C 语句必须以分号结束D) C 语句必须在一行内写完在2.一个C程序是由____________。

A)一个主程序和若干个子程序构成B)一个或多个函数构成C)若干过程组成D)若干子程序组成3.以下选项中正确的定义语句是____________。

A)double a; b;B)double a=b=7;C)double a=7, b=7;D)double, a, b;4.计算机能直接执行的程序是()。

A)C源程序B)目标程序C)汇编程序D)可执行程序5.下列符号可以作为变量名的是____________。

A)+aB)*pC)_DAYD)next day6.设c是字符变量,则以下表达式正确的是____________。

A)c=666B)c='c'C)c="c"D)c="abcd"7.以下说法正确的是____________。

A)输入项可以为一个实型常量,如scanf("%f", 3.5)B)只有格式控制没有输入项也能进行正确输入,如scanf("%d")C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(%4.2f", &f)D)当输入数据时,必须指定变量的地址,如scanf("%f", &f)8.若a, b, c均定义为整型,要给它们输入数据,正确的输入语句是____________。

A)read(a, b, c);B)scanf("%d%d%d", a, b, c);C)scanf("%D%D%D", a, b, c);D)scanf(%d%d%d", &a, &b, &c);9.若有if (w) –x; else ++y; 则其中与w 等价的表达式是____________。

大学C语言程序设计考试试题及答案3套

大学C语言程序设计考试试题及答案3套

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,9 10、巳知字母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是( ) 。

2011C语言程序设计期末试卷A卷-48课时

2011C语言程序设计期末试卷A卷-48课时

━ ━ ━ ━ ━ ━ ━ ━ ━ 装 ━ ━ ━ ━ ━ ━ ━ ━ ━ 订 ━ ━ ━ ━ ━ ━ ━ ━ ━ 线 ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━防灾科技学院2010~ 2011学年 第二学期期末考试C 语言程序设计 试卷(A 卷) 使用班级 /112/113/121/122/131/132/141/142/211/212/213/311/312/313/531 答题时间 120分钟一、选择题(共15小题,每题2分,共30分。

请将答案写在答题纸上)1.以下叙述不正确的是( )。

A.一个C 语言源程序可以由一个或多个函数组成B.一个C 语言源程序必须包含一个main 函数C.C 语言源程序的基本组成单位是函数D.在C 语言源程序中,注释说明只能位于一条语句的后面 2.在程序设计中,流程图画法中的菱形表示( )。

A. 起止框B. 输入输出框C. 判断框D. 处理框 3.下列标识符中,( )是合法的用户标识符。

A. A#C B. getch1C.structD. stu*14.以下能正确定义且赋初值的语句是( )。

A.int n1=n2=10;B.char c=32;C.float f=f+1.1;D.double x=12.3E2.5; 5.以下运算符中不是关系运算符的是( )。

A.<B.>=C.!D.!= 6. 表达式(int)2.1416的值是( )。

A. 2B. 2.1C. 0D. 3 7.有关下述语句输出的判断中,正确的是( )。

char x='A'; printf("%d", x);A.赋值非法B.输出值不确定C.输出值为-32D.输出值为65 8.对if 语句中表达式的类型,下面正确的描述是( )。

A.必须是关系表达式或逻辑表达式B.必须是关系表达式或算术表达式C.可以是任意表达式D.必须是关系表达式 9.以下正确的描述是( )。

C程序设计 试卷A【考试试卷答案】

C程序设计 试卷A【考试试卷答案】

《C语言程序设计》试卷A适用专业:考试日期:年月日考试时间:120分钟考试形式:闭卷试卷分数:100分一、填空题(每空1分,共25分)1、变量名和指针作函数参数时,变量名传递的是,指针传递的是。

2、表达式!!5的值是______。

3、printf("%xn", (0x19 <<1) & 0x17);的输出结果是______。

4、只能被本文件中的其它函数所调用的函数称为,在定义此类函数时,在函数名和函数类型前应加关键字。

能被其他文件中的函数所调用的函数称为,在定义此类函数时,一般应在该函数名和函数类型前面加上关键字。

5、下列程序段的输出结果是_____。

char *st[ ]={"abcd","efgh","ijkl","mnop"};printf("%s", *(st+1)+1);6、表示“x≥y≥z”的C表达式是_______。

7、执行下列程序段,输出结果,。

#define f(a, b, x) a*x+bprintf("%d, %dn", f(3,2,1), f(6, 5, f(3, 2, 1)));8、若#define PRICE 30,则PRICE称为。

9、在C 语言程序中,在函数内部定义的变量称为______。

10、若变量c为char类型,则能正确判断出c为小写字母的表达式是。

11、执行putchar(getchar( ));语句时,当通过键盘输入字符A时,则屏幕上输出。

12、C语言中的三种基本程序结构是、和。

13、如果X = 3;Y = 5; Y += X + 8; ,则Y = 。

14、如果i = 3;j = 5; j = i + +; ,则j = , i = 。

15、如果char ch[][4] = {“abcd”,“efgh”,“ijklm”,“nopq”}; ,则*((ch+2)+2) = ,*(ch[1]+2) = , *(ch+1) 代表元素的地址。

C程序设计考试题A

C程序设计考试题A

C语言程序设计考试题A注意事项:1. 答题前,请先在试卷和机读卡上对应位置用钢笔准确清楚的填写上本人姓名和学号,机读卡的科目栏里填写年级和专业的简称,并用2B铅笔填涂学号(必须填在前8列,剩最右边的一列不填涂);2. 试卷答案必须用2B铅笔在机读卡上按对应题号准确、清楚涂写,答在试卷上无效;3. 本试卷共74个小题,机读卡上按【1】~【80】的编号顺序涂写。

【1】~【60】每题1分,【61】~【80】每题2分,共100分。

1.在C语言中,要求参加运算的数必须是整数的运算符是【1】(A)/ (B)* (C)%(D)=2.以下不正确的说法是【2】(A)全局变量、静态变量的初值是在编译时指定的(B)静态数值型变量如果没有指定初值,则其初值为0(C)局部变量如果没有指定初值,则其初值不确定(D)函数中的静态变量在函数每次调用时,都会重新赋初值3.已知:int a[ ]={1,2,3,4},x,*pt=&a[1]; 则执行语句“x=(*--pt)++;”之后,变量x的值为【3】(A)1(B)2 (C)3 (D)44.已知:int x,*p=&x; 则下列输入输出x值的函数调用中错误的是【4】(A)scanf(“%d”,&x); (B)scanf(“%d”,p);(C)printf(“%d”,x); (D)printf(“%d”,p);5.在说明一个结构体变量时系统分配给它的存储空间是【5】(A)该结构体中第一个成员所需的存储空间(B)该结构体中最后一个成员所需的存储空间(C)该结构体中占用最大存储空间的成员所需的存储空间(D)该结构体中所有成员所需的存储空间的总和6.C语言中函数返回值的类型是由【6】决定的(A)return语句中的表达式类型(B)调用该函数的主调函数类型(C)调用函数时临时(D)定义函数时所指定的函数类型7.设有数组定义:char array [ ]="China"; 则数组array所占的空间为【7】(A卷)第 1 页共13 页(A)4个字节(B)5个字节(C)6个字节(D)7个字节8.凡在函数中未指定存储类别的变量,其隐含的存储类别为【8】(A)自动(auto)(B)静态(static) (C)外部(extern) (D)寄存器(extern) 9.下列选项中是非法的C语言转义字符的是【9】(A)'\b' (B)'\' (C)'\037' (D)'\xf'10.下面说法正确的是【10】(A)函数定义可以嵌套,但函数调用不能嵌套(B)函数定义不可以嵌套,但函数调用可以嵌套(C)函数定义和调用均不能嵌套(D)函数定义和调用均可以嵌套11.语句“static int i=10;”中,“i=10”的含义是【11】(A)将变量i初始化为10 (B)只说明了一个静态变量(C)与“auto int i=10;”在功能上等价(D)给变量i赋值为1012.下述对C语言字符数组的描述中错误的是【12】(A)字符数组可以存放字符串(B)字符数组中的字符串可以进行整体输入输出(C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值(D)字符数组的下标从0开始13.有以下说明和语句,且0<=i<10,则下面【13】是对数组元素地址的正确表示int a[ ]={1,2,3,4,5,6,7,8,9,0},*p,i;p=a;(A)&(a+1) (B)a++ (C)&p (D)&p[i]14.若有以下说明和语句,则p2-p1的值为【14】int a[10],*p1,*p2;p1=a; p2=&a[5];(A)5(B)6 (C)10 (D)错误的表达式15.已知:char s[10],*p=s; 则在下列语句中,错误的语句是【15】(A)p=s+5; (B)s=p+5; (C)s[2]=p[4]; (D)p[0]=’a’;16.已知:char s[10]; int i=1; 则在下列引用数组元素的表达式中,错误的表示形式是【16】(A)s[i] (B)*(s+i) (C)*s (D)*((s++)+i)17.已知:char a[5],*p=a; 则正确的赋值语句是【17】(A)a=”abcd”; (B)*a=”abcd”; (C)p=”abcd”;(D)*p=”abcd”;18.设有int i; char c; float f; 以下结果为整数的表达式是【18】(A卷)第 2 页共13 页(A 卷) 第 3 页 共 13 页(A )i+f (B )i*c (C )c+f (D )i+c+f19. 以下使变量i 的运算结果为4的表达式是【19】 (A )int i=0,j=0;(B )int i=1,j=0; (i=3,(j++)+i);j=i=((i=3)*2);(C )int i=1,j=1;(D )int i=1,j=1;(j==1)?(i=1):(i=3);i+=j+=2;20. 设char ch; 以下正确的赋值语句是【20】 (A )ch=’123’;(B )ch=’\xff ’;(C )ch=’\08’;(D )ch=’’\’’;21. 设n=10,i=4,则赋值运算n%=i+1执行后,n 的值为【21】 (A )0(B )3(C )2(D )122. 逗号表达式(a=3*5,a*4),a+15运算后,a 的值为【22】 (A )60(B )30(C )15(D )9023. 若有说明int x,y; 不能实现以下函数关系的程序段是【23】(A )if(x<0) y=-1;(B )if(x>=0) else if(x==0) y=0;if(x>0) y=1; else y=1;else y=0;else y=-1;(C )y=0; (D )y=-1; if(x>=0)if(x!=0) { if(x>0) y=1; } if(x>0) y=1;else y=-1;else y=0;24. 设有说明int s[2]={0,1},*p=s; 则下列错误的C 语句是【24】 (A )s+=1;(B )p+=1;(C )*p++;(D )(*p)++;25. 为了判断两个字符串s1和s2是否相等,应当使用【25】 (A )if(s1=s2)(B )if(s1==s2) (C )if(strcmp(s1,s2)==0)(D )if(strcpy(s1,s2))26. 一个C 程序执行是从【26】(A )第一个函数开始,直到最后一个函数结束 (B )第一个语句开始,直到最后一个语句结束⎪⎩⎪⎨⎧>===<-=)0(1)0(0)0(1x y x y x y(C)从main()函数开始,在main()函数中结束(D)从main()函数开始,直到源文件中的最后一个函数27.下列选项中是C语言提供的合法的数据类型关键字的是【27】(A)string (B)Int (C)integer (D)char28.以下程序段int k=0; while(k=1) k++; while 循环执行的次数是【28】(A)无限次(B)有语法错,不能执行(C)一次也不执行(D)执行1次29.在下面的条件语句中(其中s1和s2表示C语言的语句),只有一个在功能上与其它三个语句不等价,它是【29】(A)if(p) s1; else s2; (B)if(p==0) s1; else s2;(C)if(p!=0) s1; else s2; (D)if(p==0) s2; else s1;30.若int k=10; 执行下列程序后,变量k的正确结果是【30】switch(k){case 9: k+=1;case 10: k+=1;case 11: k+=1;default: k+=1;}(A)10 B)11 (C)12 (D)1331.若数组名作实参而指针变量作形参,函数调用实参传给形参的是【31】(A)数组的长度(B)数组第一个元素的值(C)数组所有元素的值(D)数组第一个元素的地址32.以下错误的描述是【32】(A)break语句不能用于循环语句和switch语句外的任何其他语句(B)在switch语句中使用break语句或continue语句的作用相同(C)在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环(D)在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环33.f or(表达式1; ; 表达式3)可理解为【33】(A)for(表达式1; 0 ; 表达式3) (B)for(表达式1; 1 ; 表达式3)(C)for(表达式1; 表达式1 ; 表达式3) (D)for(表达式1; 表达式3 ; 表达式3)34.设int k; 则语句for(k=0;k=1;k++); 和语句for(k=0;k==1;k++); 执行的次数分别是【34】(A)无限次和0次(B)0次和无限次(C)都是无限次(D)都是0次(A卷)第 4 页共13 页35.有以下程序段:int n=0,p;do{ scanf(“%d”,&p); n++;} while(p!=12345 && n<3);此处do~while循环的结束条件是【35】(A)p值不等于12345并且n的值小于3(B)p值等于12345并且n的值大于等于3(C)p值不等于12345或者n的值小于3(D)p值等于12345或者n的值大于等于336.下列各程序段中,没有构成死循环的是【36】(A)int i=10; (B)int y=1;while(1) for(; y=10;y++);{ i=i+i%10;if(i==10) break;}(C)int k=100; (D)int s=4;do while(--s){ ++k; s--;} while(k>=100);37.以下四个关于循环语句的结论中,只有一个是错误的,它是【37】(A)可以用while语句实现的循环一定可以用for语句实现(B)可以用for语句实现的循环一定可以用while语句实现(C)可以用while语句实现的循环一定可以用do~while语句实现(D)可以用do~while语句实现的循环一定可以用while语句实现38.已知int j,i=1; 则执行j=-i++; 后,i和j的值为【38】(A)1 -1 (B)1 1 (C)2 -1 (D)2 1 39.以下正确的函数定义是【39】(A)double fun(int x,int y) (B)double fun(int x, y) { z=x+y; return z; } {int z; z=x+y; return z; } (C)fun (x, y) (D)double fun(int x, int y) {int x,y; double z; {double z;z=x+y; return z; } z=x+y; return z; }(A卷)第 5 页共13 页40.若x为整型变量,以下定义指针的正确语句是【40】(A)int p=&x; (B)int p=x; (C)int *p=&x; (D)p=x;41.在C语言中,如果下面的变量都是int类型,则输出的结果是【41】sum=a=5; a=sum++ , a++ , ++a;printf("%d\n",a);(A)5 (B)6 (C)7(D)842.以下正确的说法是【42】(A)实参变量与其对应的形参变量各占用独立的存储单元(B)实参变量与其对应的形参变量共占用一个存储单元(C)只有当实参变量与其对应的形参变量同名时才占用相同的存储单元(D)形参变量是虚拟的,不占用存储单元43.若i为整型变量,则以下循环执行次数是【43】for (i=2; i!=0;) printf("%d", i-- );(A)无限次(B)0次(C)2 次(D)1次44.对以下说明语句的正确理解是【44】int a[10]={1,2,3,4};(A)将4个初值依次赋给a[1]至a[4](B)将4个初值依次赋给a[0]至a[3](C)将4个初值依次赋给a[6]至a[9](D)因为数组长度与初值个数不一致,所以此语句不正确45.已知:char str1[20], str2[10]=”books”; 则在程序中能够将字符串“books”赋给数组str1的正确语句是【45】(A)str1=”books”; (B)strcpy(str1,str2);(C)str1=str2; (D)strcpy(str2,str1);46.以下不正确的说法是【46】(A)在不同函数中可以使用相同名字的变量(B)形式参数是局部变量(C)在函数内定义的变量只在本函数范围内有定义(D)在函数内的复合语句中定义的变量在本函数范围内有定义47.已知一个函数的定义如下:double fun(int x, double y){ ……}则该函数正确的函数原型声明为【47】(A卷)第 6 页共13 页(A 卷) 第 7 页 共 13 页(A )double fun(int x; double y) ; (B )fun(int x,double y); (C )double fun(int, double);(D )fun(x,y);48. 若已定义:int a[10],*p=a; 并在以后的语句中未改变p 的值,不能表示a[1] 地址的表达式是【48】 (A )p+1(B )a+1(C )a++(D )++p49. 要在C 中求)30sin( 的值,则可以调用库函数,格式为【49】 (A )sin(3.14159/6) (B )sin(30) (C )sin(double(30))(D )sin(30.0)50. 在一个源文件中定义的外部变量的作用域【50】 (A )本文件的全部范围(B )本程序的全部范围(C )从定义该变量的位置开始至本文件结束 (D )本函数的全部范围 51. 已知函数fun 的定义为:void f(){ …… }则函数定义中void 的含义是【51】 (A )执行函数f 后,函数没有返回值 (B )执行函数f 后,函数不再返回(C )执行函数f 后,可以返回任意类型的返回值 (D )执行函数f 后,函数返回void 类型的值52. 若有定义:int a[10]; 则对数组a 中元素的正确引用是【52】 (A )a[10](B )a[4.8](C )a(5)(D )*(a+2)53. 以下不正确的定义语句是【53】 (A )double x[5]={2.0,4.0,6.0,8.0,10.0}; (B )int y[5]={0,1,3,5,7,9}; (C )char c1[ ]={‘1’,’2’,’3’,’4’,’5’};(D )char c2[ ]={‘\x10’,’\xa ’,’\x8’};54. 有两个字符数组a,b ,则以下正确的输入语句是【54】 (A )gets(a,b);(B )scanf(“%s,%s ”,a,b); (C )scanf(“%s,%s ”,&a,&b);(D )gets(&a); gets(&b);55. 已知:char *str1=”abcde ”, *str2=”xyz ”; 则执行语句:printf(“%d ”,strlen(strcpy(str1,str2)));输出结果是【55】(A )9(B )3(C )5(D )856. 调用strlen(“abcd\0ef\0g ”)的返回值为【56】 (A )4(B )5(C )8(D )957. 在C 语言中进行乘方运算,例如求a 的3次方,可以使用【57】(A)a^3 (B)a**3 (C)pow(a,3)(D)power(a,3)58.以下对一维整型数组a的正确说明是【58】(A)int a(10); (B)int n=10,a[n]; (C)int n; (D)#define SIZE 10scanf(“%d”,&n);int a[SIZE];int a[n];59.已知:int i=0,j=1,*p=&i,*q=&j; 其中错误的语句是【59】(A)i=*&j; (B)p=&*&i; (C)j=*p++; (D)i=*&q;60.以下关于结构体与共用体的说法,其中正确的是【60】(A)共用体每个成员分别占有自己的内存单元(B)结构体变量所占的内存长度等于最长的成员的长度,共用体变量所占内存长度是各成员占的内存长度之和(C)共用体同一个内存段可以存放几种不同类型的成员,但在某一时刻只能存放一个成员(D)结构体类型可以出现在共用体类型的定义中,但共用体不能出现在结构体类型定义之中61.以下程序的作用是将给出的字符按其格式读入数组ss中,然后输出行列号之和为3的数组元素。

2011年《C语言程序设计》期末考试A卷答案

2011年《C语言程序设计》期末考试A卷答案

华中科技大学文华学院2010~2011学年度第二学期《C语言程序设计》参考答案、评分标准专业:全院使用范围:本\专科考试时间:2011年7月2日卷型:A卷考试方式:闭卷课程性质:必修一、选择题(每小题2分,共20分)1~5: C D C B C6~10: A B D A D二、把下列数学式子写成C语言表达式(每小题2分,共10分)1. sqrt(s*(s-a)*(s-b)*(s-c))2. 2*sqrt(x)+(a+b)/(3*sin(x))3. exp(x)-log(x)/log(2)4. 2*3.14*r+3.14*r*r+cos(3.14/180*45)5. fabs(-pow(x,5))三、阅读程序,写出运行后的输出结果(每题4分,共20分)1. 结果:62. 结果:***3. 结果:2,14. 结果:00005. 结果:64四、编程题(每小题10分,共40分)1.#include <stdio.h>void main(){int year;scanf("%d",&year);if(year%400==0||(year%4==0&&year%100!=0))printf("%d is a leap year\n",year);elseprintf("%d is not a leap year\n",year);}2. #include <stdio.h>void main(){int m=0,n=0;char c;while((c=getchar())!='\n'){if(c>'A'&&c<='Z')m++;if(c>='a'&&c<='z')n++;}printf("m=%d,n=%d,max=%d\n",m,n,m<n?n:m); }3.#include <stdio.h>void main(){int a[10]={1,2,3,4,5,6,7,8,9,10};int i,n,m,x;n=0,m=9;scanf("%d",&x);while(n<=m){i=(n+m)/2;if(a[i]==x)break;if(a[i]<x)n=i+1;if(a[i]>x)m=i-1;}if(a[i]!=x)printf("No found");elseprintf("%d,%d\n",i,a[i]);}4.#include <stdio.h>void strcat1(char p[], char q[]){int i=0,j=0;while(p[i]!='\0')i++;while(q[j]!='\0'){p[i]=q[j];i++,j++;}p[i]='\0';}void main(void){char a[20],b[10];printf("请输入两个字符串:\n");gets(a);gets(b);strcat1(a,b);printf("\n连接后的字符串为:%s\n",a);}五、填空(每空2分,共10分。

河北农业大学2010-2011学年本科C语言期末考试真题及答案

河北农业大学2010-2011学年本科C语言期末考试真题及答案

河北农业大学课程考试试卷2010—2011学年第2学期 2010 级 本科专业 卷别:A考试科目: C 语言程序设计 考核方式: 闭卷考试 姓 名: 学号: 专业班级: (注:考生务必将答案写在答题纸上,写在本试卷上无效)本试卷共( 4 )页一、选择题(共30分,每题1分)1、()是C 程序的基本构成单位。

A 、函数B 、函数和过程C 、超文本过程D 、子程序2、C 语言规定,必须用()作为主函数名。

A 、functionB 、includeC 、mainD 、stdio3、以下()是C 语言提供的关键字。

A 、continueB 、procedureC 、beginD 、append4、下列可以作为变量名的是()。

A 、+aB 、123425eC 、a3BD 、5e+05、在C 语言中以下合法的字符常量是()。

A 、‟\0824‟B 、‟\x243‟C 、‟0‟D 、”\0”6、设d 为字符变量,则下列表达式不正确的是()。

A 、d=‟m ‟B 、d=97C 、d=”a ”D 、d=‟\101‟7、表达式(double )(23/3)的值是()。

A 、4 B 、7.0 C 、7.7 D 、3 8、下列程序的输出结果是()。

main( ){ int x=4, y=0,z; x*=3+2;printf(“%d\t ”,x); x*=(y= =(z=4));printf(“%d ”,x);}A 、14 40B 、20 0C 、20 4D 、14 49、已知year 为整型变量,不能使表达式(year%4==0&&year%100!=0)||(year%400= =0)的值是1的整型数据是()。

A 、1990B 、1988C 、1992D 、2000 10、若x=4,y=z=3,则下列表达式的值分别是()。

(1)(z>=y>=x)?1:0(2)y+=z, x*=yA 、0 24B 、1 8C 、0 8D 、1 1211、若已定义a 和b 为double 类型,则表达式:a=1,b=a+3/2的值是()。

2011-2012学年度第二学期C语言程序设计期末考试试卷和答案

2011-2012学年度第二学期C语言程序设计期末考试试卷和答案

************(本科)试卷(A 卷)2011--2012学年第 二 学期《C 程序设计》试卷开课单位:计算机学院,考试形式:闭卷,允许带 入场40分每题1分):答案必须填写在答题卡的相应位置上,否则不得分。

.C 语言中字符型(char )数据在内存中的存储形式是________。

A 、原码 B 、反码 C 、补码 D 、ASCII 码 .C 语言中基本的数据类型包括________。

A 、整型、实型、逻辑型 B 、整型、实型、字符型 C 、 整型、字符型、逻辑型 D 、整型、实型、逻辑型、字符型 .在C 语言中,int 类型数据在内存中占用________。

A 、2字节 B 、4字节 C 、由编译系统决定 D 、由用户决定 .运算符有优先级,C 语言中关于运算符优先级的正确叙述是________。

A 、逻辑运算符高于算术运算符,算术运算符高于关系运算符; B 、算术运算符高于关系运算符,关系运算符高于逻辑运算符; C 、算术运算符高于逻辑运算符,逻辑运算符高于关系运算符; D 、关系运算符高于逻辑运算符,逻辑运算符高于算术运算符。

.下面关于C 语言语句的叙述,错误的是________。

A 、C 语言一行可以允许写多条语句; B 、C 语言语句用分号结束; C 、语句一行写不下时,可以用逗号换行 ; D 、语句一行写不下时,可在任意一空格处回车换行 。

.下面数据中不属于字符型常量的是________。

A 、“\n ” B 、…\0‟ C 、…A ‟ D 、…\t ‟.11.以下选项中,当x 为大于1的奇数时,值为0的表达式__________ 。

A 、 x%2==1B 、 x/2C 、x%2!=0D 、x%2==0 .C 语言源程序名的后缀是__________ 。

A 、 .exeB 、 .C C 、 .objD 、 .cp9.设所有变量均为int型,则表达式(a=5,b=2,b++,a-b)的值是________。

(完整版)广州大学2011级别C程序设计I考试卷答案(A)

(完整版)广州大学2011级别C程序设计I考试卷答案(A)
fprintf(fp1, "abc");
fclose(fp1);
12.设有如下变量定义“int k=7,x=12;”,则能使值为3的表达式是(C )
A、x%=(k%=5) B、x%=(k-k%5) C、(x%=k)-(k%=5) D、x%=k-k%5
13.以下函数的功能是(A )
void fun(char *p2,char *p1)( while ((*p2=*p1)!=' \0'){p1++;p2++;}}
#define N 9
void main(void)
{ int i,j,iInsert,iStu[N+1]={90,88,85,80,75,70,65,60,55};
scanf("%d”,&iInsert);
for(i=0;i<N;i++)
if(iInsert<iStu[i]) ; else break; for(j=N;j>i;j--)
院、系领导
审批并签名
A卷
广州大学
C

1.C语言程序的3种基本结构是顺序结构、选择结构和(C )结构
A、嵌套B、递归C、循环D、转移
2.下列叙述中错误的是(D)
A、C语句必须以分号结束
B、复合语句在语法上被看做一条语句
C、赋值表达式末尾加分号就构成赋值语句
Dk空语句出现在任何位置都不会影响程序运行
3.C语言中,运算对象必须是整型数的运算符是(B )
max = a[0];
for (i = 1; i < n; i++)
if (a[i] > max)

C语言程序设计A卷(答案)

C语言程序设计A卷(答案)

贵州大学2010-2011学年第二学期考试试卷A(答案)C语言程序设计注意事项:1.请考生按要求在试卷装订线内填写姓名、学号和年级专业。

2.请仔细阅读各种题目的回答要求,在规定的位置填写答案。

3.不要在试卷上乱写乱画,不要在装订线内填写无关的内容。

4.满分100分,考试时间为120分钟。

一.单项选择题(本大题共20小题,每小题1分,共20分)1.以下描述中不属于C语言特点的是(B )。

A.预算符丰富B.不允许直接访问物理地址C.语法限制不太严格D.是完全模块化和结构化语言2.在C语言中,回车符是(A )。

A.\n B.\t C.\f D.\b3.下列类型不属于基本类型的是(B )。

A.整形B.指针类型C.浮点型D.空类型4.C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符(C )。

A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母,数字和下划线中任意字符5.下列数据中,不合法的C语言实型数据的是(C )。

A.0.123 B.123e3 C.2.1e3.5 D.789.0 6.下列二进制数据中,-10的补码是( D )。

A.1111111111111001 B.1111111111111100 C.1111111111111010 D.11111111111101107.若变量已正确定义并赋值,以下符合C语言语法的表达式是(B )。

A.a:=b+1 B.a=b=c+2 C.int 18.5 D.a=c+7=c + b 8.以下说法不正确的是(B )。

A.实参可以是常量、变量、表达式B.形参可以是常量、变量、表达式C.实参可以为任意类型D.形参应与对应的实参一致9.下面的运算符中,优先级最高的运算符是( C )。

A.<= B.= C.% D.&&10.初始化i=2,表达式(++i)*3+(i++)的值等于(B )A.11 B.12 C.13 D.1411.以下对二维数组a的正确说明是(C )。

2011年C语言程序设计试卷A卷(正式用卷)

2011年C语言程序设计试卷A卷(正式用卷)

计算机学院2010-2011学年第2学期C 语言程序设计考试试卷A 卷(或B 卷): A 卷 闭卷(或开卷):闭卷 考试时间:2011年 7 月 7日专业 班级 学号 学生姓名注意:试卷后面附有运算符的优先级和结合性表。

一、 单项选择题(在下面每小题的A 、B 、C 、D 四个选项中,只有一个选项是正确的,请选择正确的选项并填写到括号内,选择正确得分。

本大题共10小题,每小题1分,共10分。

)1、C 语言中,十进制常量1024用八进制表示是 【 】A 、01024B 、01000C 、02000D 、04002、下列选项中可以作为标识符使用的是 【 】A 、x20uB 、3xC 、@hustD 、void3、下列选项不能作为常量使用的是 【 】A 、'\39'B 、"\xaL"C 、.2LD 、0XaBu 4、在16位系统中,设有声明语句 int a=-1; 则变量a 的二进制形式为 【 】A 、1111111111111111B 、1000000000000000C 、0000000000000000D 、0111111111111111 5、下列关于函数的说法不正确的是 【 】A 、函数形参被当作局部变量使用,且存储类型不可能是static ;B 、函数实参表达式值的类型与对应形参类型不一致时,将转换为与形参一致;C 、函数定义时,返回值类型前的static 表明函数返回值的生命周期为程序 运行的整个期间;D 、return 后面表达式值的类型与函数返回值类型不一致时,将转换为与返回值类型一致。

6、以下不能正确进行字符串赋值的语句是 【 】A 、char s[]=”good!”;B 、char s[]={'g','o','o','d','!','\0'};C 、char *s=”good!”;D 、char s[5]=”good!”;7、 设有声明:char ch = 'a', *pc = &ch; void *pv;,则以下表达式不合法的是 【 】A 、pv = pcB 、pv = (void *)pcC 、pc = (char *)pvD 、*pv = *pc; 8、设有声明: enum {A, B=0, C, D, E=1} a;, 则不能赋给a 的值是 【 】A 、E+1B 、2C 、AD 、D+1 9、设仅file1.c 和file2.c 进行多文件编译,且file1.c 中有如下关于全局 【 】 变量的声明: int x; extern char ch;则file2.c 允许的关于全局变量的声明是 A 、int x; char ch; B 、extern int x; char ch; C 、int x; extern char ch; D 、extern int x; extern char ch; 10、打开D 盘根目录下user 子目录下a.txt 文本文件进行读写,正确的函数调用是 【 】A 、fopen(”d:\user\a.txt ”, ”r+”)B 、fopen(”d:\\user\\a.txt ”, ”r+”)C 、fopen(”d:\user\a.txt ”, ”r+”)D 、fopen(”d:\\user\\a.txt ”, ”rb ”)二、 多项选择题(下面每小题的A 、B 、C 、D 备选项中,有两个或两个以上的选项是正确的,请选择正确的选项并填写到括号内,多选、少选、错选均不得分。

河南理工大学-《C语言程序设计》2010-2011-2A(2011-5-26)试卷-及答案

河南理工大学-《C语言程序设计》2010-2011-2A(2011-5-26)试卷-及答案

河南理工大学2010~2011 学年第 2 学期《C语言程序设计》试卷(A卷)考试方式:闭卷本试卷考试分数占学生总评成绩的70 % 注:请将答案填写在答题纸上,写在试卷上,不得分。

一、单项选择题(每题1分,共30分) ,在每小题列出的四个选项中只有一个选项是符合题目要求的,请在答案卡上将正确答案所对应选项的字母涂黑。

1. 以下选项中正确的语句组是______。

A) char s[];s="book!" B) char *s;s={"book!"};C) char s[10];s="book!" D) char *s;s="book!";2.C语言源程序文件的后缀是______。

A) ".c " B) ".obj" C) ".exe" D) ".txt"3.以下选项中不正确的常量是______。

A)a B)'a' C)5 D)"b"4.下列不正确的转义字符是。

A)\\ B)\' C)074 D)\05.C语言程序设计中可以对程序进行注释,注释部分可以用______符号括起来。

A){ } B)[ ] C)/* */ D) */ /*6.在一个C程序中,main函数出现的位置是。

A)必须在程序的最后面B)可以在任意地方C)必须在程序的最前面D)必须在系统调用的库函数的后面7.若已定义x和y为double类型,则表达式x=2,y=x+3/2 的值是。

A)3.500000 B)3 C)2.000000 D)3.0000008.设x、y均为float类型变量,下面不正确的赋值语句是。

A)x=x+1; B)y=(x%2)/10; C)x*=y+8; D)x=y=0;9.若有以下定义,则能使其值为3的表达式是。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

A.10:20<CR>
B.10□20 <CR>
C.1020<CR>
D.10,20 <CR>
9. 阅读以下程序,当输入数据形式为:25,13,10<CR>,正确的输出结果为(A )
main( )
{int x,y,z; scanf("%d,%d,%d",&x,&y,&z); printf("x+y+z=%d\n",x+y+z);}
A.x+y+z=48
B.x+y+z=35
C.x+z=35
D.不确定值
10. 逻辑运算符两侧运算对象的数据类型( D )
A.只能是0和1
B.只能是0或非0正数
C.只能是整型或字符型数据
D.可以是任何类型的数据
11. 若运行时给变量x输入12,则以下程序的运行结果是( A )。

void main( )
{ int x,y;
scanf("%d",&x);
y=x>12?x+10:x-10;
printf("%d\n",y); }
A. 2
B. 22
C. 12
D. 10
12. 判断char型变量ch是否为大写字母的正确表达式是( C )
A.‘A’<=ch<=‘Z’
B.(ch>=‘A’)&(ch<=‘Z’)
C.(c h>=‘A’)&&(ch<=‘Z’)
D.(‘A’<=ch)AND(‘Z’>=ch)
13. 关于typedef的说法正确的是( D )
A. typedef和definede 的功能一样。

B. 用typedef声明的类型名不许使用小写字母表示。

C. 用typedef来创造一个新的类型名。

D. 用typedef声明新的类型名来代替已有的类型名。

14.下面程序运行的结果是(B )
main()
{ int a=5;
if (a>0) printf ("%d\n",a+2);
else printf ("%d\n",a-2); }
A.7.000000
B. 7
C. 3
D.3.000000
15.关于结构体、共同体的说法正确的是( C )
A. 结构体变量中起作用的是最后一次存放的成员。

B. 结构体变量的地址和它的各成员的地址都是同一地址。

C. 共同体变量所占内存长度等于最长的成员占的内存长度。

D. 共同体的每个成员分别占有自己的内存单元。

16. 下列说法正确的是(C )
A. 局部变量只能被一个函数使用。

B. 全局变量和局部变量都可以被任何函数使用。

C. 在函数内定义的变量是局部变量,在函数之外定义的变量是全局变量。

D. 在函数外定义的变量是局部变量,在函数内定义的变量是全局变量。

17. C语言中while和do-while循环的主要区别是( A )
A.do-while循环体至少无条件执行一次。

B.while 循环体至少无条件执行一次。

C.do-while先判断后再执行循环体。

D.do-while和while的执行效果相同。

第2页(共6 页)。

相关文档
最新文档