c语言程序设计期末试题B(含答案)

合集下载

C语言程序设计课程复习考试试题及答案B

C语言程序设计课程复习考试试题及答案B

《C语言程序设计》复习纲要B一、单选题1. 以下对C语言的表述错误的是()。

A. C语言适合于数据管理领域B. C语言是一种结构化语言C. C语言适合编写操作系统D. C语言是伴随UNIX系统发展起来的2. C语言的数据类型中以*表示()数据类型。

A. 空类型B. 结构体C. 指针D. 实型3. 常数的书写格式决定了常数的类型和值,0x1011是()。

A. 8进制整型常量B. 字符常量C. 16进制整型常数D. 2进制整型常数4. 表达式 18/4*sqrt(4.0)/8值的数据类型是()。

A. intB. floatC. doubleD. 不确定5. 下列不可作为C语言赋值语句的是()。

A. x=3,y=5;B. a=b=6;C. i--;D. y=int(x)6. 以下程序运行后,输出结果是()。

main( ){char *s="abcde";s+=2;printf("%ld\n",s);}A. cdeB. 字符c的ASCII码值C. 字符c的地址D. 出错7. 以下说法中正确的是()。

A. #define和printf都是C语句B. #define是C语句,而printf不是C. printf是C语句,但#define不是D. #define和printf都不是C语句8. 下面程序的输出是()。

main( ){ int y=9;for( ; y>0; y--){ if (y%3==0){ printf("%d", --y);continue;}}}A. 741B. 852C. 963D. 8754219. 循环语句不包括()。

A. for;B. case;C. goto;D. continue;10. 设已有定义: char *st="how are you"; 下列程序段中正确的是()。

A. char a[11], *p; strcpy(p=a+1,&st[4]);B. char a[11]; strcpy(++a, st);C. char a[11]; strcpy(a, st);D. char a[], *p; strcpy(p=&a[1],st+2);二、多选题1. 以下对C语言的表述正确的是()。

c语言程序设计期末试题及答案

c语言程序设计期末试题及答案

c语言程序设计期末试题及答案一、选择题(每题2分,共20分)1. 以下选项中,哪个是C语言中正确的注释方式?A. // 这是注释B. /* 这是注释 */C. //这是注释D. /*这是注释答案:A2. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str[6] = "Hello";C. char str[] = "Hello", "World";D. char str[6] = "Hello", "World";答案:A4. C语言中,以下哪个函数用于将字符串连接起来?A. strcat()B. strcpy()C. strcmp()D. strlen()答案:A5. 在C语言中,以下哪个选项表示“不等于”?A. ==B. !=C. =D. <=答案:B6. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable_2D. variable-2答案:B7. C语言中,以下哪个关键字用于声明一个函数?A. defineB. functionC. voidD. int答案:C8. 在C语言中,以下哪个选项是正确的二维数组定义方式?A. int arr[2][3];B. int arr[][] = {1, 2, 3, 4, 5, 6};C. int arr[2][3] = {1, 2, 3};D. int arr[2][3] = {{1, 2, 3}, {4, 5, 6}};答案:D9. C语言中,以下哪个函数用于计算数组中元素的个数?A. sizeof()B. count()C. length()D. size()答案:A10. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. open()C. fileopen()D. file()答案:A二、填空题(每题2分,共20分)1. C语言中,定义一个整型变量并赋值为10的语句是____。

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(){intx;floaty;scanf(”%3d%f”,&x,&y);}A、12345B、123C、45D、3458.若有以下定义inta,b;floatx,则正确的赋值语句是()A、a=1,b=2B、b++;C、a=b=5D、b=int (x);9.以下程序的执行结果是()#include〈stdio.h〉{inti=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(){charc1='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程序设计期末考试试卷B及答案

C程序设计期末考试试卷B及答案

一、判断题(每小题1分,共10个小题,共10分)1、fopen函数的作用是打开文件。

( )2、’好'是合法的字符常量。

()3、do…while语句循环体至少执行一次.( )4、函数必须有形参。

