浙江海洋学院09C语言试卷A-B(试题)

合集下载

海洋大学c语言考试题及答案

海洋大学c语言考试题及答案

海洋大学c语言考试题及答案海洋大学C语言考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. intB. structC. floatD. char答案:B2. 下列哪个不是C语言标准输入输出库中的函数?A. printf()B. scanf()C. get()D. puts()答案:C3. 在C语言中,数组的下标默认从哪个数字开始?A. 0B. 1C. -1D. 任意数字答案:A4. C语言中,以下哪个语句用于结束一个循环?A. continueB. breakB. returnD. exit答案:B5. 在C语言中,指针的指针是什么?A. 一个数组B. 一个指向指针的指针C. 一个函数D. 一个结构体答案:B6. 下列哪个操作符用于计算两个变量的值的乘积?A. *B. /C. %D. +答案:A7. C语言中,用于定义一个函数的关键字是?A. functionB. defC. voidD. int答案:D(通常用于返回类型,但也可以用于定义函数)8. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. hello worldD. Hello World答案:A9. 在C语言中,哪个函数用于获取一个字符的ASCII码值?A. getchar()B. putchar()C. ord()D. ascii()答案:A10. 下列哪个是C语言中的合法标识符?A. classB. 2variableC. VariableNameD. #include答案:C二、填空题(每空3分,共30分)11. C语言中,用于计算两个整数的平均值的函数是______。

答案:average12. 当一个变量的值需要在函数之间共享时,可以使用________关键字。

答案:static13. 在C语言中,________语句允许程序跳过当前循环的剩余部分,直接开始下一次循环。

海洋大学c语言考试题及答案

海洋大学c语言考试题及答案

海洋大学c语言考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个选项是合法的标识符?A. 2variableB. variable2C. variable-2D. variable_2答案:B2. 在C语言中,以下哪个选项是正确的整型常量?A. 0x1AB. 0x1aC. 0x1A.1D. 0x1a.1答案:A3. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. &&D. ||答案:A4. 在C语言中,以下哪个选项表示的是“或”逻辑运算?A. &&B. ||C. !D. ~答案:B5. C语言中,以下哪个选项是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello World\n"D. 'Hello World\n'答案:A6. 在C语言中,以下哪个选项是正确的数组声明?A. int array[5] = {1, 2, 3};B. int array[] = {1, 2, 3};C. int array[5] = {1, 2, 3, 4};D. int array[5] = {1, 2, 3, 4, 5, 6};答案:B7. C语言中,以下哪个选项是正确的函数声明?A. int add(int a, int b);B. int add();C. int add(int a, int);D. int add(int, int);答案:A8. 在C语言中,以下哪个选项是正确的结构体声明?A. struct Student {int id;char name[20];};B. struct Student {int id;char name;};C. struct Student {int id;char name[20];int age;};D. struct Student {int id;char name;int age;};答案:A9. C语言中,以下哪个选项是正确的指针声明?A. int *ptr;B. int *ptr[];C. int (*ptr)[];D. int (*ptr)();答案:A10. 在C语言中,以下哪个选项是正确的文件操作?A. FILE *fp = fopen("file.txt", "r");B. FILE *fp = open("file.txt", "r");C. FILE *fp = fopen("file.txt", "w+");D. FILE *fp = open("file.txt", "w+");答案:A二、填空题(每题2分,共20分)1. C语言中,字符常量可以用单引号括起来,例如:'A'。

2009年春08级c期末试卷b卷参考答案

2009年春08级c期末试卷b卷参考答案

2009年08级C程序设计期末考试B卷参考答案姓名___________学号___________班级____________得分___________ [注意]所有答案写在单张的答题卷上。

一、判断题(正确的答A,错误的答B,本题共10分,每小题1分)二、单选题(本题共20分,每小题2分)三、程序填空题(本题共30分,每小题2分)四、程序阅读题(本题共20分,每小题5分)五、程序设计题(本题共20分)(1)6分1.#include<stdio.h> intsum(longnumber){ints=0,m;while(number!=0){m=number%10;s+=m;number=number/10;}returns;}voidmain(){longnumber=0;scanf(“%ld”,&number);printf(“sum(%ld)=%d\n”,number,sum(number));}(2)5分intff(char*str,charch){intcount=0;while(*str){if(*str==ch)count++;str++;}returncount;}(3)9分#include<stdio.h>#include<stdlib.h>voidmain(){charch,c,s[80];intk;FILE*fp;if((fp=fopen("input.txt","r"))==NULL) Array {printf("error\n");exit(0);}ch=getchar();k=0;while(1){c=fgetc(fp);if(c=='\n'||c==EOF){s[k]='\0';k=0;printf("%d\n",ff(s,ch));if(c==EOF)break;}elses[k++]=c;}fclose(fp);}或k=0;while(!feof(fp)){c=fgetc(fp);if(c!='\n')s[k++]=c;else{s[k]='\0';k=0;printf("%d\n",f(s,ch));}}if(c!='\n'){s[k]='\0';printf("%d\n",ff(s,ch));}生于忧患,死于安乐《孟子•告子》舜发于畎亩之中,傅说举于版筑之间,胶鬲举于鱼盐之中,管夷吾举于士,孙叔敖举于海,百里奚举于市。

2009级C语言程序设计期末考试试题A卷V3答案

2009级C语言程序设计期末考试试题A卷V3答案

2009级C语言程序设计期末考试试题答案一、选择题(15分,每题1分)1—5、C A A A A 6-10、 B C A D D11-15 B A D D C二、判断题(正确的打√,错误的打×,每题1分,共10分)1、√2、×3、×4、√5、√6、×7、×8、√9、×10、√三、阅读程序,写出程序的执行结果(10个小题,每题2。

5分,共25分)1、hello2、2, 2,23、p=104、4,35、a1=1 x1=3 x2=3 x3=46、t=10,row=2,column=17、007.58、12 15 189、1,210、10,2020,10四、程序填空,(每空2分,共30分)【1】〈.stdio.h>【2】x>0【3】x<amin【4】<0【5】i【6】float item,sum【7】&n【8】item=item/i【9】return (1)【10】n*fac(n—1)【11】math。

