《教学用TTP版C模拟题1(含答案)》由会员分享,可在线阅读,更多相关《教学用TTP版C模拟题1(含答案)(38页珍藏版)》请在金锄头文库上搜索。
1、1在C语言中,main()函数的特征是_。A.可独立运行的函数 B.必不可少的函数C.最先执执行的函数 D.具有前述三特征的函数 2下面标识符中,不合法的用户标识符是_。A._char B.char C.ab D.a_b 3下面4组常量,合法的一组C语言常量是_。A. 0 B. 10 C. 0.01 D. 0.10x10 10L “” 3E+02E+9 E1 “” “”a “a” t tt“ 0 t 012 4设int类型的数据长度为2个字节,则unsigned int类 型数据的取值范围是_。A. -3276832767 B. 0255 C. 065535 D. -256256 5若w、x、
2、y、z均为int型变量,则执行下列语句后,z的值是_。w=5;x=4;y=w+*w+*w+;z=-x*-x*-x+y-;A.131 B.126 C.125 D.130 6若有以下类型说明语句,则表达式c*x+z+y的结果类型 是_。char c;int x;float y;double z;A. char B. int C. double D. float 7若y为int型变量,则执行以下语句后,y的值是_。y=8;y+=y-=y*y;A.64 B.-56 C.-112 D.-488若m、x、y、z均为int型变量,则执行下列语句后的m值是_。m=1;x=2;y=3;z=4;m=(mage B
3、student.ageC*p.age Dstud1.student.age 18语句float(*p)();说明了_。Ap是指向一维数组的指针变量Bp是一函数名,该函数的返回值是指向float类型数据的指针Cp是指向函数的指针,该函数返回值的类型是floatDp是指向float类类型数据的指针变针变 量 19说明语句如下,则正确的叙述是_。union data int x;char y;float z;a;A data和a均是联合类型变量B a所占内存长度等于其成员x、y、z各在内存所占长度之和C 任何情况下,均不能对a作整体赋值D. a的地址和它的各成员员地址都是同一地址 20C语言文件操作
4、函数fread(buffer,size,n,fp)的功能是 _。A从文件fp中读n个字节存入bufferB从文件fp中读n个大小为size字节的数据项存入buffer中C从文件fp中读入n个字节放入大小为size字节的缓冲区buffer中D从文件fp中读读入n个字符数据放入buffer中 21下列程序运行后的输出结果是_。main() int i=1;while(i main() static int a=3,8,10,6,9;static int *ptr=int *p,i;for(i=0;imain() p=a;printf(“%dn”,+p-n);printf(“%dn”,(+p)-n)
5、;printf(“%cn”,+(*p-c); A. 11 B. 11 C. 10 D. 1020 20 20 20c b c b 29. 下列程序运行后的输出结果是_ 。 #include int x=1; main() int i=5;fun(i);printf(“%d,%dn”,i,x); fun(m) int m; m+=x;x+=m; char x=A;printf(“%dn”,x);printf(“%d,%dn”,m,x); A 65 B. A C. A D. 656,1 6,1 6,7 6,76,1 6,1 6,7 5,7 30. 下列程序运行后的输出结果是_ 。 #include
6、 main() int i,j,k=0;for(j=10;j=j-1) printf(“%dt”,j);k+; A. 11 13 17 19 23 B. 11 13 17 19 23 29 31 3729 31 37C. 11 13 17 19 23 D. 11 13 17 19 21 2329 31 34 37 29 31 37 39 31. 下列程序运行后,若从键盘输入ABC!四个字符后,程序输出是 _ 。 #include main() void receiv();receiv(); void receiv() char c;c=getchar();putchar(c);if(c!=!)
7、 receiv();putchar(c); A. ABC! B. ABC!ABC! C. ABC!CBA D. ABCABC#include main() void receiv();receiv();void receiv() char c;c=getchar();putchar(c);if(c!=!) receiv();putchar(c); void receiv() char c;c=getchar();putchar(c);if(c!=!) receiv();putchar(c); void receiv() char c;c=getchar();putchar(c);if(c!=!
8、) receiv();putchar(c); void receiv() char c;c=getchar();putchar(c);if(c!=!) receiv();putchar(c); ABC!32. 将下述程序运行三次,分 别别从键盘输键盘输 入字符串为为: -B986C,A7#65和$-743!,则则程 序输输出为为_ 。 #include void main() char s20;int x;x=aint(s);printf(“%dn”,x); A. B986C B. -986C C. -986 D. -986A7#65 65 765 765$7431 743 -743 743
9、aint(char s) int i,sign,num;gets(s);i=0; sign=1;if(si=-) sign=-1; +i; num=0;while(si!=0) if(si=0 void bubble_sort(int s,int n); void scr_output(int s,int n); main() int aN,n;scanf(“%d“,if(nN) printf(“nN,invalid n.n“); exit(0); f_input(a,n);scr_output(a,n);bubble_sort(a,n);scr_output(a,n); void f_inp
10、ut(int s,int n) FILE *fp; int i;if(fp=fopen(“test.dat“,“r“)=NULL) printf(“Cannot open file.n“); exit(0); for(i=0;i #define MAXLINE 100 char pattern=“the“; int getline(char s,int lim) int c,i=0;while(-lim0 if(c=n) si+=c;si=0; ; This is the mannmain() char lineMAXLINE; int found=0,p;while(getline(line
11、,MAXLINE)0)if(strindex(line,pattern)=0) printf( );found+;return found; “%sn“,linesi+=creturn iThis is the mann0sint strindex(char s,char t) int i,j,k;for(i=0; ; i+) for(j=i,k=0; tk!=0 j+,k+)if( ) return i;return -1; main() char lineMAXLINE; int found=0,p;while(getline(line,MAXLINE)0)if(strindex(line
12、,pattern)=0) printf(“%sn“,line);found+;return found; 找子串方法:从首字符开始扫描,看是否与原(子)串首字符 相同? 不同:顺序后找,最终也找不到,返回-1。(不输出该串) 相同:记住该位置(即 i 的值),再看其余字符是否也相同?从 而判定是否是真的子串。 不是:记住的位置无效,继续往后找与原(子)串首 字符相同的位置。是:返回 i(=0)的数。(输出该串)i=strlen(t)-1int strindex(char s,char t) int i,j,k;for(i=0;i=strlen(t)-1) return i;return -1;
13、 jThis is the mann0the0stik找子串方法:从首字符开始扫描, 看是否与原(子)串首字符相同? 不同:顺序后找,最终也找不到,返回-1。(不输出该串) 相同:记住该位置(即 i 的值) ,再看其余字符是否也相同?从而判定是否是真的子串。 不是:记住的位置无效, 继续往后找与原(子)串首字符相同的位置。是:返回 i(=0)的数。(输出该串)模拟试题1参考答案: 1选择题(1)D(2)B(3)C(4)C(5)B(6)C(7)C(8)A(9)D(10)B(11)D(12)B(13)A(14)B(15)D(16)B(17)A(18)C(19)D(20)B(21)D (22)B(23)C(24)B(25)C(26)C(27)A(28)A(29)D(30)A(31)C (32)D1.二填空题f_input(a,n)si+=c “r“return ifp,“%d“,s+i(或 fp,“%d“,&si)i=i)k=strlen(t)-1sjsj-1“%sn“,line