()5、对文件进行读写操作之前必须打开该文件.()6、定义数组时,数组长度可以是变量。

( )7、表达式max=(a〉b)?a:b的作用是将a和b二者中较大值赋给max.()8、函数可以嵌套定义。

()9、内存单元的地址与内存单元中的内容是两个不同的内容。

( )10、假设有定义float str[10],则str[10]是对数组元素的合法引用。

()二、选择题(每小题2分,共35个小题,共70分)1、有以下程序,程序运行后的输出结果是()2、以下程序的运行结果是()3、有如下程序,该程序的输出的结果是()【A】12 【B】15 【C】14 【D】134、执行以下程序后,输出的结果是()5、如果函数体中没有return语句,则正确的说法是()【A】函数不能返回。

【B】可以用continue语句返回.【C】可以用break语句返回. 【D】函数执行最后一条语句后返回. 6、以下不正确的说法为( )【A】在不同函数中可以使用相同名字的变量。

【B】形式参数是局部变量。

【C】在函数内的复合语句中定义的变量在本函数范围内有效。

【D】在函数内定义的变量只在本函数范围内有效。

7、下列程序的运行结果是( )8、以下关于宏替换叙述中,错误的是()【A】宏名可以由+号组成【B】替换文本中可以包含已定义过的宏名【C】宏替换占用编译时间【D】宏替换只能是字符替换9、x,y,z被定义为int型变量,若要从键盘给x,y,z输入数据,正确的输入语句是()【A】INPUT x,y,z;【B】read("%d%d%d”,&x,&y,&z);【C】scanf("%d%d%d”,x,y,z);【D】s canf(”%d%d%d",&x,&y,&z);10、设x,y均为整型变量,且x=10,y=3,则以下语句的输出结果是()11、下列能正确表示“x的取值范围在[1,10]或[200,210]之间为真,否则为假”的表达式是。

中国石油大学《C语言程序的设计》期末复习试题与答案

中国石油大学《C语言程序的设计》期末复习试题与答案

《C语言程序设计》期末复习题一、选择题1.能将高级语言编写的源程序转换成目标程序的是()A.程序 B. 解释程序 C. 编译程序 D.编辑程序2.设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是()。

A. 10<a<15B. a==11||a==12||a==13||a==14C. a>10&&a<15D.!(a<=10)&&!(a>=15)3.当调用函数时,实参是一个数组名,则向函数传送的是( )。

A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值4.执行下面的程序段后,k的值是()int k=1,n=325;do { k*=n%10;n/=10;}while(n);A. 3B. 30C. 523D. 3255.若有以下数组说明,则i=6;a[a[i]]元素数值是()。

int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.3B.8C.6D.56.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是()A. for(i=1,p=1;i<=5;i++) p*=i;B. for(i=1;i<=5;i++){ p=1; p*=i;}C. i=1;p=1;while(i<=5){p*=i; i++;}D. i=1;p=1;do{p*=i; i++; }while(i<=5);7.若有:int a[][3]={{1,2,3},{4,5},{6,7},{8}}; 则数组a的第一维的大小为: ( ) A. 12 B. 3 C. 4 D.无确定值8.设有如下程序段,则执行p=s;语句后,以下叙述正确的是( )。

char s[20]= “Bejing”,*p;p=s;A.可以用*p表示s[0]B.s数组中元素的个数和p所指字符串长度相等C.s和p都是指针变量D.数组s中的容和指针变量p中的容相等9.以下正确的函数定义是( )。

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案《C语言程序设计》期末考试试卷参考答案一、判断题(10分)1、对2、对3、错4、错5、对6、错7、错8、错9、错10、错二、填空题(30分,,1到10题1分1空,10到18题2分1空)1.2.5 2. a!=0&&b!=0 3. m=1b 4. windows 95 5. x[i]>='A'&&x[i]<='Z' 6.234567 7.文件的首纪录前8、struct tree *Ltree,*Rtree 9. i<=10010. char a[10]="continue"; 11. p*pow(1+r,5) 12. 'D' 13. 10、514.#define utol(ch) ch=ch>='A'&& ch<='Z' ? ch+'a'-'A':ch15.首行第i+1个元素的地址,第i+1行的首地址,a[0][0]的值16.p=(int*)mallo(n);17. (-b+sqrt(b*b-4*a*c))/2/a 18. float(*fg)(float **,int,int);三、单项选择题(在每小题的四个备选答案中选出一个正确的,10分))1、A2、B3、C4、B5、D6、A7、A8、B9、C 10、A四、程序阅读题(20分,每题4分)1、 A C E G2、 x=3 y=23、the two string are same:fthe two string are same:r4、 K=85、1《C语言程序设计》期末考试试卷及参考答案一、判断题(10分)1、C语言是一种结构化程序设计语言。

()2、在标准C中,整型变量与字符变量是可以通用的。

()3、在标准C中,“=”是判断两个数是否相等。

(完整版)C语言程序设计试卷及参考答案

(完整版)C语言程序设计试卷及参考答案

《C语言程序设计》期末考试模拟试卷及参考答案(B)2012.6.5整理一、选择题(每题2分,共30分)1、# include <stdio.h>的结果是______void main ( ){ int a[3][3]={1,2,3,4,5,6,7,8,9};int s=0,i;for (i=0;i<3;i++)s+=(*(a+i))[i];printf("%d",s);}A.9B.12C.14D.15参考答案—D2、设有说明语句:char a= '\123abc';则变量a __________A. 包含7个字符B.包含6个字符C. 包含5个字符D. 包含4个字符参考答案—D3、有以下程序段int k=0while(k=1)k++;while 循环执行的次数是_____A. 无限次B.有语法错,不能执行C. 一次也不执行D. 执行1次参考答案—A4、在C语言中,_____。

A.函数定义可以嵌套,但函数调用不能嵌套B.函数定义不可以嵌套,但函数调用可以嵌套C.函数定义和调用均不能嵌套D.函数定义和调用均可以嵌套参考答案—B 5、以下叙述正确的是________A)do-while语句构成的循环不能用其它语句构成的循环代替。