h【12】m〈200;m++【13】j〈=root【14】break【15】k%10==0五、编程题(2个小题,共20分)1、#include <stdio。

h〉#include <math。

h>int main(){int i;for(i=100;i〈1000;i++)if(flower(i)==1)printf(“%d is a flower—number”, i);return 0;}int flower( int n){int a,b,c,s;a=n/100;b=(n-100*a)/10;c=n%10;s=pow(a,3.0)+pow(b,3。

0)+pow(c,3。

0);if(s==n)rerutn(1);else return (0);}2、选择排序main(){int i;int a[10];for(i=0;i<10;i++)scanf(“%d" &a[i]);selectsort(a,10);for(i=0;i<10;i++)printf(“%d" a[i]);}void selectsort(int s[ ],int n){int i,j,k,t;for(i=0;i〈n—1;i++){ k=i;for(j=i+1;j〈n;j++)if(s[j]〈s[k]) k=j;if(k!=i){t=s[k]; s[k]=s[i];s[i]=t;}}}冒泡排序#include <stdio。

2013-浙海院C语言程序设计-B卷答案

2013-浙海院C语言程序设计-B卷答案

浙江海洋学院 2012- 2013学年第 2 学期 《C 语言程序设计》课程期末考试卷B 卷 (适用班级 )注意:所有答案必须写在后面的答题纸上! 一、单项选择题(每小题3分,共69分) 1、以下叙述不正确的是:(1) A 、一个C 源程序可由-个或多个函数组成 B 、一个C 源程序必须包含-个main 函数 C 、C 程序的基本组成单位是函数 D 、在C 程序中,注释说明只能位于-条语句的后面 2、能正确表示a 和b 同时为正或同时为负的逻辑表达式是: (2) A 、 (a>=0||b>=0)&&(a<0||b<0) B 、(a>=0&&b>=0)&&(a<0&&b<0) C 、 (a+b>0)&&(a+b<=0) D 、 a*b>0 3、以下对一维数组正确初始化的语句是 (3)。

A 、int a[10]=(0,0,0,0,0); B 、int a[10]={}; C 、int a[]={0}; D 、int a[10]={10*1}; 4、若用数组作为函数调用的实参,传递给形参的是(4) 。

A 、数组的首地址 B 、数组的第一个元数 C 、数组中全部元素的值 D 、数组元素的个数 5、设有如下定义的变量 union data{ int i;char ch;float f;}b;学院专业班级姓名学号则变量b占用内存的字节数是(5)。

(假设int类型占2个字节,char类型占1个字节,float类型占4个字节):A、 4B、5C、 6D、76、若有以下宏定义:#define N 2#define Y(n) (N+1)*n则执行语句int z; z=2*N+Y(5);后的值是(6)A、 50B、34C、19D、无定值7、若定义:int (*p)[3]; 则标识符p (7)。

C模拟考试题及参考答案(09级)

C模拟考试题及参考答案(09级)

C语言程序设计模拟试卷(09级)1.2.4.5.9.11.12.13.15.19.20.22 24 25 26 28 29 30一、单选题(、共30小题,每小题1分,共30分)1、设a、b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是( )。

A. a < =bB. !((a〈b)&&!c||1)C. 'a'&&'b'D. a||b+c&&b-c2、设有语句char a='\72';则变量a( )。

A. 包含1个字符B. 包含2个字符C. 包含3个字符D. 说明不合法3、有以下程序:void main( ){ ;;;}程序运行后的结果是( ):A.编译时有警告错误B.编译时有语法错误C.编译没有错误,但是运行时出错D.程序正常运行,但是无任何输出4、x为int型变量,执行以下语句后,x的值为( )。

x=10;x+=x-=x-x;A.10B.20C.30D.405、若有输入语句"scanf("%d,%d,%d" ,&x,&y,&z) ;",欲使x的值为10,y的值为20,z的值为30,则正确的输入应为( ):A. 10 , 20 ,30〈回车〉B. 10 20 30〈回车〉C. 10,20,30〈回车〉D. 10〈回车〉20〈回车〉30〈回车〉6、以下不正确的if语句是( )。

A. if (a<b) t=a ;B. if (a !=b && b) ;C. if (a=b) printf("equal" ) ;D. if (a>b) && (b>c) printf("max=%d",a);7、关于if后面一对圆括号中的表达式,叙述正确的是( )。

浙江省高等学校(C语言)试卷及参考答案

浙江省高等学校(C语言)试卷及参考答案
(3)A、item=item*i C、item=item-i
(4)A、+=item C、1.0/item
B、sum=-1 C、sum=n
B、i>n D、i>=n
B、item=item+i D、item=item/i B、item D、sum+item
ቤተ መጻሕፍቲ ባይዱ
2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序说明】先输入一个正整数 n(1≤n≤10),再输入 n 个从小到大有序排列的整数,并
n= (9) ; for(i=0;i<n;i++){ [j]!='\0';j++){
for( (10) ;str
putchar(str[j]);
} for( (11) ;j<i;j++){ pu tchar(str[j]);
C 程序设计试卷第 2 页(共 6 页)
} (12) ;
} }
【供选择的答案】
一、程序阅读与填空(24 小题,每小题 3 分,共 72 分)
1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输入一个正整数 n,计算并输出 1 + 1/2!+ /3! + … + 1/n! 的值。
【程序】
#include <stdio.h> void main()
else low=mid+1; } if(low<=high) printf("Index is %d \n",mid); else printf("Not Found\n"); }

C语言程序设计A 2009.01-2017.07历年考试选择题(全).doc

C语言程序设计A 2009.01-2017.07历年考试选择题(全).doc

单选题部分:1、由C语言目标文件连接而成的可执行文件的缺省扩展名为( exe )。

2、设有两条语句为“int a=12; a+=a * a;",则执行结束后,a的值为( 156 )3、带有随机函数调用的表达式rand()%20的值在(0~19 )区间内。

4、for循环语句“for(i=0; i<n; i+=2) S;”中循环体S语句被执行的次数为( ( n十1)/2)5、在下列的字符数组定义中,存在语法错误的是( chara[10]=’5’)6、若有一个函数原型为“double * function()",则它的返回值类型为(实数指针型 )。

