首页 旅游资讯 线路攻略 景点大全 国内游 境外游 美食特产
您的当前位置:首页正文

样卷

2020-12-11 来源:锐游网
一、单选题(每题2分,共30分)

1、已知i、j、k为int型变量,若从键盘输入:i=1,j=2,k=3↙,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是______。

A、scanf(\"%d,%d,%d\B、scanf(\"%d %d %d\

C、scanf(\"%2d%2d%2d\D、scanf(\"i=%d,j=%d,k=%d\参考答案:D

2、以下程序的结果是______。 int a ,b; void fun()

{ a=100; b=200; } main()

{ int a=5,b=7; fun();

printf(\"%d %d\\n\}

A、7 5 B、5 7 C、200 100 D、100 200 参考答案:B

3、以下程序段的输出结果是:______。

char s[]=\"\\\\120\\141mn\\n\"; printf(\"%d\\n\

A、14 B、9 C、7 D、8 参考答案:D

4、#include main()

{ char c1,c2,c3,c4,c5,c6;

scanf(\"%c%c%c%c\ c5=getchar(); c6=getchar(); putchar(c1); putchar(c2); printf(\"%c%c\\n\}

程序运行后,若从键盘输入(从第1列开始) 123<回车> 45678<回车>

则输出结果是______。

A、1267 B、1278 C、1256 D、1245 参考答案:D 5、有以下程序 main()

{ char k; int i; for(i=1;i<3;i++) { scanf(\"%c\ switch(k)

{ case '0': printf(\"another\\n\"); case '1': printf(\"number\\n\"); } } }

程序运行时,从键盘输入:01↙,程序执行后的输出结果是______。 A、number

number B、another

another

C、another number

number D、another number 参考答案:C

6、以下四个程序中,完全正确的是______。 A、#include

number

main(); {

/*programming*/

printf(\"programming!\\n\"); }

B、include main() {

/*/*programming*/*/ printf(\"programming!\\n\"); }

C、#include main() {

/*programming*/

printf(\"programming!\\n\"); }

D、#include main() {

/*/programming/*/

printf(\"programming!\\n\");

}

参考答案:C

7、设a=5、b=6、c=7、d=8、m=2、n=2,执行 (m=ad) 后n的值为______。

A、3

B、2

C、1 参考答案:B

8、程序中头文件type1.h的内容是: #define N 5 #define M1 N*3 程序如下:

#include \"type1.h\" #define M2 N*2 main() {int i;

i=M1+M2; printf(\"%d\\n\

D、4

}

程序编译后运行的输出结果是______。 A、20 B、10 C、25 D、30 参考答案:C

9、设有以下语句,其中不是对a数组元素的正确引用的是:______(其中0≤i<6)

int a[6]={11,22,33,44,55,66},*m=a;

A、a[i]

B、*(&a[i])

C、m[i] 参考答案:D

10、以下的for循环:

for(m=0,n=0;(n!=23)&&(m<5);m++);

D、&(*(a+i) )

A、是无限循环

B、执行5次

C、循环次数不定

D、执行3次

参考答案:B

11、有如下定义

struct person{char name[9]; int age;}; struct person class[10] = { \"John\ \"Paul\ \"Mary\ \"Adam\根据上述定义,能输出字母M的语句是______。 A、printf(\"%c\\n\ B、printf(\"%c\\n\

C、printf(\"%c\\n\D、printf(\"%c\\n\ 参考答案:D

12、阅读以下程序 main() { int x;

scanf(\"%d\

if(x--<5)printf(\"%d\\n\ else printf(\"%d\\n\ }

程序运行后,如果从键盘上输入5,则输出结果是______。

A、3 B、6 C、5 D、4 参考答案:D

13、已有文本文件test.txt,其中的内容为:everyone!。以下程序中,文件test.txt已正确为\"读\"而打开,由文件指针fr指向该文件,则程序的输出结果是___________。 #include main()

{ FILE *fr;char s[80]; „„

fgets(s,5,fr); printf(\"%s\\n\fclose(fr);}

A、ever B、every C、everyo D、everyone! 参考答案:A

14、有以下程序 #include

void WriteStr(char *fn,char *str) { FILE *fp; fp=fopen(fn,\"w\"); fputs(str,fp); fclose(fp); } main() {

WriteStr(\"t1.dat\ WriteStr(\"t1.dat\}

程序运行后,文件t1.dat中的内容是______。 A、startend B、end C、start D、endrt 参考答案:B

15、以下关于long、int和short类型数据占用内存大小的叙述中正确的是______。

A、由用户自己定义 B、根据数据的大小来决定所占内存的字节数 C、均占4个字节 D、由C语言编译系统决定

参考答案:D

二、填空题(每题2分,共40分)

1、字符读写函数____________是用于把一个字符写入磁盘文件。

参考答案:fputc#fputc()#putc#putc()

2、C语言中的关键字共有32个,而且都是________写。提示:大/小 参考答案:小

3、在C语言中,从参数的形式看,函数可以分为两类:无参函数和____________函数。 参考答案:有参

4、在C语言中,如果采用printf函数将整个字符串一次输出,那么对应的格式控制符为\"________\"。 参考答案:%s

5、结构化程序设计的3种基本结构是:顺序结构、_______结构、循环结构。而且正是这三种基本结构构成了复杂的C语言程序。

参考答案:选择#分支

6、在C语言中,关系运算符中的\"大于等于\"表示为________。 参考答案:>=

7、在C语言数据类型中,一个双精度型变量所占字节数是____。 参考答案:8

8、在C语言中,每个变量都具有存储类别属性。存储类别是指数据在内存中存储的方法。并且存储方法分为_______类。 参考答案:2#两

9、在C语言中,将字符串中大写字母转换成小写字母的函数是_____________。

参考答案:strlwr#strlwr()#strlwr(字符串)

10、在C语言中,对一维整型数组初始化时如果只给一部分元素赋初值,那么其他元素值均为____________。

参考答案:0#零

11、以下程序的输出结果为___________。 #include main() {char c,d;

c=getchar(); /*(输入d)*/ d=c-33;

printf("%c",d);} 参考答案:C

12、执行下列程序段后,输出的a的值是_____________。 main()

{int a = 1; switch(a)

{case 0: a - -;break; case 1: a + +; break; case 2: a=a+5; break; } printf("%d",a);} 参考答案:2

13、已知\"float x=0.5;int y=13;\",则算术表达式\"x+y/5\"的值是_________。 参考答案:2.5#2.500000

14、下列程序段的运行结果是_____。 float b=80 ,*q ; q=&b;

printf(\"%f\

参考答案:80.000000#80.0

15、以下程序的输出结果是_____________。 main() {float x;

printf("%.4f\\n",(x=2*4,x+0.5));} 参考答案:8.5000

16、下列程序段的运行结果是_____。 void gun( ) { float x=3.0; } main( ) {float x=1.0; gun( );

printf(\"x=%f\

参考答案:x=1.000000#x=1.0

17、有以下程序 #include main()

{char a[]={'a','b','\\0'}; int j; j=strlen(a); printf(\"%d\\n\

程序运行后的输出结果是______。 参考答案:2

18、已知char str[]="happy!",则strlen(str)的值为_____。 参考答案:6

19、执行下列的程序段后,正确的结果是_____________。 int t=2; while( t = 8)

t - - ; printf("%d", t ); 参考答案:无限循环#死循环

20、下列程序段的运行结果是_____。 main( )

{int a=5,b=6,c; int sub(int , int); c=sub(a , b); printf(\"%d\\n\int sub( int x , int y ) {int z; z=x-y; return z ; } 参考答案:-1

三、是非题(每题0.5分,共10分)

1、使用strcpy(字符数组,字符串)函数时,字符串后面的'\\0'并没有一起拷贝到字符数组中。 参考答案:否

2、如果在共用体中有若干个不同类型的成员,在每一瞬间只有一个成员起作用,实际上是最后一个存放成员起作用。 参考答案:是

3、当函数的类型为int型时,Turbo C允许省略函数声明。

参考答案:是

4、C程序中的变量一定要先定义后使用。 参考答案:是

5、switch语句中的case和default的出现次序不可以是任意的。 参考答案:否

6、指针变量定义后可以指向任何类型的不同变量。 参考答案:否

7、C语言中字符型变量的存储单元中存放的是该字符的ASCII码值。 参考答案:是

8、如果字符串常量所包含的字符个数等于数组长度,则在整体输出字符数组中的字符串时,会跟出一些不可预见的字符。

参考答案:是

9、全局变量本身就是静态存储方式 参考答案:是

10、C语言中输入与输出操作都是由自定义函数来实现的。

参考答案:否

11、C语言中浮点型常量指数法形式中字母e 或E之前必须有数字。 参考答案:是

12、break语句不能跳出多层循环 参考答案:是

13、C语言对文件读、写之前不必先打开文件,在使用文件之后无需关闭该文件。 参考答案:否

14、在if和else后面可以只含有一个内嵌的操作语句,也可以含有多个操作语句,此时应用花括号\"{ }\"

将几个语句括起来,构成一个复合语句。 参考答案:是

15、在多层循环中,continue语句就是终止整个循环的执行。 参考答案:否

16、在定义指针变量时如果不为其赋初值,则它的值是不确定的。 参考答案:是

17、若函数体内没有return语句,程序的流程就执行到函数体的末尾,然后返回到调用函数。这时带回一个不确定的函数值。 参考答案:是

18、结构体的各个成员各自占用自己的存储单元,各有自己的地址,各个成员所占的存储单元的总和一般就是结构体的长度。 参考答案:是

19、C程序是由函数构成的,其中可以有一个或多个

主函数main( )。 参考答案:否

20、要使用标准输入、输出函数,正常情况下应该在文件的开头加上以下内容:#include 或 #include\"stdio.h\"。 参考答案:是

四、C程序设计(每题10分,共20分)

1、 给定程序modi.c中,函数fun的功能是:求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。

请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

2、 程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun( int a[][N], int n ),函数的功能是:使数组上半三角元素中的值乘以m 。例如:若m的值为2,a 数组中的值为

| 1 9 7 | | 2 18 14| a = | 2 3 8 | | 2 6 16|

| 4 5 6 | | 4 5 12|

注意:部分源程序存在文件prog.c中。 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 #include #define N 3

fun(int a[][N],int n) { }

void main()

{ int a[N][N]={1,9,7,2,3,8,4,5,6} ,m; scanf(“%d”,&m); fun(a,m); for(i=0;i}

因篇幅问题不能全部显示,请点此查看更多更全内容