B)do-while语句构成的循环只能用break语句退出。

C)用do-while语句构成的循环,在while后的表达式为非零时结束循环。

D)用do-while语句构成的循环,在while后的表达式为零时结束循环。

参考答案—D6、以下关于函数叙述中,正确的是。

A.在函数体中可以直接引用另一个函数中声明为static类别的局部变量的值B.在函数体中至少必须有一个return 语句C.在函数体中可以定义另一个函数D.在函数体中可以调用函数自身参考答案—D7、以下数组声明语句中正确的是。

A.int a,a[n];B.int a[ ];C. int a[2][3]={{1},{2},{3}};D.int a[ ][3]={{1},{2},{3}};参考答案—C8、以下不能正确进行字符串赋初值的语句是________A.char str[5]= "good!";B.char str[ ]= "good!";C.char *str="good!";D.char str[5]={ 'g','o','o','d'};参考答案—A9、以下关于switch语句和break语句的描述中,只有______是正确的。

第学期《C语言程序设计》期末考试题B卷答案new

第学期《C语言程序设计》期末考试题B卷答案new

2005—2006学年第二学期《程序设计语言(C)》参考答案和评分标准专业班级姓名学号开课系室软件工程系考试日期 2006年7月3日程序设计语言(C)试卷(B 卷)答题卡说明:1.选择题和判断题必须填在答题卡上才有效,综述题写在指定位置。

2.本试卷共13页,不得拆开。

一、 单项选择题(正确的答案涂黑或画圈,20分)二、 读程序填空题(在空格处填写正确答案,20分)三、编程题(60分,在下面的空白处编写程序)1、编程计算下面函数的值,其中x 由键盘输入。

(12分) -1 x≤-1 y= xe -1<x<1(x+1)2x≥1参考答案:#include <math.h>main(){int x。

float y。

printf("input x \n")。

scanf("%d",&x)。

if(x<=-1) y=-1。

else if(x>-1 && x<1) y=exp(x)。