7、在 C 语言中,所有预处理命令都是以( # )符号开头的。

8、假定整数指针 p所指数据单元的值为30,p+1所指数据单元的位为40,则执行*p十十后,p所指数据单元的值为( 40 )。

9、若要使p指向二维整型数组a[10][20],则p的类型为(int(*)[20] )10、表示文件结束符的符号常量为( EOF )11、由C语言源程序文件编译而成的目标文件的缺省扩展名为(obj )12、设x和y均为逻辑值,则x,,y为假的条件是(它们均为假 )13、枚举类型中的每个枚举常量的值都是一个(整数 )14、循环语句"for(i=0;i<=n;i++)S;"中循环体S被执行的次数为( n+1)15、假定有语句为"int a[4] [5]={l,3,5},{2,8}};",则a[1] [1]的值为( 8 )16、在下面的选项中,不能作为函数的返回类型的是( new )17、在下面的选项中,不能作为函数的返回值类型的是( node )18、假定x的值为5,y的值为6,则表达式x++*一一y的值为( 25 )19、用calloc函数创建具有10个整型元素的动态存储空间正确调用是( calloc(10,sizeof(int)))20、假定有定义"intb[l0],*pb;",则不正确的赋值为( pb=b[5])21、标准输入设备的文件流标识符是( stdin)22、C语言源程序文件的缺省扩展名为( C )23、设x和Y均为逻辑值,则x&&y为真的条件是( 它们均为真)。

2009年春08级c期末试卷b卷-推荐下载

2009年春08级c期末试卷b卷-推荐下载
(9) 在 C 语言中,函数不能嵌套定义,但可以嵌套调用。
(10) 数组 char x[]="12345";和 char y[]={'1','2','3','4','5'};长度相同。
二、 单选题(本题共 20 分,每小题 2 分)
(11) ______是合法的用户自定义标识符。。
[A] b-b [C] _isw
(19) 函数调用语句 func((a1,a2,a3),(a4,a5)); 的参数个数是 :
[A] 2
[B] 5
(20) 对于如下说明,语法和语义都正确的赋值是___C__。 int c, *s, a[]={1, 3, 5};
[A] c=*s;
[C] 7
[C] 1
[B] s[0]=a[0]; [C] s=&a[1];
scanf("%d", &x); if(x!=-1){
(23) ; while( (24) ){
if(max<x) max=x;
第 3 页(共 7 页)
[B] 1.0/k [D] 1.0/k*flag
[B] flag = -flag [D] k= -flag
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术通关,1系电过,力管根保线据护敷生高设产中技工资术艺料0不高试仅中卷可资配以料置解试技决卷术吊要是顶求指层,机配对组置电在不气进规设行范备继高进电中行保资空护料载高试与中卷带资问负料题荷试2下卷2,高总而中体且资配可料置保试时障卷,各调需类控要管试在路验最习;大题对限到设度位备内。进来在行确管调保路整机敷使组设其高过在中程正资1常料中工试,况卷要下安加与全强过,看度并22工且22作尽22下可22都能22可地护以缩1关正小于常故管工障路作高高;中中对资资于料料继试试电卷卷保破连护坏接进范管行围口整,处核或理对者高定对中值某资,些料审异试核常卷与高弯校中扁对资度图料固纸试定,卷盒编工位写况置复进.杂行保设自护备动层与处防装理腐置,跨高尤接中其地资要线料避弯试免曲卷错半调误径试高标方中高案资等,料,编试要5写、卷求重电保技要气护术设设装交备备置底4高调、动。中试电作管资高气,线料中课并敷3试资件且、设卷料中拒管技试试调绝路术验卷试动敷中方技作设包案术,技含以来术线及避槽系免、统不管启必架动要等方高多案中项;资方对料式整试,套卷为启突解动然决过停高程机中中。语高因文中此电资,气料电课试力件卷高中电中管气资壁设料薄备试、进卷接行保口调护不试装严工置等作调问并试题且技,进术合行,理过要利关求用运电管行力线高保敷中护设资装技料置术试做。卷到线技准缆术确敷指灵设导活原。。则对对:于于在调差分试动线过保盒程护处中装,高置当中高不资中同料资电试料压卷试回技卷路术调交问试叉题技时,术,作是应为指采调发用试电金人机属员一隔,变板需压进要器行在组隔事在开前发处掌生理握内;图部同纸故一资障线料时槽、,内设需,备要强制进电造行回厂外路家部须出电同具源时高高切中中断资资习料料题试试电卷卷源试切,验除线报从缆告而敷与采设相用完关高毕技中,术资要资料进料试行,卷检并主查且要和了保检解护测现装处场置理设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

2009年上学期《C语言程序设计》期末试卷(A)参考答案

2009年上学期《C语言程序设计》期末试卷(A)参考答案

2009年上学期《C语⾔程序设计》期末试卷(A)参考答案华东师范⼤学期末试卷(A)2008 —2009学年第⼆学期课程名称:C语⾔程序设计学⽣姓名:学号:______________专业:年级/班级 2007级课程性质:专业必修(请将所有答案写在答题纸上)⼀、填空题(每空1分,共10分)1. 设x和y均为int型变量,且x=2,y=3,则表达式1.0+x/y的值为 1.0。

2. 有如下输⼊语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输⼊数据的正确形式应是a=1,b=3,c=2 。

3. 变量y满⾜以下两条件中的任意⼀个:①能被4整除,但不能被100整除;②能被400整除。

请⽤逻辑表达式表⽰所给条件:___(y%4==0&&y%100!=0)||(y%400==0)_ __4. 在内存中存储“A”要占⽤ 2 个字节,存储…A?要占⽤ 1 个字节。

5. C语⾔编译系统在判断⼀个量是否为“真”时,以0代表“假”,以⾮0代表“真”。

6. 结构化程序设计⽅法规定程序或程序段的结构有三种:顺序结构、选择结构和循环结构。

7. 设有“int x=1;”,则“x>0 ? 2*x+1 : 0”表达式的值是___3_______。

8. C语⾔的表达式与语句的区别在于C语⾔的语句是以分号结束的,⽽表达式是没有分号的。

⼆、选择题(每⼩题1分,共20分)1. 以下关于C程序执⾏叙述正确的是( A)A)程序的执⾏总是从main函数开始,在main函数结束B)程序的执⾏总是从程序的第⼀个函数开始,在main函数结束C)程序的执⾏总是从main函数开始,在程序的最后⼀个函数中结束A)计算机不能直接执⾏⽤C语⾔编写的源程序B)C程序经C编译程序编译后,⽣成后缀为.obj的⽂件是⼀个⼆进制⽂件C)后缀为.obj的⽂件,经连接程序⽣成后缀为.exe的⽂件是⼀个⼆进制⽂件D)后缀为.obj和.exe的⼆进制⽂件都可以直接运⾏3. 设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是( A )A)k++ B) k+=1 C) ++k D) k+14. 若⽤数组名作为函数调⽤时的实参,则实际上传递给形参的是(A)。

