C语言2010年12月试题
2010年辽宁专升本考试真题-C语言部分
2010辽宁省高职高专毕业生升入本科学校招生考试计算机试卷第二部分计算机高级语言部分(C语言)四、填空题(将正确答案填写在答题卡相应的位置上,每小题2分,共10分)41.C语言程序中可以对程序进行注释,注释部分必须使用的符号是______42.设float x=3.8,y=2.7,int a=5,则表达式x+a/3*(int)(x+y)%2+4的值为____________43.在C语言程序中,若对函数类型未加说明,则函数的隐含类型为:______________44.求解逗号表达式(a=9,a+4),a*2的值和a的值依次为____________45.函数的参数为float类型时,形参与实参与结合的传递方式为_____________五、阅读程序题(阅读下列程序,将正确的运行结果填写到答题卡相应的位置上。
每小题3分,共24分)46、下面程序运行的结果是。
main(){int x=4;if(x++>=5)printf("%d",x);elseprintf("%d\n",x--);}47、下面程序的运行结果是。
main(){int a[]={1,3,5,7,9};int y=1,x,*p;p=&a[1];for(x=0;x,3;x++)y+=*(p+x);printf("%d\n",y);}48、下面程序运行的结果是。
#include<stido.h>int func(int a){int b=1;static c=4;a=++c,++b;return a;}main(){int a=2,i,k;for(i=0;i,2;i++)k=func (++a)printf("%d\n",k);}49、下面程序运行的结果是。
#include<stido.h>main(){int k=0;char c='B';switch(c++){case 'A':k++;break;case 'B':k--;case 'C':k+=2;default:k*=3;break;}Printf("k=%d\n",k);}50、下面程序运行的结果是。
2010春C语言上机试卷与答案
江苏省高等学校非计算机专业学生计算机基础知识和应用能力等级考试上机试卷(2010年春)二级C语言(试卷代号C02)(本试卷完成时间70分钟)一、改错题(16分)【程序功能】先将一个正整数转换为十进制数字字符串,再将千位分隔符插入到该字符串中,最后输出该字符串。
【测试数据及运行结果】输入:1234567输出:12345671,234,567【含有错误的源程序】#include <stdio.h>#include <string.h>void ltoa(char s[],long num){ long n=num,i=0;printf("%ld\n",num);while(n){ i++; n/=10; }s[i]= \0 ;while(num){ s[--i]=num%10+'0'; num/=10;}}void insert(char s[]){ char j,k,t;t=j=strlen(s);while(j>3){ j=j-3;for(k=t; k>j; k--)s[k]=s[k+1];s[j]= ',';t++;}}void main(){ static char s[20]; long num;scanf("%d",&num);ltoa(s,num);insert(s,num);puts(s);getch();}【要求】1.将上述程序录入到文件myf1.c中,根据题目要求及程序中语句之间的逻辑关系对程序中的错误进行修改。
2.改错时,可以修改语句中的一部分内容,调整语句次序,增加少量的变量说明或编译预处理命令,但不能增加其它语句,也不能删去整条语句。
3.改正后的源程序(文件名myf1.c)保存在T:盘根目录中供阅卷使用,否则不予评分。
二、编程题(24分)【程序功能】一个整数的“真因子”是指包括1但不包括整数自身的因子。
201012真题C语言(含答案)
0124、以下叙述正确的是()。
A.注释部分可单独占用一行,也可跟在语句的后面B.函数体定界符也可用一对方括号"[ ]"C.C语言源程序每一行就是一条语句D.由于C语言源程序都是从main()函数开始执行,所以main()函数必须位于程序文件最前面0125、下面叙述错误的是()。
A.所有语句都必须以分号";"结束B.语句是构成C语言源程序的基本单位C.C语言源程序必须包含一个main()函数D.注释部分在程序编译和运行时不起作用0126、main()函数的位置()。
A.必须位于程序文件的最前面B.必须位于用户自定义函数的前面C.可位于用户自定义函数之前,也可位于用户自定义函数之后D.必须位于用户自定义函数的后面0127、()是结构化程序设计应遵循的原则。
A.选用的控制结构可有多个入口和一个出口B.根据需要可使用嵌套基本控制结构表示程序逻辑C.应使用顺序、选择、循环三种基本控制结构表示程序逻辑D.为提高程序效率,应尽量使用Goto语句0128、描述一个算法可以有不同的方式,常见的有()。
A.汇编语言、高级语言和低级语言B.自然语言、流程图和伪代码C.机器语言、汇编语言和高级语言D.高级语言、自然语言和伪代码0224、下列不属于C语言数据类型的是()。
A.双精度型B.枚举类型C.复数类型D.长整型0225、下列合法的浮点数的是()。
A..65B.E2C.2E0.5D.1230226、下列不合法的字符常量的是()。
A.'\t'B.'\n'C.'\\'D."a"0227、下列()是不正确的常量形式。
A.'x5'B.1.6E6C.1E-2D."\0"0228、下列()是不合法的用户标识符。
A._f6B.divC.5xD._num0324、若已定义:int n=2; double x=2.5; 则下列表达式中不符合语法的是()。
国家计算机二级c语言2010-2007年的真题及答案
2010年3月全国计算机二级C语言考试一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
(1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)(2)算法的时间复杂度是指A)算法的执行时间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的基本运算次数(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是A)编辑软件B)操作系统C)教务管理系统D)浏览器(4)软件(程序)调试的任务是A)诊断和改正程序中的错误B)尽可能多地发现程序中的错误C)发现并改正程序中的所有错误D)确定程序中错误的性质(5)数据流程图(DFD图)是A)软件概要设计的工具B)软件详细设计的工具C)结构化方法的需求分析工具D)面向对象方法的需求分析工具(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于A)定义阶段B)开发阶段C)维护阶段C)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:R TA B Ca 1 2AB Cc3 2 d 3 2则由关系R得到关系T的操作是A)选择 B)投影 C)交 D)并(11)以下叙述正确的是A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如:fun (fun (x))C)C语言函数不可以单独编译D)C语言中除了main 函数,其他函数不可作为单独文件形式存在(12)以下关于C语言的叙述中正确的是A)C语言中的注释不可以夹在变量名或关键字的中间B)C语言中的变量可以在使用之前的任何位置进行定义C)在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致D)C语言的数值常量中夹带空格不影响常量值的正确表示(13)以下C语言用户标识符中,不合法的是A)_1 B)AaBc C)a_b D)a--b(14)若有定义:doublea=22;inti=0,k=18;,则不符合C语言规定的赋值语句是A)a=a++,i++; B)i=(a+k)<=(i+k);C)i=a%11; D)i=!a ;(15)有以下程序#include<stdio.h>main(){char a,b,c,d;scanf(“%c%c ”,&a,&b);c=getchar();d=getchar;printf(“%c%c%c%c\n ”,a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是 一个字符)12<CR>34<CR>则输出结果是A)1234 B)12 C)12 D)123 34(16)以下关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型 D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==I)||(a! =1)的值是b2 2 c3 2 d 3 2A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是A)switch(a){case1:a=b;break;default:a++;}B)switch(a==1){case0:a=b;break;case1:a++;}C)switch(a){default:a++;break;case1:a=b;}D)switch(a==1){case1:a=b;break;case0:a++;}(19)有如下嵌套的if语句if(a<b)if(a<c) k=a;else k=c;if(b<c) k=b;else k=c;以下选项中与上述if语句等价的语句是A)k=(a<b)?a:b;k=(b<c)?b:c;B)k=(a<b)?((b<c)?a:b)((b>c)?b:c);C)k=(a<b)?((a<c)?a:c)((b<c)?b:c);D)k=(a<b)?a:b;k=(a<c)?a:c;(20)有以下程序#include<stdio.h>main(){int i,j,m=1;for(i=1;i<3;i++){for(j=3;j>0;j--){if(i+j>3) break;m*=i*j;}}printf(“m=%d\n”,m);}程序运行后的输出结果是A)m=6B)m=2C)m=4D)m=5(21)有以下程序#include<stdio.h>main(){int a=1,b=2;for(;a<8;a++) { b+=a;a+=2;}printf(“%d,%d\n”,a,b);}程序运行后的输出结果是A)9,18B)8,11C)7,11D)10,14(22)有以下程序,其中k的初值为八进制数#include<stdio.h>main(){int k=011;printf(“%d\n”,k++);}程序运行后的输出结果是A)12B)11C)10D)9(23)下列语句组中,正确的是A)char *s;s="Olympic";B)char s[7];s="Olympic";C)char *s;s={"Olympic"};D)char s[7];s={"Olympic"};(24)以下关于return语句的叙述中正确的是A)一个自定义函数中必须有一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返同到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008 ;D)#define N 2008int num[N]; int num[N];(26)有以下程序#include<stdio.h>void fun(char *c,int d){*c=*c+1;d=d+1;printf(“%c,%c”,*c,d);}main(){char b=‘a’,a=‘A’;fun(&b,a);printf(“%c,%c\n”,b,a);}程序运行后的输出结果是A)b,B,b,AB)b,B,B,AC)a,B,B,aD)a,B,a,B(27)若有定义int(*pt)[3];,则下列说法正确的是A)定义了基类型为int的三个指针变量B)定义了基类型为int的具有三个元素的指针数组ptC)定义了一个名为*pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,以下能够代表数组元索a[3]的是A)(*s)[3] B) *(s+3)C)*s[3] D) *s+3(29)有以下程序#include<stdio.h>main(){int a[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0;for(i=1;i<3;i++) s=s+a[b[i]];printf(“%d\n”,s);}程序运行后的输出结果是A)6B)10C)11D)15(30)有以下程序#include<stdio.h>main(){int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=1;i<3;i++)for(j=1;j<=1;j++) t+=b[i][b[j][i]];printf(“%d\n”,t);}程序运行后的输出结果是A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!", s2="\n123\\";printf("%d%d\n",strlen(s1),strlen(s2));则输出结果是A)55B)105C)107D)58(32)有以下程序#include<stdio.h>#define N 8void fun(int *x,int i){*x=*x+i;}main(){int a[N]={1,2,3,4,5,6,7,8},i;fun(a,2); for(i=1;i<N/2;i++){printf(“%d”,a[i]);}printf(“\n”);}程序运行后的输山结果是A)1313B)2234C)3234D)1234(33)有以下程序#include<stdio.h>int f(int t[],int n);main(){int a[4]={1,2,3,4},s;s=f(a,4);printf(“%d\n”,s);}int f(int t[],int n){if (n>0)return t[n-1]+f(t,n-1);else return 0;}程序运行后的输出结果是A)4B)10C)14D)6(34)有以下程序#include<stdio.h>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);}程序运行后的输出结果是A)0B)1C)4D)8(35)有以下程序#include<stdio.h>#define SUB(a) (a)-(a)main(){int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%d\n”,d);}程序运行后的输山结果是A)0B)-12C)-20D)10(36)设有定义:struct complex{int real,unreal;} data1={1,8},data2;则以下赋值语句中错误的是A)data2=data1;B)data2=(2,6);C)data2.real=data1.real;D)data2.real=data1.unreal;(37)有以下程序#include<stdio.h>#include<string.h>struct A{int a;char b[10];double c;};void f(struct At);main(){struct Aa={1001,“ZhangDa”,1098.0};f(a);printf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);}void f(struct At){t.a=1002;strcpy(t.b,“ChangRong”);t.c=1202.0;}输出结果是A)1001,ZhangDa,1098.0B)1002,ChangRong,1202.0C)1001,ChangRong,10980D)1002,ZhangDa,1202.0(38)有以下定义和语句struct workers{int num;char name[20];char c;struct{int day;int month;int year;}s};struct workers w,*pw;pw=&w;能给w中year成员赋1980的语句是A) pw.year=1980;B)w.year=1980;C)pw->year=1980;D)w.s.year=1980;(39)有以下程序#include<stdio.h>main(){int a=2,b=a,c=2;printf(“%d\n”,a/b&c);}程序运行后的输出结果是A)0B)1C)2D)3(40)有以下程序#include<stdio.h>main(){FILE *fp;char str[10];fp=open(“myfile.dat”,“w”);fputs(“abc”,pf);close(pf);fp=open(“myfile.dat”,“a+”);fprintf(pf,“%d”,28);rewind(pf);fscanf(pf,“%s”,str);puts(str);close(pf);}程序运行后的输出结果是A)abcB)28cC)abc28D)因类型不一致而出错二、填空题(每空2分,共30分)请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
2010年12C语言机试模拟题
试卷一以下程序功能为:统计所有三位正整数中各个数位是数字之和是11的数的个数,请改错。
#include <stdio.h>void main(){ int i,j,s,count;count=1; /*$ERROR1$*/ count=0;for(i=100;i<=999;i++){s=0;j=i;while(j>1) /*$ERROR2$*/ (j>=1){s=s+j/10;/*$ERROR3$*/ s=s+j%10;j=j/10; }if(s==11) count=count+1; }printf("%d\n",count); }输出以下图形(数字之间没有空格,每行第一个数字之前也没有空格)请填空。
0001000001110001111101111111011111000111000001000#include <stdio.h>#include <math.h>void main(){ int i,j;for(i=-3;i<=___;i++) /*$BLANK1$*/ 3{ j=1;while(j<=abs(i)){ printf("0"); j++; }j=1;while(j___7-2*abs(i)) /*$BLANK2$*/ <={ printf("1"); j++; }j=1;while(j<=abs(i)){ printf("0");___; /*$BLANK3$*/ j++}printf("\n"); }}求所有水仙花数之和。
例153=1*1*1+5*5*5+3*3*3 #include <stdio.h> void PRINT(int s){ FILE *out;printf("sum=%d\n",s);if((out=fopen("C:\\24000101\\RESULT.DA T","w+"))!= NULL)fprintf(out,"sum=%d",s);fclose(out); }void main(){int s=0,a,b,c,i;for (i=100;i<1000;i++){ a=a/100;b=i/10%10;c=c%10;if (a*a*a+b*b*b+c*c*c==i) s=s+i; }PRINT(s);}试卷二以下程序功能为:在屏幕上输出如下图形(数字字符之间和第一个数字字符前都没有空格),请改错。
20102012江苏省计算机二级C语言真题及答案
2009年春季江苏省高校计算机等级考试考试试题第一部分计算机基础知识1. 在下列有关现代信息技术的一些叙述中,正确的是 1 。
A.集成电路是20世纪90年代初出现的,它的出现直接导致了微型计算机的诞生B.集成电路的集成度越来越高,目前集成度最高的已包含几百个电子元件C.目前所有数字通信均不再需要使用调制解调技术和载波技术D.光纤主要用于数字通信,它采用波分多路复用技术以增大信道容量‘ .2. 最大的10位无符号二进制整数转换成八进制数是 2 .。
A.1023B.1777C.1000D.10243. 在下列有关目前PC机CPU的叙述中,错误的是 3 。
A.CPU芯片主要是由Intel公司和AMD公司提供的B."双核"是指PC机主板上含有两个独立的CPU芯片C.Pentium 4微处理器的指令系统由数百条指令组成D.Pentium 4微处理器中包含一定容量的Cache存储器4. 在下列有关当前PC机主板和内存的叙述中,正确的是 4 。
A.主板上的BIOS芯片是一种只读存储器,其内容不可在线改写B.绝大多数主板上仅有一个内存插座,因此PC机只能安装一根内存条C.内存条上的存储器芯片属于SRAM(静态随机存取存储器)D.目前内存的存取时间大多在几个到十几个ns(纳秒)之间5. 在下列有关PC机辅助存储器的叙述中,正确的是 5 。
A.硬盘的内部传输速率远远大于外部传输速率B.对于光盘刻录机来说,其刻录信息的速度一般小于读取信息的速度C.使用USB 2.0接口的移动硬盘,其数据传输速率大约为每秒数百兆字节D.CD-ROM的数据传输速率一般比USB 2.0还快6. 在下列PC机I/O接口中,数据传输速率最快的是 6 。
B 2.0B.IEEE-1394C.IrDA (红外)D.SATA7. 计算机软件可以分为商品软件、共享软件和自由软件等类型。
在下列相关叙述中,错误的是 7 。
A.通常用户需要付费才能得到商品软件的使用权,但这类软件的升级总是免费的B.共享软件通常是一种"买前免费试用"的具有版权的软件C.自由软件的原则是用户可共享,并允许拷贝和自由传播D.软件许可证是一种法律合同,它确定了用户对软件的使用权限8. 人们通常将计算机软件划分为系统软件和应用软件。
华中科技大学 2010级信息学院C语言程序设计考试试题A
级信息学院《C 语言程序设计》考试试题(A ) 一、判断下列语句或程序段的对错。
(“×”表示错,“√”表示对)(10分) (1) int x=0,y=x; ( ) (2) #define SIZE 10 ( ) int a[SIZE /2][SIZE]; (3) char *str ; str ="c\test"; ( ) (4) register int n; scanf(“%d ”,&n); ( ) (5) int x ,*px=&x ; float *p=px; ( ) (6) int (*pa)[8],a[6][8]; pa=*a++; ( ) (7) int x ,*px ; *px=&x; ( ) (8) int **pp,a[6][8]; pp=a; ( ) (9) float xyz.1=3; ( ) (10) int x =‘\x78’; ( ) 二、计算下列表达式的值(10分) 设unsigned int a=7, b=17, c=5, d=3; float f; (11) f =c/d; ( ) (12) (!(a+b)+c-1) | | (b+c/3) ( ) (13) (a&b)^( ~c | ~d) ( ) (14) f= (a-b>0 ? c/d : c%d ) ; ( ) (15) b=a++ , a%3 ( ) 三、程序改错(10分) 要求:不得改变程序框架,不得重写程序,无需文字说明,直接在代码上添加、删除和修改。
(16) 用指针的方法实现对输入的3个整数按从小到大的顺序输出显示 #include <stdio.h> void main(void) { int a,b,c;int *pa=&a,*pb=&b,*pc=&c;scanf("%d%d%d",&pa,&pb,&pc);院系________________班级________________姓名________________学号________________成绩________________if(*pa>*pb) swap( pa , pb);if(*pb>*pc) swap( pb , pc);printf("%d\t%d\t%d\n",*pa,*pb,*pc);}void swap(int *px,int *py){int *temp;temp =px;px =py;py =temp;}(17)统计N个字符串中大写字母和数字字符的个数#include <stdio.h>#define N 5void main(void){char string[N][80];char i;int CapitalCount , NumCount;for(i=1;i<=N;i++)scanf("%s",&string[i]);for(i=0;i<=N;i++)CapitalCount +=count(string[i],&NumCount);printf("CapitalCount=%d,NumCount=%d\n",CapitalCount,NumCount); }count(char *pstr , int *result){int temp,i;*result = temp=0;for(i=0 ; i<80 ; i++){if(pstr[i]>='A'&&pstr[i]<='Z')temp ++;if(pstr[i]>=0&&pstr[i]<=9)*result ++;}return temp;}四、程序填空(10分)(18)找N个字符串中最大字符串和最小字符串#include <stdio.h>#include <string.h>#define N 5char *GetMaxMinString( );char *GetMaxMinString( ){int a;char *max;;for(a=1;a<num;a++){if( )max =string[a];if( )*min =string[a];}return max;}void main(void){char string[N][80],*pmax,*pmin;int i;for(i=0;i<N;i++)gets(string[i]);pmax =GetMaxMinString( );printf("Max string is %s,Min string is %s\n",pmax,pmin);}(19)以下程序用二维数组保存多个字符串,用二级指针处理多个字符串的排序。
2010和2011年计算机c程序设计真题及答案
二O一O年硕士学位研究生招生入学考试试题考试科目:计算机程序设计代码:9271.填空题20题,每题1分1)程序的三种基本的控制结构是:顺序结构、选择结构、循环结构。
2)外部函数的储存类型是,它既可以在本编译单位中被调用,又可以在中被调用。
3)若a函数中调用了b函数,而b函数又调用了c函数,这种调用称为调用。
若a函数中调用了b函数,而b函数又调用了a函数,这种调用称为调用。
4)“*”称为指针运算符,“&”称为取值运算符。
5)表示结构体成员的“ . ”称为成员(分量)运算符,“ -> ”称为分量运算符。
6)如果调用fopen函数不成功,则函数返回值为0;如果调用fclose函数不成功,则函数返回值为EOF。
7)C++语言中有//和/*与*/ 二种注释方法。
8)在C++中用关键字 class来定义新的类。
9)若有以下定义,则不移动指针p,且通过指针p引用值98的数组元素的表达式是。
int w[10]={23,54,10,33,47,98,72,80,61,102}, *p=w;10)位运算:0x1a2c&0x1a79 的运算结果是(用八进位制形式写出)015050 。
2.程序填空题4题,每题5分1)下列程序的功能是计算1-10之间偶数之和,请填空。
#include <iostream.h>void main( ){ int a, b,i:a=0;b=0;for ( i=0;__i<=10_____;i+=2){ a+=i;(2) ;}cout<<“偶数之和为:”<<a<<endl;}2)下列程序是将一个正整数n的各个位向左循环移动4位,请在程序的横线上填写适当的内容。
#include <stdio.h>void main(void){ int k,n,a;scanf(“%d”,&n);k=n&0xf000;k= >>12 ;a=n<<4;a=k | a;printf(“n=%o\n a=%o\n”,n,a);}3)下面是字符串拷贝函数,请填空。
全国计算机等级考试二级C语言真题2010年10月-32次
窗体顶端11. 以下关于结构化程序设计的叙述中正确的是A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)结构化程序使用goto语句会很便捷C)在C语言中,程序的模块化是利用函数实现的D)由三种基本结构构成的程序只能解决小规模的问题A B C D 未答题该题得分:C正确答案:试题来全国计算机等级考试二级C语言真题2010年10月-32次源:【解析】: 一个结构化程序可以由顺序、分支、循环三种结构组成,但不是必须同时都包括,可以包括其中的一个或多个,所以选项A )错误。
三种基本结构构成的程序也可以解决大规模的程序,所以选项D )错误。
在C 语言中,利用函数来实现程序的模块化,C )正确。
12. 以下关于简单程序设计的步骤和顺序的说法中正确的是 A )确定算法后,整理并写出文档,最后进行编码和上机调试B )首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C )先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D )先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构A BCD未答题该题得分: 0 正确答案:B 试题来源: 全国计算机等级考试二级C 语言真题2010年10月-32次 【解析】:设计一个能解决实际问题的计算机程序需要经过以下几个过程:①建立模型。
②算法设计:给出解决问题的步骤,即算法。
③算法表达:选择一种表达算法的工具,对算法进行清晰的表达。
④编写程序:选择一种程序设计语言,把以上算法程序化,这称为编写程序。
⑤程序调试:对编写好的程序进行调试,修改程序中的错误。
⑥程序文档编写与程序维护。
综上所述,B )选项是符合上述描述的,其他选项不恰当。
13. 以下叙述中错误的是A)C程序在运行过程中所有计算都以二进制方式进行B)C程序在运行过程中所有计算都以十进制方式进行C)所有C程序都需要编译链接无误后才能运行D)C程序中整型变量只能存放整数,实型变量只能存放浮点数A B C D 未答题该题得分:B正确答案:试题来源:全国计算机等级考试二级C 语言真题2010年10月-32次 【解析】:C 程序在运行过程中所有计算都以二进制方式进行,所以A )正确B )错误。
2010-2012春季C语言考试题
考试题一选择题1、语句printf(“%%d%d”, 123); 将输出:A) %123%d B) %%d123 C) %d123 D)上述语句语法有错2、执行下列程序段后, a值为:int a, b;a=15; b=12;a=(a-- ==b++)? a%5 : a/5;A) 0 B) 2.8 C ) 4 D) 23、判断字符变量c的值为数字(’0’---’9’)则返回1,否则返回0, 可用表达式:A) ‘0’<=c<=‘9’ B) ‘0’<=c && c<=‘9’C) ‘0’<=c || c<= ‘9’ D)以上均不是4、对于int x, y; 语句if (x<0) y= -1; else if (!x) y=0; else y=1; 等价于:A) y=0; if (x>=0) if (x) y=1; else y= -1;B) if (x!=0) if (x>0) y=1; else y= -1; else y=0;C) if (x<0) y= -1; if (x!=0) y=1; else y=0;D) y= -1; if (x!=0) if (x>0) y=1; else y=0;5、循环for(i=0, j=5; ++i!=--j; ) printf(“%d %d”, i, j); 将执行A) 6次B) 3次C) 0次D) 无限次6、下列程序段执行后s值为:int i=5, s=0;do if (i%2) continue; else s+=i; while (--i);A) 15 B) 9 C) 6 D) 以上均不是7、对于int a,要使((1<<2>>1)|a)==a; 则a 可以是:A) 2 B) 6 C) 10 D) 2,6,10均可8、对于以下宏定义:#define SQ(x) x*x#define DD(x,y) SQ(x)-SQ(y)宏调用DD(2*3, 2+3)执行后值为:A) 43B) 11 C) 25 D) 以上均不是9、对于以下结构定义:struct { int len;char *str;} *p;*p->str++中的++加在A) 指针str上B) 指针p上C) str所指的内容上D) 以上均不是10、将s所指节点加到p所指节点之后(如下图), 其语句应为:........A) s->next = p+1; p->next = s;B) p->next = s; s->next = p->next;C) s->next=p->next; p->next=s->next;D) s->next = p->next; p->next = s;11、语句if (a>b) k=0; else k=1; (int a, b, k) 等价于:A) k=(a>b)?1:0; B) k=a>b; C) k=a<=b;D) 以上均不是12、对于int i; char c, s[20];从输入序列123ab45efg中将123读入i; ’ b’读入c; “45efg”读入s, 则scanf语句应写为:A) scanf(“%da%c%s”, i, c, s) B) scanf(“%d%*c%c%s”,&i, &c, s);C) scanf(“%da%c%s”, &i,&c,&s) D) scanf(“%d%c%c%s”, &i, &c, s);13、若有以下说明和语句, 已知int和double类型分别占2和8个字节,则sizeof(st)的值为:struct st {char a[10];union {int i;double y;}};A) 18 B) 20 C) 12 D) 以上均不是14、对于以下程序段, 运行后i值为:enum WEEKS {1,2,3,4,5,6,7} ;enum WEEKS a=1;int i=0;switch (a) {case 1: i=1;case 2: i=2;default: i=3;}A) 1 B) 0 C) 3 D) 上述程序有语法错误15、对于以下递归函数f, 调用f(4),其返回值为:int f(int n){ return f(n-1)+n; }A) 10 B) 11 C) 0 D) 以上均不是16、某一程序TEST.C,编译后运行:TEST 123 456 ABC 则相应的argc及argv[3]分别为:A) 3 “456” B) 3 “ABC” C) 4 “456” D) 4 “ ABC”17、如下程序段:int c[]={1, 7, 12};int *k;k=c;printf("next k is %d",*++k);其输出应为:A) 2 B) 7 C) 1 D)以上均不对18、如果变量xx有如下类型:struct {char a1; 1int a2; 2} xx;如果sizeof(xx)的值为3, 则:union {char a1;int a2;int a3;} yy;则sizeof(yy)函数的返回值应为:A) 2 B) 4 C) 5 D)定义有错19、对于enum { RAIN, CLOUD, CLEAR } weather;做如下操作:⑴weather=1;⑵weather=CLOUD; 下列哪个说法是对的。
2010年二级C语言南开100题(全)
2010年二级C语言南开100题(全)1: 第1题 m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人作为函数值返回,将低于平均分的分数放在below所指定的函数中。
答案:int fun(int score[],int m,int below[]){int i,k=0,aver=0;for(i=0;i<m;i++)aver+=score[i];aver/=m;for(i=0;i<m;i++)if(score[i]<aver){below[k]=score[i];k++;}return k;}2: 第2题请编写函数fun,它的功能是:求出1到100之内能北7或者11整除,但不能同时北7和11整除的所有证书,并将他们放在a所指的数组中,通过n返回这些数的个数。
答案:void fun(int *a, int *n){int i,j=0;for(i=2;i<1000;i++)if ((i%7==0 || i%11==0) && i%77!=0)a[j++]=i;*n=j;}3: 第3题请编写函数void fun(int x,int pp[],int *n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。
答案:void fun(int x, int pp[ ], int *n){int i=1,j=0;k=0,*t=pp;for(i=0;i<=x;i++)if(i%2!=0){t[j]=I;j++;}for(i=0;i<j;i++)if(x%t[i]==0){pp[k]=t[i];k++;}*n=k;}4: 第4题请编写一个函数void fun(char *tt,int pp[]),统计在tt字符中"a"到"z"26各字母各自出现的次数,并依次放在pp所指的数组中。
二级C语言2010年秋季考试(真题汇总)
计算机等级历年真题(二级C语言)2011年05月01日2010年秋季考试(真题汇总)一、选择题部分1.述一个算法可以有不同的方式,常见的有()。
A.高级语言、自然语言和伪代码B.机器语言、汇编语言和高级语言C.汇编语言、高级语言和低级语言D.自然语言、流程图和伪代码2.下列四个运算符,按优先级别由高到底排列的是()A. !、%、=、==B. %、!、==、=C.!、=、%、== D.!、%、==、=3.若已定义:int i=5,m=1;则下列语句不会产生无限循环。
A.do {m+=3; B, for(;i<10;)}while(i==5); m+=3;C. while(i=1)D. for(;i>0;i--)m+=3; m+=3;4.下列程序段的运行结果是()。
Int arr[ ][4]={1,2,3,4,5,6,7,8,9,10,11,12};Printf(“%d\n”,arr[1][3]);A.3B. 12C. 8D.115.下列叙述正确的是()。
A.函数的定义和调用都不允许嵌套B.函数的定义和调用都允许嵌套C.函数的定义允许嵌套,但函数的调用不允许嵌套D.函数的定义不允许嵌套,但函数的调用允许嵌套6.若已定义:int a[5]={1,2,3,4,5},*p=a;且p值未发生变化,下列不能表示a[1]地址的是()。
A. a+1B. ++pC. p+1D. a++7.若已定义:struct student {int num;float score;}stu[4];以下错误的语句是()。
A. printf(“%d”,(*stu).num);B. *(stu)=*(stu+1);C. stu[0]->num=101;D. stu[0]=stu[1];8.下列对枚举类型的定义正确的是()。
A. enum a{“A”,”B”,”C”};B. enum a{x=-2,y=1,z=3};C. enum a={A,B,C};D. enum a={“A”,”B”,”C”};9.下列合法的浮点数的是()A .2E0.5 B. 65 C.123 D.E210.若已定义:double x,y;则下列表达式不能正确计算(x-2)/3*y的是()A. y*(x-2)/3B. (x-2)*y*1/3C. y/3*(x-2) D .(1/3)*(x-2)*y11.下列当x的值在5至10之间为“假”,否则为“真”的逻辑表达式为()A x>=5&&x<=10B !(5<=x && x<=10)C x<=5 && x>=10D !(5<=x<=10)12若已定义:char str1[20]=”guangzhou”,str[20]=”2010”;能形成字符串“GUANGZHOU 2010”的语句是()A strcat(strupr(str1),str2);B strcpy(str2,strupr(str1));C strcpy(strupr(str1),str2);D strcat(str2,strupr(str1));13下列叙述正确的是()A 为提高程序运行速度可在源程序中加入一些宏定义B 一个C语言源程序只能有一条预处理命令C 宏定义不占用程序运行时间,但与程序中的语句一样需要编程D 宏定义中的宏名必须用大写字母表示14 下列程序的运行结果是()void fn(int *p,int n){int j;for(j=0;j<i;j++)*(p+j)+=10;}void main(){int a[5]={1,2,3,4,5};int i;fn(a,5);for(i=0;i<=5;i++)printf(“%d”,*(a+i);A . 1 2 3 4 5 B. 1 2 3 4 15 C. 11 2 3 4 5 D . 11 12 13 14 1515.下列不合格的字符常量的是()。
《C语言程序设计》期末程序设计练习题库_12月11日更新
9、输入一串字符,以回车键作为结束,统计出其中英文字母、数字和其他字符的个数。
10.编程计算 2!+4!+6!+8!+10!+12!+14!+16!+18!+20!,并输出结果。
第 4 章 数组
1、采用“冒泡法”对任意输入的 10 个整数按由小到大的顺序排序。算法过程必须小的数向上冒,也就是第 一遍扫描结束,最小的数组元数放在 a[0],第二遍扫描结束,次小的数组元数放在 a[1]。要求程序代码完 整,程序在运行过程中输入 10 个整数,10 个整数一行输入,每个整数输入时空一个空格;在排序算法处理 后,按由小到达的顺序输出,输出也一行输出,每个整数之间空一个空格。
3、编写函数 fun,该函数的功能是:求出整型数组 a 中 N 个数值的平均值,并将大于平均值 的整数放入数组 b 中,数组 b 中的个数作为函数值返回。在 main 函数中,输入 N 个整数,调 用 fun 函数,最后输出这 N 个整数中所有大于平均值的整数,每行输出 5 个数。 4、数组元素作为函数参数,任输入10个三位数,计算有多少个数其各位数字和是5 5、用递归法求 n!
6、请编写一个函数完成将用户输入的一串整型数字字符转换为整型数值, 例如用户输入串”567”, 应该能 返回整数值 567。在 main()函数中接收用户输入的数字,调用函数进行转换,并输出转换后的结果(必须是 输出整型) 。 7、请编写一函数 strcpy,函数原型声明为:void strcpy(char* target, char *src); 能实现将字符串 src 拷贝到字符数组 target。 在 main()函数中接收用户输入的一个字符串 (不超出 256 个字符) , 调用 strcpy 函数将其复制到一个数组中,并输出字符数组的内容。 8、请编写一函数 getFileExtName,函数原型声明为:char *getFileExtName(char *filename);能实现返 回传入文件名的扩展名,例如用户传入的文件名为”d:\\finalexame\\exam.c”,函数返回字符串”c”。 在 main()函数中接收用户输入的一个文件名(含路径) ,调用函数获取其扩展名,并输出的结果。 9、请编写一函数 strcmp,函数原型声明为:int strcmp(char *str1, char *str2);能实现两个串的大小 比较,若 str1 比 str2 大返回 1,若 str1 等于 str2 返回 0,若 str1 小于 str2 返回-1。在 main()函数中接 收用户输入的两个字符串,调用 strcmp 函数进行比较,并输出比较的结果。 10. 请编写一函数 draw,函数原型声明为:void drawPyramid(int level);能实现绘制 level 层高度的金 字塔。例如,输入层高为 12,输出如下的图形
C语言期末考试试卷 B卷与参考答案
2010~2011学年度第一学期10级《C语言》期末考试试卷(B卷与参考答案)班级1006计网学号姓名总分(适用班级:1006计网)(考试形式:闭卷时间:90分钟)一、选择题(每题2分,共60分)1、一个C程序的执行是从(A)。
A本程序的main函数开始,到main函数结束B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C本程序的main函数开始,到本程序文件的最后一个函数结束D本程序文件的第一个函数开始,到本程序main函数结束2、在C 语言中,每个语句必须以(D)结束。
A. 回车符B. 冒号C. 逗号D. 分号3、C 语言规定:在一个源程序中,main函数的位置(C)。
A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后4、一个C 语言程序是由(B)。
A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成5、下列说法中错误的是( D )。
A. 主函数可以分为两个部分:主函数说明部分和主函数体B. 主函数可以调用任何非主函数的其他函数C. 任何非主函数可以调用其他任何非主函数D. 程序可以从任何非主函数开始执行6、用C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( C)。
A. 生成可执行目标文件B. 生成目标文件C. 输出运行结果D. 自动保存源文件7、以下选项中,不正确的C 语言浮点型常量是(C)。
A. 160.B. 0.12C. 2e4.2D. 0.08、以下选项中,(D)是不正确的C 语言字符型常量。
A. 'a'B. '\x41'C. '\101'D. "a"9、C语言中,运算对象必须是整型数的运算符是( A )A) % B) \ C) %和\ D) * *10、C语言中数组下标的下限是( B )。
A、1B、0C、视具体情况D、无固定下限11、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是( B )A) input x,y,z; B) scanf("%d%d%d",&x,&y,&z);C) scanf("%d%d%d",x,y,z); D) read("%d%d%d",&x,&y,&z);12、表达式:10!=9的值是( D )A) true B) 非零值C) 0 D) 113、表示关系x<=y<=z的c语言表达式为( A)A) (X<=Y)&&(Y<=Z) B) (X<=Y)AND(Y<=Z)C) (X<=Y<=Z) D) (X<=Y)&(Y<=Z)14、下列运算符其优先级最高的是( C)。
2012年到2010年计算机二级C语言笔试真题及答案详解
2012年3月全国计算机等级考试二级C语言真题一.选择题1.下列叙述中正确的是:A.循环队列是队列的一种顺序存储结构B.循环队列是队列的一种链式存储结构C.循环队列是非线性结构D.循环队列是一直逻辑结构2.下列叙述中正确的是A.栈是一种先进先出的线性表B.队列是一种后进先出的线性表C.栈和队列都是非线性结构D.以上三种说法都不对3.一棵二叉树共有25个节点,其中5个时子节点,那么度为1的节点数为A.4 B.6 C.10 D.164.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A.内模式B.外模式C.概念模式D.逻辑模式5.在满足实体完整性约束的条件下A.一个关系中可以没有候选关键词B.一个关系中只能有一个候选关键词C.一个关系中必须有多个候选关键词D.一个关系中应该有一个或者多个候选关键词6.有三个关系R.S和T如下:SA B Ca 1 2b 2 1RA B Ca 1 2b 2 1c 3 1TA B Ca 2 1b 3 1则由关系R和S得到关系T的操作是A.自然连接B.并C.差D.交7.软件生命周期中的活动不包括A.软件维护B.市场调研C.软件测试D.需求分析8.下面不属于需求分析阶段任务的是A.确定软件系统的功能需求B.确定软件系统的系统的系能需求B.制定软件集成测试计划D.需求规格说明书审评9.在黑盒测试方式中,设计测试用例的主要根据是A.程序外部功能B.程序内部逻辑C.程序数据结构D.程序流程图10.在软件设计中不使用的工具是A.系统结构图B.程序流程图C.PAD图D.数据流图(DFD图)11.针对简单程序设计,以下叙述的实施步骤正确的是A.确定算法和数据结构.编码.调试.整理文档B.编码.确定算法和数据结构.调试.整理文档C.整理文档.确定算法和数据结构.编码.调试D.确定算法和数据结构.调试.编码.整理文档12.关于C语言中数的表示,以下叙述正确的是A.只有整型数在允许范围内能精确无误的表示,实型数会有误差B.只要在在允许范围内整型和实型都能精确表示C.只有实型数在允许范围内能精确无误的表示,整型数会有误差D.只有八进制表示的数在不会有误差13.以下关于算法叙述错误的是A.算法可以用伪代码.流程图等多种形式来描述B.一个正确的算法必须有输入C.一个正确的算法必须有输出D.用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码14.以下叙述错误的是A.一个C程序可以包含多个不同名的函数B.一个C程序只能有一个主函数C.C程序在书写时,有严格的缩进要求,否则不能编译通过D.C程序的主函数必须用main作为函数名15.设有以下语句Char ch1,ch2, scanf(”%c%c”,&ch1,&ch2);若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是A.A和B之间用逗号间隔B.A和B之间不能有任何间隔符C.A和B之间可以用回车间隔D.A和B之间用空格间隔16.以下选项中非法的字符常量是A.’\102’ B.’\65’ C.’\xff’ D.’\019’17.有以下程序#include <sthio.h>Main(){Int A=0,B=0,C=0;C=(A-=A-5);(A=B,B+=4);Printf(“%d, %d, %d\n”,A,B,C)}程序运行后输出的结果是A 0,4,5B 4,4,5C 4,4,4D 0,0,018.设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是A.x++; printf((“%d\n”,x); B.n=++x; printf((“%d\n”,n);C.++x; printf((“%d\n”,x); D.n=x++; printf((“%d\n”,n);19.以下选项中,能表示逻辑值“假”的是A 1B 0.000001C 0D 100.0 20.有以下程序#include <sthio.h>Main(){ int a;Scanf(“%d”,&a);If(a++<9) printf((“%d\n”,a);Else printf((“%d\n”,a--);}程序运行时键盘输入9<回车>,则输出的结构是A.10 B 11 C 9 D 821.有以下程序#include <sthio.h>Main(){int s=0,n;For (n=0;n<3;n<++){switch(s){ case 0;Case 1;s+=1;Case 2;s+=2;break;Case 3;s+3;Case 4;s+=4;}printf((“%d\n”,s);}}程序运行后的结果是A 1,2,4B 1,3,6C 3,10,14D 3,6,1022.若k是int类型变量,且有以下for语句For(k=-1;k<0;k++)printf(****\n”);下面关于语句执行情况的叙述中正确的是A.循环体执行一次B.循环体执行两次C.循环体一次也不执行D.构成无限循环23.有以下程序#include <sthio.h>Main(){char A,B,C;B=’1’;C=’A’For(A=0;A<6;A++){if(A%2) putchar(B+A);Else putchar(C+A);}}程序运行后输出的结果是A 1B3D5FB ABCDFEC A2C4E6D 12345624.设有如下定义语句Int m[ ]={2,4,6,8},*k=m;以下选项中,表达式的值为6的是A *(k+2)B k+2C *k+2D *k+=225.fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。
2012年到2010年计算机二级C语言笔试真题及答案详解
2012年3月全国计算机等级考试二级C语言真题一、选择题1、下列叙述中正确的是:A、循环队列是队列的一种顺序存储结构B、循环队列是队列的一种链式存储结构C、循环队列是非线性结构D、循环队列是一直逻辑结构(1)【答案】A【解析】为了充分利用存储空间,可以把顺序队列看成一个环状空间,即把顺序队列的头尾指针相连,这样的队列称之为循环队列。
它是对顺序队列的改进,故循环队列是队列的一种顺序存储结构2、下列叙述中正确的是A、栈是一种先进先出的线性表B、队列是一种后进先出的线性表C、栈和队列都是非线性结构D、以上三种说法都不对(2)【D】【解析】栈是一种后进先出的线性表,队列是一种先进先出的线性表,二者均是线性结构,故选项A)、B)、C)均不对,答案为选项D)。
3、一棵二叉树共有25个节点,其中5个时子节点,那么度为1的节点数为(3)【D】【解析】由二叉树的性质n0=n2+1可知,度为0的结点数(即叶子结点数)=度为2的结点数+1,根据题意得知,度为2的结点数为4个,那么25-5-4=16即为度为1的结点数,选项D)正确A、4B、6C、10D、164、在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A、内模式B、外模式C、概念模式D、逻辑模式(4)、【答案】A【解析】内模式也称存储模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述。
所以选项A)正确。
5、在满足实体完整性约束的条件下A、一个关系中可以没有候选关键词B、一个关系中只能有一个候选关键词C、一个关系中必须有多个候选关键词D、一个关系中应该有一个或者多个候选关键词(5)【答案】D【解析】在关系R中如记录完全函数依赖于属性(组)X,则称X为关系R中的一个候选关键字。
在一个关系中,候选关键字可以有多个且在任何关系中至少有一个关键字。
所以在满足数据完整性约束的条件下,一个关系应该有一个或多个候选关键字,所以选项D)正确。
国家计算机二级c语言2010-2006年真题及答案
2010年9月二级C 语言笔试真题((1)—(10)每小题2分,(11)—(50)每题1分,共60分)(1)下列叙述中正确的是A )栈是“先进先出”的线性表B )队列是“先进先出”的线性表C )循环队列是非线性结构D )有序性表既可以采用顺序存储结构,也可以采用链式存储结构(2)支持子程序调用的数据结构是A )栈B )树C )队列D )二叉树(3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是A )10B )8C )6D )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 如下: R SA B Ca 3 2b 0 1c 2 1由关系R 通过运算得到关系S ,则所使用的运算为A )选择B )投影C )插入D )连接(10)将E-R 图转换为关系模式时,实体和联系都可以表示为A )属性B )键C )关系D )域(11)以下选项中合法的标识符是A ) 1-1B )1—1C )-11D )1--(12)若函数中有定义语句:int k ;,则A )系统将自动给k 赋初值0B )这时k 中值无定义C )系统将自动给k 赋初值-1D )这时k 中无任何值(13)以下选项中,能用作数据常量的是A )o115B ) 0118C )1.5e1.5D ) 115L(14)设有定义:int x=2;,以下表达式中,值不为6的是A ) x*=x+1B ) 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.141593B )123.141593C )12,3.141593D )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); elseA B a 3 b 0 c 2printf(“%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,2 C)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。
2010年上海市高等学校计算机等级考试试卷二级C语言程序设计( B 卷)
2010年上海市高等学校计算机等级考试试卷二级 C语言程序设计( B 卷)(本试卷考试时间 120 分钟)一、单选题1. 关于C程序的主函数,以下描述中正确的是:_______ 。
A. C程序的第一个函数称为主函数,程序从该函数开始运行。
B. C程序可以有多个主函数,程序从第一个主函数开始运行。
C. C程序可以没有主函数,程序从第一个函数开始运行。
D. C程序的主函数即是main函数,程序从该函数开始运行。
2. 字符变量a与b分别初始为'S'与'B',正确的语句是:_______ 。
A. char a,b='S','B';B. char a='S', char b='B';C. char a="S", b="B";D. char a='S', b='B';3. 设有int n=2010; 要求屏幕上显示“n=2010”结果,正确的语句是:_______ 。
A. printf( n );B. printf( "n=", n );C. printf( "n=", "%d", n );D. printf( "n=%d", n );4. 设有变量定义:int a=5, b=8;当执行完语句:b= a<b ? a: b - 1; 之后,变量 a和 b 的值为 _______。
A. 5和5B. 5和7C. 5和8D. 5和95. 设int n; 判断“n不为0”的表达式是:_______。
A. n==0B. !(n=0)C. n=!0D. n!=06. 若有定义: float w; int num; char s; 则合法的switch语句是_______。