else y=(x+1)*(x+1) 。

printf("%f",y)。

}[评分标准]:头文件、程序框架占2分;读入x值占1分;每个分支语句各占3分,共9分。

2.一球从200M高度自由落下,每次落地后反跳回原高度的一半再落下,求它在第15次落地时,共经过多少M?第15次反弹多高?(6分)参考答案:#include <stdio.h>main( ){ float sn=200.0,hn=sn/2。

int n。

for(n=2。

n<=15。

n++){ sn=sn+2*hn。

hn=hn/2。

}printf(“第15次落地共经过%fM\n”,sn)。

printf(“第15次反弹%fM\n”,hn)。

}[评分标准]:头文件、程序框架占2分;变量初始化占1分;for循环占3分。

3.编写一函数sum,求二维数组(M*M)上三角(含对角线)之和。

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

c语言程序设计期末试题B(含答案) 一 单项选择题(每小题1分,共10分) 1. A 2. C 3. D 4. A 5. B 1.以下4组用户定义标识符中,全部合法的一组是( ) A)_total clu_1 sum B)if -max turb C)txt REAL 3COM D)int k_2 _001 2.以下程序的输出结果是( ) #include main( ) { int a = 1, b = 2, c = 3; printf(“%d”, c>b>a); } A) 2 B) 1 C) 0 D) 3 3.以下正确的叙述是( ) A) 在C语言中,main函数必须位于文件的开头 B) C语言每行中只能写一条语句 C) C语言本身没有输入、输出语句 D) 对一个C语言进行编译预处理时,可检查宏定义的语法错误 4.设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( ) A)scanf("%d",pa); B)scanf("%d",a); C)scanf("%d",&pa); D)scanf("%d",*pa); 5.若有以下程序段, int c1=1,c2=2,c3; c3=1.0/c2*c1; 则执行后,c3中的值是( ) A) 0 B) 0.5 C) 1 D) 2 6. D 7. D 8. A 9. C 10. D

6.能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是( ) A) a>=10 or a<=0 B)a>=0|a<=10 C)a>=10 &&a<=0 D)a>=10‖a<=0 7.执行下面的程序时,将1、2、3、4分别赋给a、b、c、d,正确的输入是( ) main( ) { int a,b,c,d; scanf(“%d,%d,%d%d”,&a,&b,&c,&d); … } A)1 2 3 4 B)1 2 3,4 C) 1,2,3,4 D) 1,2,3 4 8.有以下程序段 main( ) { int k=0; while(k=1) k++; } 则while循环执行的次数是( ) A) 无限次 B) 有语法错,不能执行 C) 一次也不执行 D) 执行1次 9.以下程序的输出结果是( ) #include main( ) { int a = 5, b = 4, c = 6, d; printf(“%d”,d=a>b?(a>c?a:c): b); } A) 5 B) 4 C) 6 D) 不确定 10.下面是对数组a的初始化,其中不正确的是( ) A)a[5]={"ABCD"} B)a[5]={'A','B','C','D'} C)a[5]="" D)a[5]="ABCDE" 二、填空题(每空2分,共32分) 1.结构化程序设计中的三种基本结构是 [1] 、 [2] 、 [3] 。 2.C程序的基本组成单位是 [4] 。 3.标识符的第一个字符必须是 [5] 或 [6] 。 4.实常数123.457的规范化指数表示形式是 [7] 。 5.表达式7/2的结果是 [8] 。表达式7%2的结果是 [9] 。 6.定义一个整型数组a[10],则下标最大的数组元素为 [10] 。 7.在函数的递归调用过程中,要使递归过程不是无限制进行下去,必须具有 [11] 。 8.C语言提供了 [12] 命令用来实现“文件包含”的操作。 9.已知:char c[ ]={“china”};将字符数组c中整个字符串一次输出的语句书写格式为 [13] 。 10.表达式4>3 && 7<5-!0的值为 [14] 。 11.按照变量在函数中作用域不同,可以将变量分为 [15] 和 [16] 。 1. 顺序结构、选择结构、循环结构。 2. 函数 3. 字母、下划线 4. 1.23457e2或1.23457E2 5. 3、1 6. a[9] 7. 使递归结束的条件 8. #include 9. printf(“%s”,c) 10. 0 11. 全局变量、局部变量