2009年3月和9月全国计算机等级考试二级C语言笔试真题及参考答案

2009年3月和9月全国计算机等级考试二级C语言笔试真题及参考答案

2009年3月二级C语言笔试真题及答案、、((1)—(10)每小题2分,(11)—(50)每题1分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列叙述中正确的是先进后出A)栈是“先进先出”的线性表B)队列是“先进先出”的线性表 b lC)循环队列是非线性结构D)有序性表既可以采用顺序存储结构,也可以采用链式存储结构(2)支持子程序调用的数据结构是A)栈 B)树 C)队列 D)二叉树(3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是A)10 B)8 C)6 D)4(4)下列排序方法中,最坏情况下比较次数最少的是A)冒泡排序 B)简单选择排序C)直接插入排序 D)堆排序(5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是A)编译软件 B)操作系统C)教务管理系统 D)汇编程序(6)下面叙述中错误的是A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤C)程序调试通常也称为DebugD)软件测试应严格执行测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独立性度量的两个标准。

下列叙述中正确的是A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度(8)数据库应用系统中的核心问题是A)数据库设计B)数据库系统设计C)数据库维护D)数据库管理员培训(9)有两个关系R,S如下:RS由关系R通过运算得到关系S,则所使用的运算为A)选择 B)投影 C)插入 D)连接(10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性 B)键 C)关系 D)域(11)以下选项中合法的标识符是A) 1-1 B)1—1 C)-11 D)1—12)若函数中有定义语句:int k;,则A)系统将自动给k赋初值0B)这时k中值无定义C)系统将自动给k赋初值-1D)这时k中无任何值(13)以下选项中,能用作数据常量的是A)o115 B) 0118 C)1.5e1.5 D) 115L(14)设有定义:int x=2;,以下表达式中,值不为6的是A) x*=x+1 B) x++,2*xC)x*=(1+x) D)2*x,x+=2(15)程序段:int x=12;double y=3.141593; printf(“%d%8.6f”,x,y);的输出结果是A)123.141593 B)123.141593C)12,3.141593 D)123.141593(16)若有定义语句:double x,y,*px,*py,执行了px=&x, py=&y;之后,正确的输入语句是A)scanf(“%f%f”,x,y); B) scanf(“%f%f”,&x,&y);C) scanf(“%lf%le”,px,py); D) scanf(“%lf%lf”,x,y);(17)以下是if语句的基本形式:if(表达式)语句其中“表达式”A)必须是逻辑表达式 B)必须是关系表达式C)必须是逻辑表达式或关系表达式 D)可以是任意合法的表达式(18)有以下程序#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的整数(19)有以下程序#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);}程序运行后的输出结果是A)1,2,3 B)1,3,2C)1,3,3 D)3,2,1(20)以下程序中的变量已正确定义for(i=0;i<4;i++,i++for(k=1;k<3;k++);printf(*”);程序段的输出结果是A)******** B)****C)** D)*(21)有以下程序#include<stdio.h>main(){char*s=(“ABC);do{printf(“%d”,*s%10);s++;}while(*s);}注意,字母A的ASCII码值为65。

C语言09-10考试A试卷.doc

C语言09-10考试A试卷.doc

同济大学课程考核试卷(A卷)2009-2010学年第一学期命题教师签名:审核教师签名:课号:课名:C++语言考试考查:考查此卷选为:期中考试()、期终考试(V)、重考()试卷年级 __________ 专业__________________ 学号____________ 姓名______________ 得分 __________一、选择填空(30分)1)按照标识符的要求,下列符号中不属于标识符组成部分的是()。

八、大小写字母B、数字C、下划线D、〜! @#$%"&*2)若有定义:char c; int x; float y;double z;则表达式x+c-(int)z/y值的类型为()。

八、char B、int C、float D、double3)有下列定义:chars[10],*p,sl[] = { "xyz" };以下语句中正确的是()。

八、s = “abcdefgh” ; B、p = “abcdefgh” ;C、s = si;D、p=&s; cin » p;4)以下数组定义中正确的是()。

A、int n=5; int a[n];B、int b[3] [] = {l, 2, 3};C、int c[3][4]:{0};D、int d[][] = {2,4,6,8};5)己知int a⑸,b⑶;当逻辑表达式语句!a&&b++;b| |a—| |a+b;执行完毕后,a和b的值分别为()。

A、4,4B、4,3C、5,4D、5,36)设有定义语句:int x(20), y(10), *p, **pp; 当执行完语句:p=&x;pp=&p;p=&y;后,**PP的值为()。

A、20B、10C、变量x的地址值D、变量y的地址值7)对于int (*p)();的描述,()是正确的。

A、定义一个指向某int型函数的指针变量p。

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

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

C语言程序设计期末考试试题及答案C语言程序设计试题(2008 /2009 学年第二学期)一.选择题(满分30分,每题2分)1.若a、b、c都定义为int类型且初值为0,则以下不正确的赋值语句是 D 。

A. a=b=c+8;B. a+=y+3;C. c++;D. a+b+c2. 已知int j,i=1;执行语句“j=i++;”后,变量i的值是 B 。

A. 1B. 2C. –1D. -23.执行下面程序:#include "stdio.h"void main(){int a=1,b=2,c=3;c=(a+=a+2),(a=b,b+3);printf(“%d,%d,%d”,a,b,c);}则输出结果是: A 。

