




已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
序序号号题题干干A AB BC CD D 答答 案案 判判 定定 1 下列不合法的用户标识符是_。j2_KEYDouble4d_a_8_c 2 以下选项中合法的用户标识符是_。long_2Test3DmaxA.datb 3 结构体程序由3种基本结构组成,3种基本结构组成的 算法_。 可以完成任何复杂的任务 只能完成部分复杂的任务 只能完成符合结构化要求 的任务 只能完成一些简单的任务a 4 下列叙述中正确的是_。程序设计就是编制程序 程序的测试必须由程序员自 己去完成 程序经调试改错后还应进 行再测试 程序经调试发错后不必进行 再测试 c 5 以下程序中循环体的执行次数是_。 int main(void) int i,j; for(i=0,j=1;i1;i+) f*=i; f=1; for(i=n; i=2;i-) f*=i; d 10 下列程序运行后的输出结果是_。 int main( void ) int a=0, b=0; a = 10; b = 20; printf(“a+b=%dn“, a+b); return 0; a+b=10a+b=3030 出错b 11 下列程序的功能是_。 int main( void ) int i, s=0; for(i=1; iy);if(x=y) if(x!=y)scanf(“%d“, if(x=b) b=c; c=a; printf(“a=%d,b=%d,c=%dn“,a,b,c); return 0; a=20,b=10,c=20a=30,b=10,c=20a=30,b=10,c=30a=30,b=20,c=10c 14 下列程序运行时如果从键盘输入“7 9 8”,则运行结 果是_。 int main( ) int a,b,c,x,y; scanf(“%d%d%d“, if(ab) x=a;y=b; else x=b; y=a; if( xc ) y=c; printf(“x=%d,y=%dn“, x,y); return 0; x=9,y=9x=9,y=7x=8,y=8x=8,y=7c 15 假设变量s、a、b、c均已定义为整型变量,且a、c均 已赋值(c大于0),则与以下程序段“s=a; for(b=1;b=25 or a=25 | a=25 if(ab) t+=s; else if(a=b) t=5; else t=2*s; printf(“t=%dn“, t); return 0; abaabc 22 若a、b、c1、c2、x、y均是整型变量,以下正确的 switch语句是_。 switch( a+b); case 1:y=a+b;break; case 0:y=a-b;break; switch( a*a+b*b) case 3: case 1:y=a+b;break; case 3:y=b-a;break; switch a case c1:y=a- b;break; case c2:x=a*d;break; default: x=a+b; switch(a-b) default:y=a*b;break; case 3:case 4:x=a+b; break; case 10:case 11: y=a- b;break; d 23 下列程序段的输出结果是_。 int main( ) int i; for(i=0; i”, 则输出结果是_。 int main( ) int t, a, b, i; for(i=1; ib) t=a-b; else if(a=b) t=1; else t=b-a; printf(“%d“, t); return 0; 3 0 43 1 41 3 43 1 6b 27 下列程序运行时输入“7mazon”,则输出的结 果是_。 int main( ) char c; int i; for(i=1; i=a scanf(“%f“, if( x10 if(b%3=1) b+=3; continue; b-=3; 5678 b 40 执行“x= -1; do x=x*x; while( !x ); ”循环 时,下列说法正确的是_。 循环体将执行一次循环体将执行两次循环体将执行无限次系统将提示有语法错误a 41 下列选项中,没有构成死循环的程序段是_ 。 int i=100; while( 1) i = i%100+1; if(i100) break; for(; ; ); int k=1000; do+k;while(k=1000 0); int s=36; while( s); -s; c 42 下列程序段的输出结果是_。 int i,j, x=0; for(i=0; i” ,则输出结果为_。 int m,n; scanf(“%d%d“, while( m!=n ) while( mn ) m-=n; while (nm)n-=m; printf(“m=%dn“,m); m=0m=1m=2m=3B 44 下列程序段的输出结果是_。 for(i=1; i1; n-) s = s+1/n; printf(“%6.4fn“, s); return 0; int n; float s;for(n=10; n1; n-)s = s+1/n;s=1.0;C 49 以下程序段的输出结果是 _。 int i, j; for(i=1; i0 ) s+=k%10; k=k/10; if(s != 8 ) continue; else count+; printf(“%d“, count); 1234 B 51 下列程序运行时若从键盘上输入“3.6 2.4”,则输出结果是 _。 float x,y,z; scanf(“%f%f“, z=x/y; while ( 1 ) if(fabs(z)1.0) x=y; y=z; z=x/y; else break; printf(“%f“, y); 1.5000001.6000002.0000002.400000A 52 以下程序段的输出结果是 _。 for(i=1; i“); printf(“$“); $A 53 若i,j已定义为int类型,则以下程序段中,内循环的 总的执行次数为 _。 for( i=5; i; i-) for(j=0; j6 ) n-; printf(“%d“, n); 98787687659876 b 56 以下程序段的输出结果是_。 int x=23; do printf(“%d“, x-); while( !x ); 3212322 死循环b 57 以下程序的功能是:按顺序读入10名学生4门课程的成 绩,计算每位学生的平均分并输出,但运行结果不正 确,调试中发现有一条语句出现的位置不正确。这条 语句是_。 int main( ) int n, k; float score, sum, ave; sum = 0.0; for( n=1; n”,则输出结果是_。 int v1=0, v2=0; char ch; while( (ch=getchar( ) ) != # ) switch( ch ) case a: case h: default: v1+; case n: v2+; printf(“%d,%dn“, v1, v2); 5,05,52,54,5D 60 有以下函数定义“void fun( int n, double x) ”,若以下选项中的变量都已正确定义并赋值, 则对函数fun的正确调用语句是_。 fun(int y,double m);k=fun(10,12.5);fun(x,n);void fun(n,x);C 61 以下对C语言函数的有关描述中,正确的是_ 。 在C中调用函数时,只能 把实参的值传给形参,形 参的值不能传给实参 函数既可以嵌套定义又可以 递归调用 函数必须有返回值。否则 不能使用函数 C函数中有调用关系的所有 函数必须放在同一个源文件 中 a 62 以下叙述不正确的是_。 在不同的函数中可以使用 相同名字的变量 函数中的形式参数是局部变 量 在一个函数内定义的变量 只在本函数范围内有效 在一个函数内的复合语句中 定义的变量在本函数范围内 有效 d 63 下列4行代码定义了求两数之和的函数,其中,行 _是错误的。 void add(float a,float b) float c; c=a+b; return c; void add(float a,float b) float c;c=a+b;return c; a 64 以下正确函数声明语句_。double fun(int x;y); double fun(int x;int y); double fun(int x,int y); double fun(intx,y);c 65 如果一个函数中的复合语句中定义了一个变量,则该 变量_。 只在该复合语句中有效在该函数中有效在本程序范围内均有效为非法变量 66 下列程序的输出结果是_。 int MyFunction(int); int main(void) int entry=12345; printf(“%5d“,MyFunction(entry); ruturn 0; int MyFunction int(par) int result; result= 0; do result= result*10+par%10; par/=10;while(par); return result; 12345543543254321 D 67 以下程序输出结果是_。 int m=13; int fun2(int x,int y) int m=3; return(x*y-m); int main(void) int a=7,b=5; printf(“%dn“,fun2(a,b)/m); return 0; 12310 b 68 下列程序的输出结果是_。 int fun3(int x) static int a=3; a+=x; return(a); int main(void) int k=2,m=1,n; n=fun3(k); n=fun3(m); printf(“%dn“,n); return 0; 3469 C 69 下列程序的运行结果是_。 int x1=30,x2=40; void exc(int x,int y) x1=x;x=y;y=x1; int main(void) int x3=10,x4=20; exc(x3,x4); exc(x2,x1); printf(“%d,%d,%d,%dn“,x3,x4,x1,x2); return 0; 10,20,40,4010,20,30,40,10,20,40,3020,10,30,40C 70 下列程序的输出结果是_。 void fun (int a,intb,intc) a=456; b=567; c=678; int main(void) int x=10,y=20,z=30; fun(x,y,z); printf(“%d,%d,%d/n“,x,y,z); return 0; 30,20,10 10,20,30456,567,678 678,567,45 71 下列程序的输出结果_。 int x=3; void incre() static int x=1; x*=x+1; printf(“%d “,x); int main(void) int i ; for(i=1;iy) f(x,y); else if(yz) f(y,z); else f(x,z); printf(“%d,%d,%dn“,x,y,z); return 0; 1,2,33,1,21,3,22,3,1 76 以下程序的输出结果是_。 int a,b; void fun() a=100;b=200; int main(void) int a=5,b=7; fun(); printf(“%d,%dn“,a,b); return 0; 100,200 5,7200,100 7,5B 77 下列程序执行后输出的结果是_。 int f (int a) int b=0; static int c=3; a=c+,b+; return(a); int main (void) int a=2,i,k; for(i=0;ib)x=2;y=3;z=4; m=(w=A else if(x0)y=1; else if(x0)y=1; elseif(x=0)y=0; else y=-1; y=0; if(x=0) if(x0)y=1; else y=-1; a 104 有如下定义“int a=14,b=15,x;char c=A;“,则执 行“x=(a for(j=i-1;j=0;j-)printf(“%d“,aj); printf(“n“); return 0; 100001001011010100 B 121 以下程序的输出结果是_。 int main(void) int i,x33=1,2,3,4,5,6,7,8,9; for(i=0;iaki) t=aji;aji=aki;aki=t; for(i=0;i456789”, 则输出结果_。 int main(void) char s100; int c,i; scanf(“%c“, scanf(“%d“, scanf(“%s“,s); printf(“%c,%d,%sn“,c,i,s) return 0; 123,456,7891,456,789 1,23,456,7891,23,456D 128 以下程序的输出结果是_ int main(void) int b33=0,1,2,0,1,2,0,1,2,i,j,t=1; for(i=0;i”,则输出结果是 _。 int main(void) int x32=0,i; for(i=0;i=i;j-) if(xj+1xj) k=xj;xj=xj+1;xj+1=k; for(i=0;ixj) k=xj;xj=xj+1;xj+1=k; for(i=0;ixj+1) k=xj;xj=xj+1;xj+1=k; for(i=0;i, 则输出结果为_。 int func(char str) int num=0; while(*(str+num)!=0) num+; return(num); int main(void) char str10,*p=str; gets(p); printf(“%dn“,func(p); return 0; 8765 D 151 以下程序的输出结果是_。 void swap1(int c0,int c1) int t; t=c00;c00=c10;c10=t; void swap2(int*c0,int*c1) int t; t=*c0;*c0=*c1;*c1=t; int main(void) int a2=3,5,b2=3,5; swap1(a,a+1);swap2( printf(“%d%d%d%dn“,a0,a1,b0,b1); return 0; 3 5 5 35 3 3 53 5 3 55 3 5 3D 152 下列程序输出数组中的最大值,由s指针指向该元素, 则划线处的条件应该是_。 int main(void) int a10=6,7,2,9,1,10,5,8,4,3,*p,*s; for(p=a,s=a;p-as*p*sapasp-ap-sB 153 以下程序的输出结果是_。 int main(void) char a=“programming“,b=“language; char*p1=a,*p2=b;int i; for(i=0;i=0)n=10*n+*s- 0;s+; return(n); int main(void) char s10=6,1,*,4,*, 9,*,0,*; printf(“%dn“,fun(s);return 0; 961490615 c 160 以下程序的输出结果是_。 int main(void) char*p1,*p2,str50=“ABCDEFG“; p1=“abcd“;p2=“efgh”; strcpy(str+1,p2+1);strcpy(str+3,p1 +3); printf(“%s“,str); return 0; AfghdEFGAbfhdAfghdAfgdD 161 以下程序的输出结果是_。 int main(void) char*s=“121“; int k=0,a=0,b=0; do k+; if(k%2=0) a=a+sk-0;continue; b=b+sk-0; a=a+sk-0; while(sk+1); printf(“k=%d a=%d b=%dn“,k,a,b); return 0; k=3 a=2 b=3k=3 a=3 b=2k=2 a=3 b=2k=2 a=2 b=3C 162 以下选项中,不能定义s为合法的结构变量的是 _。 struct abc double a; char b10; s; struct double a; char b10; s; struct ABC double a; char b10; ; struct ABC s; struct s double a; char b10; ; D 163 设有如下定义, struct ss char name10; int age;char sex;std3,*p=std;下面各输入 语句中错误的是_。 scanf(“%d“, scanf(“%d%s“, scanf(“%c“, scanf(“%c“,B 164 下列程序的输出结果是_。 typedef structchar name9;char sex;float score2;STU; void f(STU a) STU b=“Zhao“,m,85.0,90.0; int i; strcpy(,); a.sex=b.sex; for(i=0;iscorei; printf(“%6.2fn“,sum); 260.00270.00280.00285.00B 166 下列程序的输出结果是_。 struct STU char name10;int num;float TotalScore; void f(struct STU*p) struct STU s2=“Four“,20044,550,“Five“,20045,537 , *q; q=s; +p;+q;*p=*q; int main(void) struct STU s3=“One“,20091,703,“Tow“,2002,580; f(s); printf(“%s %d %3.0fn“,,s1.num,s1.TotalScore) ; Four 20094 550Five 20045 537Two 20092 580Four 20091 703B 167 以下程序的输出结果是_。 struct STU char name10;int num; void f1(struct STU c) struct STU b=“Three“,2042; c=b; void f2(struct STU*c) struct STU b=“Tow“,2044; *c=b; int main(void) struct STU a=“One“,2041,b=“Tow“,2043; f1(a);f2( printf(“%d%dn“,a.num,b.num); return 0; 2041 20442041 20432042 20442042 2043A 168 若已定义的函数有返回值,则以下关于函数调用的叙 述中错误的是_。 调用可以作为独立的语句 存在 调用可以作为一个函数的实 参 调用可以出现在表达式中 调用可以作为一个函数的形 参 D 169 在C语言中,函数返回值的类型最终取决于_ 。 函数定义时在函数首部所 说明的函数类型 return语句中表达式值的类 型 调用函数时主调函数所传 递的实参类型 函数定义时形参的类型A 170 若程序中有宏定义行“#define N 100”,则下列叙 述中正确的是_。 宏定义行中定义了标识符 N的的值为整数100 在编译程序对C源程序进行 预处理时,用100替换标识 符N 对C源程序进行编译时用 100替换标识符N 在运行时用100替换标识符N B 171 以下叙述中错误的是_。 用户定义的函数中可以没 有return语句 用户定义的函数中可以有多 个return语句,以便可以调 用一次返回多个函数值 用户定义的函数中若没有 return语句,则应当定义 函数为void类型 函数的return语句中可以没 有函数表达式 B 172 以下所列的各函数首部中,正确的是_。 void play(var:Integer,va r b:Integer) void play(int a,b) void play(int a,int b) Sub play(a as integer,b as integer) C 173 下列程序执行后的输出结果是_。 int d=1; void fun(int q) int d=5; d+=q+; printf(“%d “,d); int main(void) int a=3; fun(a); d+=a+; printf(“%dn“,d); return 0; 8 49 69 48 5A 174 要求函数的功能是交换x和y中的值,且通过正确调用 返回交换结果。能正确实现此功能的函数式是 _。 funa(int *x,int *y) int p; p=*x;*x=*y;*y=p; funb(int x,int y) int t; t=x;x=y;y=t; func(int x,int y) *x=*y;*y=*x; fund(int x,int y) *x=*x+*y;*y=*x- *y;*x=*x-*y; a 175 以下程序的输出结果是_ #define f(x) x*x int main(void) int a=6,b=2,c; c=f(a)/f(b); printf(“%dn“,c); return 0; 963618 C 176 以下程序的输出结果是_。 long fun(int n) long s; if(n=1|n=2) s=2; else s=n-fun(n-1); return s; int main(void) printf(“%ldn“,fun(3); return 0; 1234 A 177 以下程序的输出结果是_。 #define M(x,y,z) x*y+z int main(void) int a=1,b=2,c=3; printf(“%dn“,M(a+b,b+c,c+a); return 0; 19171512 D 178 有一个名为 init.txt的文件,内容如下。 #define HDY(A,B) A/B #define PRINT(Y)printf(“y=%dn“,Y) 有下列程序。 int main(void) int a=1,b=2,c=3,d=4,k; k=HDY(a+c,b+d); PRINT(k); return 0; 下列针对该程序叙述正确的是_。 编译出错运行出错运行结果为 y=0运行结果为y=6D 179 以下程序的输出结果是_。 int main(void) int i,x33=9,8,7,6,5,4,3,2,1,*p= for(i=0;i0pi=pj,pj=t; int main(void) char *p5=“abc“,“aabdfg“,“abbd“,“dcdbe“,“cd“; f(p,5); printf(“%dn“,strlen(p1); return 0; 2364 D 187 以下程序的输出结果是_。 struct HAR int x,y;struct HAR *p; h2; int main(void) h0.x=1;h0.y=2; h1.x=3;h1.y=4; h0.p=h1.p=h; printf(“%d%dn“,(h0.p)-x,(h1.p)-y); return 0; 12231432 A 188 下列关于C语言数据文件的叙述中正确的是_ 。 文件由ASCII码字符序列 组成,C语言只能读写文 本文件 文件由二进制数据序列组成 ,C语言只能读写二进制文 件 文件由记录序列组成,可 按数据的存放形式,分为 二进制文件和文本文件 文件由数据流形式组成,可 按数据的存放形式分为二进 制文件和文本文件 D 189 下面的程序执行后,文件test中的内容是_ 。 void fun(char *fname,char *st) FILE *myf;int i; myf=fopen(fname,“w“); for(i=0;i book int main(void) char a180,a280,*s1=a1,*s2=a2; gets(s1); gets(s2); if(!strcmp(s1,s2) printf(“*“); else printf(“#“); printf(“%dn“,strlen(strcat(s1,s2); return 0; *8#9#6*9B 194 以下程序的输出结果是_ 。 int fun(int n) int *p; p=(int*)malloc(sizeof(int); *p=n;return *p; int main(void) int a; a=fun(10); printf(“%dn“,a+fun(10); return 0; 01020 出错C 195 若程序中有下面的说明和定义,则会发生的情况是 _ 。 struct abcint x,char y; struct abc s1,s2; 编译出错 程序将顺利编译、连接、执 行 能顺利通过编译、连接, 但不能执行 能顺利通过编译,但连接出 错 A 196 有以下定义“struct exint x;float y;char z;example;”,则下面叙述中不正确的是_ 。 struct是定义结构类型的 关键字 example是结构类型名x,y,z都是结构成员名struct ex 是数据类型名B 197 设有如下定义“struct skint a;float b;data,*p;”,若有“p=”,则对data中的a 域的正确引用是_ 。 (*p).data.a(*p).ap-data.ap.data.aB 198 根据下面的定义,能打印出字母M的语句是_ 。 struct personchar name9;int age; struct person classes10=“John“,17,“Paul“,19,“Mary“,18,“ Adam“,16; printf(“%cn“,classes 3.name); printf(“%cn“,classes 3.name1); printf(“%cn“,classes 2.name1); printf(“%cn“,classes 2.name0); D 199 下列程序的输出结果是_ 。 struct stuint num; char name10;int age; ; void fun(struct stu *p) printf(“%sn“,(*p).name); int main(void) struct stu students3=9801,“Zhang“,20,9802,“Wang“, 19,9803,“Zhao“,18; fun(students+2); return 0; ZhangZhaoWang18 B 200 下列程序的输出结果是_ 。 struct STUchar name10;int num; void f(char *name,int num) struct STU s2=“SunDan“,20044,“Penghua“,20045; num=s0.num; strcpy(name,); int main(void) struct STU s2=“YangSan“,2004,“LiSiGuo“,20042,*p ; p= f(p-name,p-num); printf(“%s %dn“,p-name,p-num); SunDan 20042SunDan 20044LiSiGuo 20042YangSan 20041A 201 有以下说明和定义语句, struct student int age;char num8; struct student st3=20,“200401“,21,“200402“,19,“2004 03“; struct student *p=stu; 以下选项中引用结构变量成员的表达式错误的是 _ 。 (p+)-nump-num(*p).numstu3.ageD 202 以下叙述中正确的是_ 。 全局变量的作用域一定比 局部变量的作用域范围大 静态(static)类别变量的 生存周期贯穿于整个程序的 运行期间 函数的形参都属于全局变 量 为定义语句中赋初值的auto 变量和static变量的初值都 是随机数 B 203 若函数调用时的实参为变量,下列关于函数形参和实 参的叙述中正确的是_ 。 函数的实参和其对应的形 参共占同一存储单元 形参只是形式上的存在,不 占用具体存储单元 同名的实参和形参占同一 存储单元 函数的形参和实参分别占用 不同的存储单元 D 204 以下叙述中错误的是_ 。 在程序中凡是以“#”开 始的语句行都是预处理命 令行 预处理命令行的最后不能以 分号表示结束 #define MAX 是合法的 宏定义命令行 C 程序对预处理命令行的处 理是在程序执行的过程中进 行的 D 205 下列叙述中正确的是_ 。 预处理命令行必须位于源 程序的开头 在源程序的一行上可以有多 条预处理命令 宏名必须用大写字母表示 宏替换不占用程序的运行时 间 d 206 在调用函数时,如果实参是简单变量,它对应形参之 间的数据传递方式是_ 。 地址传递单向值传递 由实参传给形参,再由形 参传回实参 传递方式由用户指定b 207 下面程序的输出结果是_ 。 int w=3; fun(int k) if(k=0) return w; return(fun(k-1)*k); int main(void) int w=10;printf(“%dn“,fun(5)*w); return 0; 360360010801200 B 208 以下程序的输出结果是_ 。 #define PT 5.5 #define S(x) PT*x*x int main(void) int a=1,b=2; printf(“%4.1fn“,S(a+b); 49.59.522.045.0B 209 以下程序的输出结果是_ 。 void f(int n,int *r) int r1=0; if(n%3=0) r1=n/3; else if(n%5=0) r1=n/5; else f(-n, *r=r1; int main(void) int m=7,r; f(m,printf(“%d“,r); return 0; 2130 A 210 以下程序的输出结果是_。 int d=1; int fu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论