三、计算题(要求写出步骤)(每题4分,共8分) 1. 设int a=12,求出表达式a+=a-=a*a运算后a的值. 2. 设a=2,b=3,x=3.5,y=2.5 求算术表达式(float)(b-a)/2+(int)x%(int)y的值 三、计算题(要求写出步骤)(每题4分) 1. a-=a*a a=a-a*a a=12-144= -132 a+=-132 a=a+(-132) a=-132-132= -264 2. 1.0/2+3%2=0.5+1=1.5

四、读下列程序,写出程序的运行结果(4×3=12) 1.已知字符A的ACSII码值为65,写出以下语句的输出结果 main( ) { char ch=‘A’; printf("%c,%d",ch,ch+3); } 四、读下列程序,写出程序的运行结果(每题3分) 1. 1. A,68 2. 2. 11 11 3. 3. 24 4. 4. 8,4

2. main( ) { int a = 10; printf(“%d ”, ++a); printf(“%d ”, a--); } 3.main( ) { int t=1; for(i=1 ; i<5 ; i++) t=t*i; printf("%d",t); } 4. f(int *a, int b) {b=b+*a; *a=*a+b;} main( ) { int x=2,y=4; int *p; p=&x; f(p,y); printf("%d ,%d",x,y); } 五、程序填空(每空2分,共14分) 1.*m 2.*m=*n 3. temp 4. x,y 5. i=i+2 6. m=i*t 7. t=-t

1.下列程序段以函数swap( )调用的形式实现两个变量值的互换,请填空完善程序。 swap(int * m,int * n) { int temp; temp= [1] ; [2] ; *n= [3] ; } main( ) { int x,y; scanf(“%d,%d”,&x,&y); swap( [4] ); printf(%d,%d”,x,y); } 2.下面程序是计算1-3+5-7+…… -99+101的值,请填空完善程序。 main( ) { int i,m,t=1,s=0; for (i=1;i<=101; [5] ) { [6] ; s=s+m ; [7] ;} printf(“%d\n”,s); } 六、编程题:(共24分) 1.编程求1!+2!+3!+……+50!的值。(6分) 2.用函数的递归调用方法求下列函数式的值(要求n由用户输入),递归公式为:(8分) 1 (n=1) total(n)= total(n-1)+n+1 (n>1) 3.编写程序输出下列形式的杨辉三角形的前10行。(10分) 1

1 1 1 2 1 1 3 3 1 1 4 6 4 1 …… C语言模拟试卷二答案及评分标准 一、单项选择题(每小题1分) 1. A 2. C 3. D 4. A 5. B 6. D 7. D 8. A 9. C 10. D 二、填空题(每空2分) 1. 顺序结构、选择结构、循环结构。 2. 函数 3. 字母、下划线 4. 1.23457e2或1.23457E2 5. 3、1 6. a[9] 7. 使递归结束的条件 8. #include 9. printf(“%s”,c) 10. 0 11. 全局变量、局部变量 三、计算题(要求写出步骤)(每题4分) 1. a-=a*a a=a-a*a a=12-144= -132 a+=-132 a=a+(-132) a=-132-132= -264 2. 1.0/2+3%2=0.5+1=1.5 四、读下列程序,写出程序的运行结果(每题3分) 1. 1. A,68 2. 2. 11 11 3. 3. 24 4. 4. 8,4 五、程序填空:(每空2分) 1.*m 2.*m=*n 3. temp 4. x,y 5. i=i+2 6. m=i*t 7. t=-t 六、编程题 1. main() { int i; float t=1,s=0; for(i=1;i<=50;i++) { t=t*i; s=s+t; } printf("s=%e\n",s); } 2. total(int n) { int c; if (n==1) c=1; else c=total(n-1)+n+1; return(c); } main() { int n;

相关文档
最新文档