A. 2,2,4B. 4,2,3C. 5,5,3D. 4,2,54.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为 D 。

A. a< >0B. !aC. a=0D. a5. for (j=0;j<11;j++);循环结束后,j的值是 B 。

A. 12B. 11C. 10D. 96. C语言中函数返回值的类型由 D 决定的。

A. return语句中的表达式类型B. 调用该函数的主调函数的类型C. 调用函数时临时决定D. 定义函数时所指定的函数类型7. 下列说法中正确的是 B 。

A 在调用用户自定义函数时,必须对其进行声明。

B 函数可以返回一个值,也可以什么值也不返回。

C 说明函数时,必须明确参数的类型和返回值。

D 在程序设计中空函数没有什么作用。

8. 若int i=10;执行下列程序后,变量i的正确结果是 D 。

switch ( i ){case 0: i+=1;case 10: i+=1;case 11: i+=1;default: i+=1;}A. 10B. 11C. 12D. 139. 下列语句中不正确的字符串赋值或初始化的是 C 。

2009年3月国家二级(C语言)笔试真题试卷(题后含答案及解析)

2009年3月国家二级(C语言)笔试真题试卷(题后含答案及解析)

2009年3月国家二级(C语言)笔试真题试卷(题后含答案及解析) 题型有:1. 选择题 2. 填空题选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.下列叙述中正确的是______。

A.栈是“先进先出”的线性表B.队列是“先进后出”的线性表C.循环队列是非线性结构D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构正确答案:D解析:栈是—种特殊的线性表,这种线性表只能在固定的—端进行插入和删除操作,允许插入和删除的—端称为栈顶,另—端称为栈底。

—个新元素只能从栈顶一端进入,删除时,只能删除栈项的元素,即刚刚被插入的元素。

所以栈又称“后进先出”表,所以选项A是错误的。

队列可看作是插入在—端进行,删除在另—端进行的线性表,允许插入的—端称为队尾,允许删除的—端称为队头。

在队列中,只能删除队头元素,队列的最后—个元素—定是最新入队的元素。

因此队列又称“先进先出”表,所以选项B是错误的,循环队队列是将队列存储空间的最后—个位置绕到第—个位置,形成逻辑上的环状空间,供队列循环使用。

它的逻辑结构仍然是线性结构,所以选项C是错误的。

有序线性表既可以采用顺序存储结构,也可以采用链式存储结构,所以选项D是正确的。

2.支持子程序调用的数据结构是______。

A.栈B.树C.队列D.二叉树正确答案:B解析:子程序调用是—种层次关系,子程序调用功能模块,且调用功能模块的个数也不确定,可以是—个,也可以是多个。

选项A、C中元素之间是—种前后件关系,前后元素之间没有层次之分,每个结点有—个前件也只有—w个后件。

二叉树是一种很有用的非线性结构,它不同于树形结构,具有以下两个特点:1)非空二叉树只有一个根结点;2)每一个结点最多有两棵子树,且分别称为该点的左子树与右子树。

所以选项D规定每个结点只能有两个后件。

(完整版)C语言考试题库及答案

(完整版)C语言考试题库及答案

(完整版)C语言考试题库及答案一、选择题1. 以下哪个选项是C语言的合法标识符?A. intB. 2abcC. voidD. a+b答案:C2. 在C语言中,下列哪个选项是正确的数据类型?A. floatB. integerC. doubleD. All of the above答案:D3. 若变量定义如下:int a = 5;,则执行语句printf("%d", a++); 后,a的值是多少?A. 4B. 5C. 6D. 无法确定答案:C4. 以下哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A5. 在C语言中,哪个运算符用于取模(取余)?A. %B. /C. &D. |答案:A以下是判断题部分:6. C语言中的数组名可以作为指向该数组首元素的指针使用。

()答案:正确7. 在C语言中,结构体变量可以作为函数的参数传递。

()答案:正确8. 在C语言中,静态存储类别的变量在程序运行期间始终占据内存空间。

()答案:正确二、填空题9. 在C语言中,定义一个整型变量需要使用关键字______。

答案:int10. 若变量定义如下:int a = 10;,则执行语句printf("%d", a--); 后,a的值是______。

答案:911. 在C语言中,用于动态分配内存的函数是______。

答案:malloc12. 在C语言中,用于释放动态分配的内存的函数是______。

答案:free13. 在C语言中,用于清空标准输入缓冲区的函数是______。

答案:getchar()三、编程题14. 编写一个C语言程序,实现以下功能:输入一个整数,输出它的阶乘。

答案:```c#include <stdio.h>int main() {int n, i;long factorial = 1;printf("Enter an integer: ");scanf("%d", &n);if (n < 0) {printf("Factorial of a negative number doesn't exist.\n");} else {for (i = 1; i <= n; i++) {factorial = i;}printf("Factorial of %d is %ld\n", n, factorial);}return 0;}```15. 编写一个C语言程序,实现以下功能:输入一个字符串,判断它是否是回文(正读和反读都一样的字符串)。

2009年春C语言二级理论试题

2009年春C语言二级理论试题

