版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、知识是人类进步的阶梯C语言程序设计(卷)考核班级学生数 印数考核方式 闭卷考核时间120分钟(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷第一部分:基础知识(20项,共40分)1 . 一个C语言程序是由()组成的。A.主程序B.子程序 C.函数D.过程2 .转换说明符x的输出形式是()。A.十进制B.八进制C.十六进制D,二进制3 .若a、b均为int型变量,且 a=100,则关于循环语句 for(b=100;a!=b;+a,+b)printf (" ");的正确说法是()。A.循环体只执行一次B.死循环C.循环体一次也不执行D.输出4 .若x、v、z均为int
2、型变量,则执行下列语句后的z值为(x=1; y=2; z=3; z=(x>y)?z :y ; z = (z<y)?z:x;A. 1B. 4 C. 2D. 35 .下面标识符中,合法的用户标识符为()。A. P#Ad B. 12a C. charD. _intD. 36 .'A' + 3的结果是()。A . ' A'B. ' D'的 ASC n 码 C. 65)°D. 21个字符7 .语句char str20;说明str是一个字符串,最多能表示A . 20个字符 B. 19个字符 C. 18个字符8 .将int型变量n转换成f
3、loat型变量的方法是 ()。A. float n B. (float)n C. float(n) D, 21 个字符9.以下不正确的描述是()。A .使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成B. while循环是先判断表达式后执行循环体语句C. do-while和for循环均是先执行循环体语句,后判断表达式D. for、while、do-while循环中的循环体均可以由空语句构成10.在循环中使用 break语句的功能是()。A.使程序的执行跳出 break所在的那一重循环B.使程序执行结束C.跳出包含此break语句的所有循环D.终止本次循环,继续下
4、次循环11 .下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是()。A . *pzB . aC. pxD . &a12 .若指针px为空指针,则 ()。A . px指向不定B. px的值为零C. px的目标为零D. px的地址为零13 .对于语句int *px10,以下说法正确的是()。A. px是一个指针,指向一个数组,数组的元素是整数型。B. px是一个数组,其数组的每一个元素是指向整数的指针。C. A和B均错,但它是 C语言的正确语句。D. C语言不允许这样的语句。14 .具有相同基类型的指针变量P和数组变量Y,下列写法中不合法的是()。A.
5、 P = YB. *P = YiC. P + &YiD. P = &Y15 .已知 static int a=5,4,3,2,1,*p尸a+3,a+2,a+1,a,*q=p,则表达式 *(p0+1)+*(q+2) 的值是()。A. 5B. 4C. 6D. 716 .已知for(;n>=1;n-),下列语句实现将 S2所指字符数组中前 n个字符复制到 S1所指字符 数组中,其中代码不正确的是()。A. *S1+=*S2+B, S1n-1=S2n-1C. * (S1+n-1) =*(S2+n-1)D. * (+S1) =* (+S2)17 .调用函数的实参与被调用函数的形参应
6、该有如下关系()。A.只要求实参和形参个数相等B.只要求形参和实参顺序相同C.只要求实参和形参数据类型相同D.上述三点均需具备18 .联合体成员的数据类型()。A.相同B .可以不同也可以相同C.长度一样D.是结构体变量19 .由系统分配和控制的标准输出文件为()。A.键盘 B.磁盘 C.打印机D.显示器20 . C语言标准库函数 fread(fd,buffer,n)的功能是()。A .从文件fd中读取长度不超过 n个字节的数据送入 buffer指向的内存区域B.从文件fd中读取长度不超过 n-1个字节的数据送入buffer指向的内存区域C.从文件fd中读取长度不超过 n个字符送入buffer
7、指向的内存区域D.从文件fd中读取长度不超过 n-1个字符送入buffer指向的内存区域第二部分:简单程序(12项,共30分)21.下列程序main() int x,y,z;x=y=2;z=3;y=z+-1;printf( " %d t ”,x,y);y=+x-1;printf( "%d n” ,x,y);y=z-1;printf(" %d t” ,z,y);y=-z-1;printf("%d n" ,z,y);运行后输出的数据为?。A. 3 1 4 2 B. 3 1 3 3 C. 2 2 3 2 D. 2 1 3 22 4 1 32 4 2
8、23 3 2 11 3 1 222.下列程序main() int i,j;char *a,c; a= computer ; printf( " %S' ,a);for(i=0,j=7;i<j;i+,j-) c=ai; *(a+i)=*(a+j);aj=c; printf(" n" ,a);c=aj-1,i=2+j;printf(" a%d=%c ,i,c);运行后输出的数据为A. computer->computer a3=uC. computer->retupmoc a4=p23.下列程序 int sum(int n) int
9、 p=1,s=0,i; for(i=1;i<=n;i+) return s; main() printf(s+=(p*=i);B. computer->retupmoc a5=mD. computer->retupmoc a2=t“sum(5)n% d,sum(5);运行后输出的数据为A.sum(5)=151B.sum(5)=152C.sum(5)=153Dsum(5)=15524 .下列程序main()static int a尸5,6,7,3,2,9;int s1,s2,i,*ptr;s1=s2=0;ptr=&a0;for(i=0;i<5;i+2=2) s1+
10、=*(ptr+i);s2+=*(ptr+i+1);printf(" s1=%d,s2=%Sd ,s1,s2);运行后输出的数据为 A.s1=18,s2=14 B.s1=14,s2=32C.s1=14,s2=18D.s1=15,s2=1925 .下列程序int c=1;main()static int a=5;int b=6;printf(" a=%d b=%d c=%d ,a,b,c);func();printf(" a=%d,b=%d,c=%d ,a,b,c);func();)func() static int a=4;int b=10;a+=2;c+=10;b
11、+=c;printf(" a=%d,b=%d,c=i% d ,a,b,c);)运行后输出的数据为A. a=5 b=6 c=1a=6 b=21 c=11a=5 b=6 c=11a=8 b=31 c=21C. a=5 b=6 c=1a=6 b=21 c=11a=6 b=21 c=11a=8 b=31 c=2126 .已知struct studentchar * name;int student_n;char grade;);struct student temp,*p=&temp;= " chou";则下面不正确的是。表达式A.p 一 nam
12、eB.(*p) 一 name+2C.*p - name+2D.*(p - name+2)27 .下列程序#define MAX 10B. a=5 b=6 c=1 a=7 b=17 c=11 a=5 b=6 c=11 a=9 b=17 c=21D. a=5 b=6 c=1 a=7 b=17 c=11 a=7 b=17 c=11 a=9 b=38 c=21值chou heomain() int i,sum,a尸1,2,3,4,5,6,7,8,9,10;sum=1;for(i=0;i<MAX;i+) sum-=ai;printf(" SUM=%d ,sum);程序运行结果是:A.SU
13、M=55 B.SUM=-54C.SUM=-55 D.SUM=5428 .下列程序void inv(int*x,int n)int *p,t,*i,*j,m=(n-1)/2;i=x;j=x+n-1;p=x+m;for(;i<p;i+,j-) t=*i;*i=*j;*j=t;return;main() static int i,a10=3,7,9,11,0,6,7,5,4,2;inv(a,10);for(i=0;i<10;i+)printf( "%d," ,ai);程序运行结果:AQ234,5,6,7,7,9,11B.11,9,7,7,6,5,4,3,2,0C.37
14、9,11,0,6,7,5,4,2D.2,4,5,7,6,0,11,9,7,329 .下列程序main() int a10,b10,*pa,*pb,i;pa=a;pb=b;for(i=0;i<3;i+,pa+,pb+)*pa=i;*pb=2*i;printf( "%dn” ,*pa,*pb);printf( n”);pa=&a0;pb=&b0;for(i=0;i<3;i+)*pa=*pa+i;*pb=*pb*i;printf( "%dn" ,*pa+,*pb+);运行后输出的数据为 。A. 00B.00C. 00D. 0012121222
15、2424242400000000222212124824244830 .下列程序 copy_string(from,to) char *from,*to; while(*from) *to+=*from+;*to= '0'; main() static char s1 =" c_program.”;static char s280;copy_string(s1,s2);printf( "%sn" ,s2);copy_string( “123” ,s2);printf("n% s,s2);运行后输出的数据为()。A. c_program 1
16、23B.123 C. c_program123 D. c_program12331 .下列程序:#include <stdio.h> main() char a40,b40;int i,j;printf( "Enter the string:");scanf(" s,,a);i=j=0;while(ai!= 0'') if(!(ai>=0' &&ai<= ' 9') bj=ai; j+; +i;bj= 0'printf( " %s' ,b); 运行后输出的结果
17、是()。A.把键盘输入的字符串显示在屏幕上B.把键盘输入的字符串中的数字字符删掉,然后显示该字符串C.把键盘输入的字符串中的字符0和9删掉,然后显示该字符串D.只保留由键盘输入的字符串中的字母数字,然后显示该字符串32 .下列程序#include<stdio.h>main() char a80;int i,j;printf( "Enter the string:");scanf(" s,,a);i=0;while(ai!= 0'') if(ai>=' A &&ai<= ' Z')ai=
18、ai- 'A' +' a';printf( " %s' ,a);运行后输出的结果是()。A.把键盘输入的字符串中的大写字母变换成小写字母,然后显示变换后的字符串。B.把键盘输入的字符串中的数字字符删除掉,然后显示该字符串。C.把键盘输入的字符串中的小写字母变换成大写字母,然后显示变换后的字符串。D.把键盘输入的字符串原封不动地显示在屏幕上。第二卷说明:(1)第二卷含二大题,均属填空题,每题各有5个空栏,在阅读和理解原题程序的基础上,在空栏处填入适当的字符、语句,以构成一个正确的C语言程序。(2)每空栏填对得3分,两大题共10个空栏,全填对得 3
19、0分。试题一一个整数称为完全平方数,是指它的值是另一个整数的平方。如 81是个完全平方数,因为 它是9的平方。下列程序是在三位的正整数中寻找符合下列条件的整数:它既是完全平方数,且三位数字中又有两位数字相同:例如144 (12*12)、676 (26*26)等,从程序中找出并输出所有满足上述条件的三位数。 程序如下:main() int n,k,a,b,c; for(k=1; ;k+)if(n<100)if(n<999)a=n/100;b= c=n%10, if(flag(a,b,c)printf(" n=%d=%d*%d ,k,k);flag return(!(x-y)
20、*(x-z)*(y-z);试题二以下程序所列函数replace(char *s1,char *s2,char str1,char *str2)的功能是将已知字符串si中的所有与字符串strl相同的子串替换成字符串str2,并将替换后所生成的新的字符串存于字符数组s2中。说明:生成字符串s2的过程是一个循环,顺序访问字符串si的每个字符;当从某个字符开始不能构成与strl相同的子字符时,就把该字符拷贝到数组s2,当从某个字符开始能构成一个与strl相同的子字符串时,就将字符串 str2的各字符拷贝到字符数组s2,并继续访问字符串si中那个子串之后的字符,直至字符串si被访问完毕,字符复制即告结束
21、。下列程序运行的结果是输出:ABCXYZdefg abABCXYZd abab程序如下:replace(char *si,char *s2,char *stri,char *str2) char *t0,*ti,*t2;while( ) for(t0=si,ti=stri;*ti!= ' 0' && ;t0+,ti+);if(*ti!= 0')*s2+=;else for(ti=str2;*ti!= 0')*s2+=;;*s2= '0';main() char si=" abcdeababcd abab.”;char s
22、280;replace(si,s2, " abc" , " ABCXYZ );printf("r% s,s2);参考答案第一卷一.基础知识(20项,共40分)1 .C 2,C 3.C 4.A 5.D 6.B 7.B 8.B 9.C 10.A 11.C 12.B 13.B 14.D 15.A 16.D 17.D 18.B 19.D 20.A二.简单程序21.C 22.B 23.C 24.C 25.A 26.B 27.B 28.D 29.A 30.D 31.B 32.A第二卷 试题一: n=k*k continuebreak n%100/10 或(n-100
23、*a)/10 或 n/i0-(n/i00)*i0 int x,int y,int z 试题二:*si 或 si!=' 0' *t0=*ti 或*ti=*t0 *si+*ti+si=t0 或 si=si+strlen(stri)C语言程序设计(卷)考核班级学生数 印数考核方式闭卷考核时间120分钟(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷说明:(1)第一卷全部为选择题,每题可供选择的答案中,只有一个正确答案。(2)答本卷的题目时,要在标准答题纸上编号对应的栏口中,用铅笔将正确答案涂黑。在试题上直接 勾划不得分。(3)本卷共分70分,其中第126题每题2分,第27
24、32题每题3分。第一部分:基础知识(20题,共40分)1、一个C语言的源程序中,()。(A)必须有一个主函数(B)可以有多个主函数(C)必须有主函数和其他函数(D)可以没有主函数2、下列数据中,为字符串常量的是()。(A) 'A'(B) "house"(C)How do you do.(D) ' $abc'3、若有定义:int a=8, b=5, c;,执行语句c=a/b十0.4;后,c的值为()。(A)1.4(B)1(C)2.0(D)24、设有int x=11 ;则表达式(x+*l/3)的值为( )o(A)3(B)4(C)11(D)125、
25、执行 x=5>1+2&&2|2*4<4-!0 后,x 的值为()。(A)-l(B)O(C)1(D)56、以下变量x、v、z均为double类型且已正确赋值,不能正确表示数学式子:(x)/(y Xz)的c语言表达式是()。(A)x/y*z (B)x*(1/(y*z)(C) x/y*1/z (D)x/y/z7、设有以下说明语句struct exint x ; float y; char z; example;则下面的叙述不正确的是()o(A)struct是结构体类型的关键字(B)example是结构体类型名(C)x, y, z都是结构体成员名(D)struct ex是结
26、构体类型8、假定w、x、v、z、m均为int型变量;有如下程序段:w=1;x=2; y=3;z=4;m=(w<x)?w : x;m=(m<y)?m : y; m=(m<z)?m : z;则该程序段执行后,m的值是()。(A)4(B)3(C)2(D) 19、在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是()。(A)地址传递(B)单向值传递(C)由实参传给形参,再由形参传回实参(D)传递方式由用户指定10、以下定义语句中,错误的是()。(A)int a=1 , 2 ;(B) char *a3;(C)char s10="text" ;(D)
27、int n=5,an;11、下列程厅执行后的输出结果是()main() char arr24 ; strcpy(arr,"you") ; strcpy(arr1,"me");arr03='&'printf("%sn",arr); (A)you&me (B)you (C) me (D)err12、标有/*/的语句的执行次数是( )oint y, i; for(i=O ; i<20 ; i+) if(i%2=0)continue; y+=i;/*/(A)20(B) 19(C) 10(D) 913、若用
28、数组名作为函数调用的实参,传递给形参的是()。(A)数组的首地址(B)数组第一个元素的值(C)数组中全部元素的值(D)数组元素的个数14、下列语句执行后的结果是()。y=5; p=&y ; x=*p+ ;(A) x=5, y=5(B) x=5, y=6(C) x=6, y=5(D) x=6 , y=615、执行下面的语句后,表达式 *(p0+1)+*(q+2)的值为 ()。int a=5,4,3,2,1 , *p=a+3,a+2,a+1,a , *q=p ;(A)8(B) 7(C) 6(D) 516、经过下面的语句后int i , a10, *p ;定义后,下列语句中合法的是()。(A
29、)p=100:(B) p=a5;(C)p=a+2;(D)p=&(i+2);17、若有以下说明和语句,则对 pup中sex域的正确引用方式是()。struct pupilchar name20; int sex;pup, *p ; p=&pup ;(A)p.pup.sex(B)p->pup.sex (C)(*p).pup.sex (D)(*p).sex18、若已定义了如下的共用体类型变量x,则x所占用的内存字节数为()。union data int i;char ch; double f;x ;(A)7(B) 11(C)8(D) 1019、若有下面的说明和定义: struc
30、t test int m1 ; char m2;float m3;union uu char u15;int u22;ua; myaa;贝 U sizeof(struct test)的值是 ()。(A)12(B) 16(C) 14(D)920、若要打开:A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用 是()。(A)fopen("A : userabc.txt" , "r")(B) fopen("A : userabc.txt", "r+")(C)fopen("A
31、 : userabc.txt","rb") (D) fopen("A : userlabc.txt" , "w")第二部分:简单程序(12题,共30分)21、以下程序的运行情况是()main()int i=1,sum=0 ;while(i<10)sum=sum+1;i+;printf("i=%d,sum=%d" , i,sum);(A)i=10, sum=9 (B) i=9,sum=922、若输入B,以下程序的运行结果为( main() char grade ; scanf("%c&quo
32、t;,&grade); switch(grade)case 'A':printf(">=85");(C) i=2 , sum=l (D)运行出现错误) 。case'B':case'C':printf(">=60");case'D':printf("<60"); default: printf("error") ; (A)>=85(B)>=60(C)>=60<60error(D) error23 .有如下
33、程序 main() int x=23;do printf("%d" , x-);while(!x);该程序的执行结果是()。(A)321(B)23(C)不输出任何内容(D)陷入死循环24 .有如下程序int func(int a,int b) return (a+b); main()int x=2, y=5,z=8 , r;r=func(func(x , y), z) ; printf("%dn",r);该程序的输出结果是 ()。(A)12(B) 13(C)14(D)1525 .以下程序的输出结果是()。main() int a , b;for(a=1
34、, b=1 ; a<=100; a+) if(b>=10) break;if(b%3=1) b+=3 ; continue; printf("%dn",a);(A)101(B) 6(C)5(D)426 .以下程序的输出结果是()。int a, b;void fun() a=100; b=200;main() int a=5 , b=7 ;fun();printf("%d%dn" , a, b);(A)100200(B)57(C)200100(D)7527 .下面的程序执行后,文件test, t中的内容是 () o#include <st
35、dio.h>void fun(char *fname,char *st) FILE *myf; int i;myf=fopen(fname,"w");for(i=0 ; i<strlen(st);i+)fputc(sti , myf);fclose(myf);main() fun("test.t","new world");fun("test.t","hello,");(A) hello, (B)new,worldhello (C) new,world (D)hello,rld28.
36、以下程序的运行结果是()。#include <stdio.h>main()static char s30="abcdefg";static char t="abcd";int i,j ;i=0 ;while(si!='0')i+;j=0;whi1e(tj!='0') si+j=tjj+;si+j尸0'; printf("%sn" , s);(A) abcdabcdefg (B)abcdefg (C)abcd (D)abcdefgabcd 29.有如下程序 main() char ch
37、25="6937" , "8254",*p2; inti, j, s=0 ;for(i=0 ; i<2;i+)pi=chi;for(i=0 ; i<2 ; i+)for(j=0 ; pij>'0' ; j+=2) s=10*s+pij-'0' ; printf("%dn" , s);该程序的输出结果是()。(A)69825(B)63825(C)6385(D)69382530 .若已建立如下图所示的单向链表结构在该链表中,指针p,s分别指向图中所示结点,则不能将s所指的结点插入到链表末尾
38、仍构成单向链表的语句组是()。(A) p=p->next;s->next=p;p->next=s;(B) p=p->next;s->next=p->next;p->next=s;(C) s->next=NULL;p=p->next;p->next=s(D) p=(*p).next;(*s).next=(*p).next; (*p).next =s;31 .请选择正确的运行结果填入()中。include <stdio.h>int x,y ; num()int a=15,b=10 ;int x , y ;y=a-b ; y=a
39、+b;return ; main() int a=7,b=5;x=a+b ;y=a-b;num() ; printf("%d , %dn", x, y);(A)12,2(B) 5,25(C)2,12(D)不确定32 .以下程序的输出结果是()。#define M(x,y,z) x*y+zmain() int a=1 , b=2, c=3;printf("%dn" , M(a+b,b+c,c+a) ;(A)19(B)17(C)15(D)12第二卷说明:(1)第二卷含两大题,均属填空题,每题各有 5个空栏,在阅读和理解原题程序的基础上,在空栏处 填入适当的字
40、符、语句,以构成一个正确的C语言程序。(2)每空栏填对得3分,两大题共10个空栏,全对得30分。试题一:有一函数,实参传来一个字符串,统计此字符串中字母、数字、空各和其他字符的个数,在主函数中输入字符串以及输出上述的结果。intletter,digit,space,others;/*是全局变量 */main()int count(char(1);char text80;printf("nlnput string : n");(2);printf("string :");puts(text);letter=O ;digit=O ;space=O;other
41、s=O ;(3);printf("letter : %d,digit : %d,space: %d,other: %dn",letter,digit , space,others); int count(char str)int i ;for(i=O ; stri!='0' ; i+)if(4)>='a'&&st巾<='z')|(stri>='A'&&stri<='Z')letter+ ; else if(stri>='0
42、39;&&stri<='9')digit+ ;else if(stri='')space+;else(5);试题二:把下列程序补充完整,实现两个字符串的比较,即自己写个 strcmp函数,函数原型 为:int strcmp(char *p1,char *p2)设pl指向字符串Si, p2指向字符串s2。要求:当s1=s2时,返回值为 0。当sl<>s2时,返回它们两者的 第一个不同的字符的 ASCII码差值(如“BOY”与“BAD”,第二个字母不同,"O”与"A”之差为79-65=14); 如果s1>s
43、2,则输出正值;如果sl<s2,则输出负值。main() int m ;char (6), str220 , *p1,*p2 ;printf("Input two string : n");scanf("%s",strl);scanf("%s",);p1=&strl0;p2=(8);m=strcmp(p1,p2);printf("result:%d,n”,m);strcmp(char (9),char *p2)/*两个字符串比较的函数*/ int i ;(10);while(*(pl+i)=*(p2+i)if(
44、*(p1+i+)='0') return(0);return(*(pl+i)-*(p2+i);/*不等时返回结果为第一个不等字符ASCII码的差值*/参考答案第一卷第一部分:基础知识I .A 2.B 3.B 4.A 5.C 6.A 7.B 8.D 9.B 10.DII .A 12.C 13.A 14.A 15.D 16.C 17.D 18.C 19.A 20.B第二部分:简单程序21.D 22.C 23.B 24.D 25.D 26.B 27.A 28.D 29.C 30.A 31.A 32.D第二卷试题一:1、str口2、gets(text)或 scanf( "%s
45、” ,text)3、count(text)4、stri5、others+试题二:6、stri20 7、str28、&str29、*pi 10、i=0C语言程序设计(卷)考核班级学生数 印数考核方式闭卷考核时间120分钟(本试卷包括第一卷和第二卷,答卷时间总共 120分钟)第一卷 本卷共70分,其中第126题每题2分,第2732题每题3分。第一部分:基础知识1、 一个C语言程序是从 开始执行的。A、程序中的第一个语句 B、包含文件(头文件)的第一个函数C、名为main的函数 D、程序中的第一个函数2、 语句while(!E) 中的条件! E等价于A、E=0 B、E!=1 C、E!=0 D
46、、E3、若有以下类型说明语句:char w;int x;float y;double z;则表达式w*x+z-y的结果为 类型。A、float B、double C、int D、char4、一个函数返回值的类型是由 决定的A、return语句中的表达式类型;B、定义函数时所指定的函数类型C、调用该函数的函数的类型D、调用函数时临时类型5、设x、y、z和k都是int型变量,则执行下列表达式后,变量 x的值为, x=(y=4,z=16,k=32);A、4 B、16 C、32 D、526、 有以下程序:main() int i=10,j=1;printf( " %d,%d -,-,+j);
47、执行后输出的结果是A、9, 2 B、10, 2 C、9, 1 D、10, 17、 以下指针s的指字符串的长度为 char *s= " ' Name n”;A、19 B、15 C、18 D、-128、 设有语句int a=3;则执行了语句 a+=a-=a*a ;后,变量a的值是A、3 B、0 C、9 D、-129、 对于下面的for循环语句,可以断定它 。for(x=0,y=0;(y!=123)&&(x<4);x+) printf( - “);A、是无限循环(死循环)B、循环次数不定C、共执行4次循环 D、共执行3次循环10、设有以下语句,则 不是对a数组
48、元素的正确引用,其中 0 i 10.int a10=0 , 1, 2, 3, 4, 5, 6, 7, 8, 9;int *p=a;A、ap-5 B、*(&ai) C、ai D、*(a+i)11、为了判断两个字符串 s1和s2是否相等,应当使用 A、if(s1=s2) B、if(s1=s2)C、if(strcmp(s1,s2) D、if(strcmp(s1,s2)=0)12、对于C语言程序中的函数,下列叙述中正确的是 A、函数的定义不能嵌套,但函数调用可以嵌套B、函数的定义可嵌套,但函数的调用不能嵌套C、函数的定义和调用均不能嵌套D、函数的定义和调用均可嵌套13、 有以下程序main()
49、 int i;for(i=0;i<3;i+)switch(i) case 1: printf("%d' ,i);case 2:printf(" %d' ,i);default:printf(" %d' ,i);执行后输出的结果是A、 011122 B、 012 C、 012020 D、 12014、假定有以下变量定义:int k=7, x=12;则能使值为3的表达式是 A、x%=(k%=5) B、x%=(k-k%5)C、x%=(k-k%5) D、(x%=k)-( k%=5)15、以下程序的输出结果是main() int x=4,y=8
50、;x+=y;y+=x;printf( "% d n” ,x,y);A、1220 B、4 8 C、1212 D、8416、有以下程序执行后输出的结果是 main() int x8=8 , 7, 6, 5, 0, 0 , *s;s=x+3;printf("%S d, s2);A、随机值 B、0 C、5 D、617、以下函数的功能是fun(char *s1,char *s2) int i=0;while(s1i=s2i &&s2i!=0')i+; return(s1i= 0' '&&s2i= 0');A、将s2所指字
51、符串赋给siB、比较si和s2所指字符串的大小,若 si比s2的大,函数值为1 ,否则函数值为0C、比较si和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0D、比较si和s2所指字符串的长度,若 si比s2的长,函数值为1,否则函数值为018、 以下叙述中正确的是A、全局变量的作用域一定比局部变量的作用域范围大B、静态(static)类型变量的生存期贯穿于整个程序的运行期间C、函数的形参都属于全局变量D、未在定义语句中赋初值的auto变量和static变量的初值都是随机值19、有以下程序,执行后输出的结果是 main() int i=1,j=1,k=2;if (j+|k+)&
52、;&i+)printf( "%d, %d,%d ,i,j,k);A、1,1,2 B、2,2,1 C、2,2,2 D、2,2,320、 以下函数abc的功能是int abc(char *ps) char *p;p=ps;while(*p+);return (p-ps);A、比较两个字符串的大小 B、求字符串的长度C、将串ps复制到串p中D、以上三种说法都不对第二部分:简单程序21、以下程序的输出结果是:main() int i=10,j=10;printf( " %d 般d ,+i+j+,j-);A、21, 10 B、20, 10 C、21, 9 D、20, 922、
53、以下程序的输出结果是:main() int m=5;if (m+>5)printf("r% d ,m);elseprintf(" %d ,m);A、7 B、6 C、5 D、423、当a=1, b=3, c=5, d=4时,执行下面一段程序后,x的值为if (a<b)if(c<d)x=1;else if(a<c)if(b<d)x=2;elsex=3;elsex=6;else x=7;A、1 B、2 C、3 D、624、以下程序企图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。出错的原因
54、是 #include <stdio.h>main() FILE *fout;char ch;fout=fope n( ' abc.txt ' , ' w');ch=fgetc(stdin);while(ch!= ' #')fputc(ch,fout);ch=fgetc(stdin);fclose(fout);A、函数fopen调用形式有误B、输入文件没有关闭C、函数fgetc调用形式有误 D、文件指针stdin没有定义25、有以下程序,执行后输出结果是 main()union unsigned int n;unsigned char
55、c;ul;ul.c= ' A';printf( "%c ,ul.n);A、产生语法错B、随机值 C、A D、6526、有以下程序,执行后输出结果是 main() intm 3=1,4,7,2,5,836,9;int i,k=2;for(i=0; i<3; i+)printf(" %d , mki);A、4 5 6 B、2 5 8 C、3 6 9 D、7 8 927、以下程序运行后,输出结果是 int func(int a, int b) static int m=0,i=2;i+=m+1;m=i+a+b; return(m); main() int k
56、=4,m=1,n;n=func(k, m);printf(" %d, , n);n=func(k, m);printf( " %d ” , n);A、8, 15 B、8,16 C、8, 17 D、8, 828、在执行以程序时,如果从键盘上输入:ABCdef,则输出结果为:#include <stdio.h> main() char ch;while(ch=getchar()!= n')' if(ch>= ' A &&ch<=' Z') ch=ch+32;else if(ch>= ' a' && ch<= ' z') ch=ch-32;printf(" %C' ,ch); printf( n”);A、ABCdef B、abcDEF C、abc D、DEF29、有以下程序,执行后输出结果是 in
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 期中质量检测(1-4单元)(试题)-2024-2025学年四年级上册数学苏教版
- DB11T 1483-2017 小型消防站建设规范
- 国家消毒产品随机监督抽查计划表
- 全区妇幼健康职业技能竞赛各层级参赛选手统计表
- 人教版物理八年级下册 专项训练卷 (三)功和机械能、简单机械(含答案)
- 广西壮族自治区贺州市昭平县2024-2025学年九年级上学期11月期中化学试题(含答案)
- 半导体芯片市场需求与消费特点分析
- 保温杯产业规划专项研究报告
- 公路自行车产业运行及前景预测报告
- 人教版英语八年级下册 Units 1-5复习练习题
- 四川省成都市九县区2024-2025学年高一上学期期中考试数学试题(含答案)
- 2024秋国开《四史通讲》期末大作业试题B答案(第1套)
- 2024年8月CCAA国家注册审核员《管理体系认证基础》考试题目含解析
- 户外广告安装施工方案
- 钠离子电池低成本硬碳负极关键技术开发-2024-10-技术资料
- 2025届广东省珠海市紫荆中学高二数学第一学期期末教学质量检测试题含解析
- 期中测试卷(1-3单元)(试题)2024-2025学年六年级上册数学苏教版
- 摄影器材采购合同模板
- 增补 金额 合同模板
- 2024年专业技术人员继续教育公需科目-职业幸福感的提升考试近5年真题集锦(频考类试题)带答案
- 部编语文二学年上册第四单元集体集备及教材解读
评论
0/150
提交评论