2009年春浙江省高等学校计算机等级考试试卷(二级C)试题1 (每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,正确答案。

挑选一个【程序说明】输入一个正整数n,计算下列式的前n项之和。

彳1丄1 1亠1S = 13 5 7 9运行示例:En ter n:2Sum=0.67【程序】#in elude <stdio.H>main (){ in t de no miator,flag,i ,n;double item,sum;printf("Enter n:");sca nf("%d",&n);deno miator=1;(1) ;sum=0;for(i=1; (2) ;i++){(3);sum=sum+item;(4);deno miator=de nomiator+2;}prin tf("Sum=%.2f\n",sum);}【供选择的答案】(1) A . flag=0C. flag=n(2) A . i>=nC. i>n B. flag=-1;D. flag=1B . i< nD . i<=nII答案B〃答案D(8#in clude <stdio.H>#in clude <math.h> int prime(i nt m) { int i,n;if(m==1)return 0; n=sqrt(m);for(i=2;i<=n ;i++) if(m%i==O)return 0;(5)}mai n(){ in t coun t,i, nu mber; coun t=0;for(nu mber=6 ;nu mber<=20 ;nu mber =nu mber+2) {for(i=3;i<=nu mber/2;i=i+2) if( _____ (6 _____ ){pri ntf("%d=%d+%d ",n umber,i, number-i); coun t++; if( (7))printf("\n");}【供选择的答案】(3) A . item=flag/ denomiator C . item=flag*1.0/ denomiator (4) A . flag==-1 C . flag=-flag 试题2 (每小题3分,共12分) 阅读下列程序说明和程序, 正确答案。

2009级C语言程序设计试卷_A(带答案,自动化2009级)

2009级C语言程序设计试卷_A(带答案,自动化2009级)

天津工业大学200 9 ~201 0 学年第 1 学期高级语言程序设计(C语言)试卷(A)学院班级学号姓名注意事项:1、本试卷共11 页,满分为100 分,考试时间为110 分钟。

2、标准答题卡使用2B铅笔涂写;文字题答题时请使用蓝、黑钢笔或圆珠笔,不得使用红颜色墨水笔。

一、单项选择题:(每题 1 分,共40 分)(说明:请将正确答案按照题干上【】内的序号涂写“标准答题卡”)1.以下标识符中,不能够作为变量名使用的是【1】。

A) float B) _123C) Sum D) X_Y12.一个C语言程序的执行是【2】。

A) 从第一个函数开始,到最后一个函数结束B) 从main()函数开始,到最后一个函数结束C) 从main()函数开始,到main()函数结束D) 从第一语句开始,到最后一个语句结束3.表达式sizeof(float)的值是【3】。

A) 1 B) 2 C) 4 D) 84.在C语言中,数值常量0x9f对应十进制值是【4】。

A) 160 B) 87C) 9f D) 1595.在C语言中,运算对象必须是整型数据的运算符是【5】。

A) / B) % C) && D) <=6.数学表达式x≥y≥z,改写为C语言表达式后,正确的写法是【6】。

A) x>=y>=z B) (x>=y) && (y>=z)C) (x>=y) & (y>=z) D) (x>=y) AND (y>=z)7.已知int x=6; 执行语句x+=x-=x*x; 后,变量x的值是【7】。

A) -60 B) -24 C) 36 D) 608.若int x=4,y=2;则表达式x<y?x++:y++的值是【8】。

A) 2 B) 3 C) 4 D) 59.若有定义语句char ch='\072'; 则变量ch 【9】。

2009年9月C语言真题及答案

2009年9月C语言真题及答案

2009年9月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分,共70分)(1)下列数据结构中,属于非线性结构的是A)循环队列B) 带链队列C) 二叉树D)带链栈(2)下列数据结果中,能够按照“先进后出”原则存取数据的是A) 循环队列B) 栈C)队列D)二叉树(3)对于循环队列,下列叙述中正确的是A)队头指针是固定不变的B)队头指针一定大于队尾指针C)队头指针一定小于队尾指针D)队头指针可以大于队尾指针,也可以小于队尾指针(4)算法的空间复杂度是指A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的临时工作单元数(5)软件设计中划分模块的一个准则是A) 低内聚低耦合B) 高内聚低耦合C) 低内聚高耦合D) 高内聚高耦合(6)下列选项中不属于结构化程序设计原则的是A) 可封装D) 自顶向下C) 模块化D) 逐步求精(7)软件详细设计产生的图如下:该图是A) N-S图B) PAD图C) 程序流程图D) E-R图(8)数据库管理系统是A)操作系统的一部分B) 在操作系统支持下的系统软件C) 一种编译系统D) 一种操作系统(9)在E-R图中,用来表示实体联系的图形是A) 椭圆图B) 矩形C) 菱形D) 三角形(10)有三个关系R,S和T如下:其中关系T由关系R和S通过某种操作得到,该操作为A) 选择B) 投影C) 交D) 并(11)以下叙述中正确的是A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整(12)以下选项中,能用作用户标识符的是A)voidB)8_8C)_0_D)unsigned(13)阅读以下程序#include <stdio.h>main(){ int case; float printF;printf(“请输入2个数:”);scanf(“%d %f”,&case,&pjrintF);printf(“%d %f\n”,case,printF);}该程序编译时产生错误,其出错原因是A)定义语句出错,case是关键字,不能用作用户自定义标识符B)定义语句出错,printF不能用作用户自定义标识符C)定义语句无错,scanf不能作为输入函数使用D)定义语句无错,printf不能输出case的值(14)表达式:(int)((double)9/2)-(9)%2的值是A)0B)3C)4D)5(15)若有定义语句:int x=10;,则表达式x-=x+x的值为A)-20B)-10C)0D)10(16)有以下程序#include <stdio.h>main(){ int a=1,b=0;printf(“%d,”,b=a+b);printf(“%d\n”,a=2*b);}程序运行后的输出结果是A)0,0B)1,0C)3,2D)1,217)设有定义:int a=1,b=2,c=3;,以下语句中执行效果与其它三个不同的是 A)if(a>b) c=a,a=b,b=c;B)if(a>b) {c=a,a=b,b=c;}C)if(a>b) c=a;a=b;b=c;D)if(a>b) {c=a;a=b;b=c;}(18)有以下程序#include <stdio.h>main(){ int c=0,k;for (k=1;k<3;k++)switch (k){ default: c+=kcase 2: c++;break;case 4: c+=2;break;}printf(“%d\n”,c);}程序运行后的输出结果是A)3B)5C)7D)9(19)以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是 A)if((a>b)&&(b>c)) k=1;else k=0;B)if((a>b)||(b>c) k=1;else k=0;C)if(a<=b) k=0;else if(b<=c) k=1;D)if(a>b) k=1;else if(b>c) k=1;else k=0;20)有以下程序#include <stdio.h>main(){ char s[]={“012xy”};int i,n=0;for(i=0;s[i]!=0;i++)if(s[i]>=’a’&&s[i]<=’z’) n++;printf(“%d\n”,n);}程序运行后的输出结果是A)0B)2C)3D)5(21)有以下程序#include <stdio.h>main(){ int n=2,k=0;while(k++&&n++>2);printf(“%d %d\n”,k,n);}程序运行后的输出结果是A)0 2B)1 3C)5 7D)1 2(22)有以下定义语句,编译时会出现编译错误的是A)char a=’a’;B)char a=’\n’;C)char a=’aa’;D)char a=’\x2d’;(23)有以下程序#include <stdio.h>main(){ char c1,c2;c1=’A’+’8’-‘4’;c2=’A’+’8’-‘5’;printf(“%c,%d\n”,c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是A)E,68B)D,69C)E,DD)输出无定值(24)有以下程序#include <stdio.h>void fun(int p){ int d=2;p=d++; printf(“%d”,p);}main(){ int a=1;fun(a); printf(“%d\n”,a);}程序运行后的输出结果是A)32B)12C)21D)22(25)以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能#define MIN -2147483647int findmax (int x[],int n){ int i,max;for(i=0;i<n;i++){ max=MIN;if(max<x[i]) max=x[i];}return max;}造成错误的原因是A)定义语句int i,max;中max未赋初值B)赋值语句max=MIN;中,不应给max赋MIN值C)语句if(max<x[i]) max=x[i];中判断条件设置错误D)赋值语句max=MIN;放错了位置(26)有以下程序#include <stdio.h>main(){ int m=1,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf(“%d,%d,%d,%d\n”,m,n,*p,*q);}程序运行后的输出结果是A)1,2,1,2B)1,2,2,1C)2,1,2,1D)2,1,1,2(27)若有定义语句:int a[4][10],*p,*q[4];且0≤i<4,则错误的赋值是 A)p=aB)q[i]=a[i]C)p=a[i]D)p=&a[2][1](28)有以下程序#include <stdio.h>#include<string.h>main(){ char str[ ][20]={“One*World”, “One*Dream!”},*p=str[1];printf(“%d,”,strlen(p));printf(“%s\n”,p);}程序运行后的输出结果是A)9,One*WorldB)9,One*DreamC)10,One*DreamD)10,One*World(29)有以下程序#include <stdio.h>main(){ int a[ ]={2,3,5,4},i;for(i=0;i<4;i++)switch(i%2){ case 0:switch(a[i]%2){case 0:a[i]++;break;case 1:a[i]--;}break;case 1:a[i[=0;}for(i=0;i<4;i++) printf(“%d”,a[i]); printf(“\n”);}A)3 3 4 4B)2 0 5 0C)3 0 4 0D)0 3 0 4(30)有以下程序#include <stdio.h>#include<string.h>main(){ char a[10]=”abcd”;printf(“%d,%d\n”,strlen(a),sizeof(a));}程序运行后的输出结果是A)7,4B)4,10C)8,8D)10,10(31)下面是有关C语言字符数组的描述,其中错误的是A)不可以用赋值语句给字符数组名赋字符串B)可以用输入语句把字符串整体输入给字符数组C)字符数组中的内容不一定是字符串D)字符数组只能存放字符串(32)下列函数的功能是fun(char * a,char * b){ while((*b=*a)!=’\0’) {a++,b++;} }A)将a所指字符串赋给b所指空间B)使指针b指向a所指字符串C)将a所指字符串和b所指字符串进行比较D)检查a和b所指字符串中是否有’\0’(33)设有以下函数void fun(int n,char * s) {……}则下面对函数指针的定义和赋值均是正确的是A)void (*pf)(); pf=fun;B)viod *pf(); pf=fun;C)void *pf(); *pf=fun;D)void (*pf)(int,char);pf=&fun;(34)有以下程序#include <stdio.h>int f(int n);main(){ int a=3,s;s=f(a);s=s+f(a);printf(“%d\n”,s);}int f(int n){ static int a=1;n+=a++;return n;}程序运行以后的输出结果是A)7B)8C)9D)10(35)有以下程序#include <stdio.h>#define f(x) x*x*xmain(){ int a=3,s,t;s=f(a+1);t=f((a+1));printf(“%d,%d\n’,s,t);}程序运行后的输出结果是A)10,64B)10,10C)64,10D)64,64(36)下面结构体的定义语句中,错误的是A)struct ord {int x;int y;int z;}; struct ord a;B)struct ord {int x;int y;int z;} struct ord a;C)struct ord {int x;int y;int z;} a;D)struct {int x;int y;int z;} a;(37)设有定义:char *c;,以下选项中能够使字符型指针c正确指向一个字符串的是 A)char str[ ]=”string”;c=str;B)scanf(“%s”,c);C)c=getchar();D)*c=”string”;(38)有以下程序#include <stdio.h>#include<string.h>struct A{ int a; char b[10]; double c;};struct A f(struct A t);main(){ struct A a={1001,”ZhangDa”,1098.0};a=f(a);jprintf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);}struct A f(struct A t)( t.a=1002;strcpy(t.b,”ChangRong”);t.c=1202.0;return t; )程序运行后的输出结果是A)1001,ZhangDa,1098.0B)1001,ZhangDa,1202.0C)1001,ChangRong,1098.0D)1001,ChangRong,1202.0(39)若有以下程序段int r=8;printf(“%d\n”,r>>1);输出结果是A)16B)8C)4D)2(40)下列关于C语言文件的叙述中正确的是A)文件由一系列数据依次排列组成,只能构成二进制文件B)文件由结构序列组成,可以构成二进制文件或文本文件C)文件由数据序列组成,可以构成二进制文件或文本文件D)文件由字符序列组成,其类型只能是文本文件二、填空题(每空2分,共30分)(1)某二叉树有5个度为2的结点以及3个度为1的结点,则该二叉树中共有【1】个结点。

2022年浙江海洋大学公共课《C语言》科目期末试卷A(有答案)

2022年浙江海洋大学公共课《C语言》科目期末试卷A(有答案)

2022年浙江海洋大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。

2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。

3、结构化程序由________、________ 、________ 3种基本结构组成。

4、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为_______。

5、若有定义语句:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为_______。

6、以下程序的运行结果是_______。

#include <stdio.h>int main(){char s[]="ab\'cdefg\",*p=s+1;printf("%c”,*(p++));printf("%s",p+2);return(0);}7、下面程序段的运行结果是_______。

x=2;do{printf("*");x--;)while(!x==0);8、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。

#include <stdio.h>int main(){int a,b;float x,y;char cl,c2;scanf("a=%d b=%d",&.a,&.b);scanf("x=%f y=%",8.x,8.y);scanf("c1=%cc2=%c”,8.cl,8.c2);printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2);return0;}9、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为_______。

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

浙江海洋学院 2010- 2011学年第 2 学期 《 C 语言程序设计》课程期末考试A 卷 (适用班级A10机械(1,2),A10建环(1,2),A10航海 (1, 2),A10电信(1, 2),A10轮机(1, 2),A10海渔, A10环科,A10养殖,A10资环,A10船舶(1, 2),A10电气(1, 2),A10土木(1, 2),B10数学,B10物理, A10化工(1, 2),A10食安,A10食工,A10药学,A10储运(1, 2),A10生技,A10生科,A10海科(1, 2),A10护理1,A10护理2)试题1(每小题3分,共12分) 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】 输入一个正整数,各位数码顺序颠倒输出。

运行示例: Enter an integer: 345 The digits are: 543 【程序】 #include <stdio.h> void main( ) { int digit, number; printf("Enter an integer:"); scanf("%d", &number); do { digit= (1) ; printf(" %d" , (2) ); (3) ; }while( (4) ); 【供选择的答案】 (1) A 、number/10 B 、number%10 C 、number/100 D 、number%100 (2) A 、number B 、number/10 C 、digitD 、number/100 (3) A 、number%=10B 、number/=10 C 、 number=number/digit D 、number=number%digit (4) A 、number==0 B 、number != 0学院专业班级姓名学号C、digit==0D、digit!=0试题2(每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】从键盘输入n,编写计算n!的递归程序。

n×f(n-1) n>1f(n)=1 n=1或n=0【程序】#include <stdio.h>(5) ;int main(){int n;printf("\nplease enter n:");scanf("%d",&n);printf("\n n!=%ld", (6) );return 0;}long fact(int n){if (n==1||n==0)return( (7) );elsereturn( (8) );}【供选择的答案】(5)A、long fact(n)B、long fact(int n)C、int fact(int n)D、fact(int n)(6)A、fact(int n)B、long fact(n)C、fact(n) D、fact( )(7)A、n B、1 C、0 D、n==0(8)A、fact(n-1) B、n*(n-1)C、n*fact(n-1)D、(n-1)*fact(n-2)试题3(每小题3分,共9分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】打印6行如下形式的扬辉三角形。

11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1【程序】# define N 7# include <stdio.h>int main(){int i, j, a[N][N];for (i=1; i<N; i++) {(9) a[i][1]=1;}for (i=3; i<N; i++)for (j=2; j<=i-1; j++)a[i][j]= (10) + (11) ;for (i=1; i<N; i++) {for (j=1; j<=i ; j++)printf(“%5d”, a[i][j]);printf(“\n”);}return 0;}(9) A、a[i][i]=1;B、a[i][i]=0;C、a[i][i]=i;;D、;(10) A、a[i][j] B、a[i][j-1]C、a[i-1][j]D、a[i-1][j-1](11) A、a[i][j] B、a[i][j-1]C、a[i-1][j]D、a[i-1][j-1]试题4(每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】#include <stdio.h>int main(){int i,j;for (i=4;i>=1;i--){printf("*");for (j=1;j<=4;j++)printf("*");printf("\n");}return 0;}(12) 程序运行后第一行输出:A、*B、**C、 ***D、 *****(13) 程序运行后第二行输出:A、*****B、 ****C、***D、**(14)程序运行后第三行输出:A、 **B、***C、*****D、*(15)程序运行后第四行输出:A、 *B、**C、*****D、****试题5(每小题3分,共12分)阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】将指定的一个字符从字符串中删除。

【程序】# include <stdio.h># include < (16) >int main(){int i, j;(17) ;char ch, s1[30], s2[30] ;printf("Please input a string:");gets(s1);printf("Please input a char:");scanf("%c",&ch);for (i=0;s1[i]!='\0';i++)if (s1[i]!=ch)(18) ;(19) ;strcpy(s1,s2);puts(s1);return 0;}(16)A、ctype.h B、math.h C、stdlib.h D、string.h(17)A、j=-1 B、j=0 C、j=1 D、;(18)A、*s1++ = *s2++ B、s2[j++] = s1[i]C、*s2++ = *s1++D、s2[++j] = s1[i](19)A、*++s1 = '\0'; B、*++s2 = '\0';C、s2[j] = '\0';D、s2[j+1] = '\0';试题6(每小题3分,共6分)阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】用函数实现两个数的交换。

【程序】#include <stdio.h>void swap(int *p1,int *p2);int main(){int a=3,b=5;int *pa,*pb;printf("Before swap:");printf("a=%d,b=%d\n",a,b);pa=&a;pb=&b;swap( (20) );printf("After swap:");printf("a=%d,b=%d\n",a,b);getch();}void swap(int *p1,int *p2) /*函数定义*/{int temp;temp=*p1;(21) ;*p2=temp;}【供选择的答案】(20)A、pa,pb B、*pa,*pbC、a,bD、&pa,&pb(21)A、a=bB、p1=p2 C、*p1=*p2D、*p2=*p1试题7(每小题3分,共6分)阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

#include <stdio.h>#define S(a,b) a*bint main(){int x,y;scanf("%d%d",&x,&y);printf("%d\n",S(x,y+5));printf("%d\n",5/S(x,y));return 0;}程序运行时,从键盘输入3 5,则(22)第一个printf语句输出________A、30B、25C、20D、15(23) 第二个printf语句输出________A、0B、8.67C、8D、5试题8编程题(第1小题9分,第2小题10分、第3小题12分,共31分)1、键盘输入40个数,求其中的正整数之和。

2、编程从键盘输入的12个数,求出其中最大的数并在屏幕上输出。

3、编写一个判定一个整数是否为素数的函数int prime(int n),如果n是素数,则返回1,否则返回0;然后在main中调用该函数输出500以内的全部素数。

相关文档
最新文档