C语言上机题库(5)

2019-04-13 22:40

{ n++; p++; } return n; }

void main() { int length(char *p); int len;

/**********FOUND**********/ char *str[20];

printf(\ scanf(\

/**********FOUND**********/ len==length(str);

printf(\} 答案:

=======(答案1)======= while(*p!='\\0')

=========或========= while(*p)

=========或========= while(*p!=0)

=========或========= while(*p!=NULL)

=======(答案2)======= char str[20];

=======(答案3)======= len=length(str);

━━━━━━━━━━━━━━━━ 五、程序设计 共1题 (共计20分) ━━━━━━━━━━━━━━━━

第1题 (20.0分) 题号:365 /*------------------------------------------------ 【程序设计】

--------------------------------------------------

功能:求1到100之间的偶数之积。

------------------------------------------------*/

#include void wwjt();

double fun(int m) {

/**********Program**********/

/********** End **********/ }

void main()

{ double fun(int m);

printf(\ wwjt(); }

void wwjt() {

FILE *IN,*OUT; int iIN,i; double dOUT; IN=fopen(\ if(IN==NULL) {

printf(\Verify The Currernt Dir..it May Be Changed\ }

OUT=fopen(\ if(OUT==NULL) {

printf(\Verify The Current Dir.. it May Be Changed\ }

for(i=0;i<5;i++) {

fscanf(IN,\ dOUT=fun(iIN);

fprintf(OUT,\ } fclose(IN); fclose(OUT); }

答案:---------------------- double y=1; int i;

for(i=1;i<=m;i++)

if(i%2==0)y*=i; return y; ----------------------

━━━━━━━━━━━━━━━ 一、判断 共10题 (共计20分) ━━━━━━━━━━━━━━━

第1题 (2.0分) 题号:1189

定义int *p,a[5],i;p=a;i=10;p++与i++均实现变量的值加1. 答案:Y

第2题 (2.0分) 题号:1274

C语言对标识符的约定:标识符的开头不可以是小写字母. 答案:N

第3题 (2.0分) 题号:1142

C语言不允许数组名作为函数参数进行函数调用. 答案:N

第4题 (2.0分) 题号:1102

在C程序中 , 函数既可以嵌套定义 , 也可以嵌套调用 答案:N

第5题 (2.0分) 题号:33 int i,*p=&i;是正确的C说明。 答案:Y

第6题 (2.0分) 题号:1144

C语言程序中,数组中的每一个元素都必须是同一种数据类型. 答案:Y

第7题 (2.0分) 题号:1250

任何类型的变量都可以通过定义相应的指针变量指向它. 答案:Y

第8题 (2.0分) 题号:1284

在C语言中,void型函数将返回一个void型的数值. 答案:N

第9题 (2.0分) 题号:1147

一个字符型数据可以用整型数据格式输出,一个整数(只限于与字符相对应的整数)也可以用字符形式输出. 答案:Y

第10题 (2.0分) 题号:36

若有 int i=10,j=2;则执行完i*=j+8;后ⅰ的值为28。 答案:N

━━━━━━━━━━━━━━━━━ 二、单项选择 共15题 (共计30分) ━━━━━━━━━━━━━━━━━

第1题 (2.0分) 题号:555

选择结构中的条件与循环结构中循环成立的条件,

在写法上可以是任一表达式,但其值只能被判断为“真”或“假”。 哪个数作为逻辑“假”值()。 A:-1 B:1 C:非零的数

D:0 答案:D

第2题 (2.0分) 题号:135 一个C程序总是从( )开始执行. A:第一个语句 B:第一个函数 C:main()函数 D:首先被声明的函数 答案:C

第3题 (2.0分) 题号:3160

为表示关系x≥y≥z,应使用C语言表达式 A:(x>=y)&&(y>=z) B:(x>=y) AND (y>=z) C:(x>=y>=z) D:(x>=z)&(y>=z) 答案:A

第4题 (2.0分) 题号:498

下列运算符中是C语言关系运算符的是()。A:~ B:! C:& D:!= 答案:D

第5题 (2.0分) 题号:532 结构体类型的定义允许嵌套是指()。

A:成员是已经或正在定义的结构体型 B:成员可以重名 C:结构体型可以派生 D:定义多个结构体型 答案:A

第6题 (2.0分) 题号:190

定义如下变量和数组:int i; int x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )

for(i=0;i<3;i++) printf(\A:1 5 9 B:1 4 7 C:3 5 7 D:3 6 9 答案:C

第7题 (2.0分) 题号:539 C语言程序中必须有的函数是()。 A:#include \B:main C:printf D:scanf 答案:B

第8题 (2.0分) 题号:604 下面不正确的字符串常量是()。 A:'abc' B:\C:\D:\ \

答案:A

第9题 (2.0分) 题号:708 下面判断正确的是()。

A:char *a=\等价于 char *a;*a=\B:char

str[10]={\等价于

char

答案:A

第12题 (2.0分) 题号:166

下列定义数组的语句中不正确的是()。 A:int a[2][3]={1,2,3,4,5,6}; B:int a[2][3]={{1},{4,5}}; 答案:D

第15题 (2.0分) 题号:194

若有下列定义,则对a数组元素地址的正确引用是()。 int a[5],*p=a; A:&a[5] /***********SPACE***********/ string[i] = 【?】; string[i] = '\\0';

/***********SPACE***********/ printf (\【?】); } 答案: str[10];str[]={\

C:char *s=\等价于 char *s;s=\D:char c[4]=\等价于 char c[4]=d[4]=\ 答案:C

第10题 (2.0分) 题号:566 一个C程序的执行是从()。

A:本程序的main函数开始,到main函数结束 B:本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

C:本程序的main函数开始,到本程序文件的最后一个函数结束

D:本程序文件的第一个函数开始,到本程序main函数结束 答案:A

第11题 (2.0分) 题号:205 有如下说明

int a[10]={1,3,5,7,9,11,13,15,17,19},*p=&a[1]; 则数值为13的表达式是( ). A:*(p+5) B:*(p+6) C:*p+5 D:p+6

C:int a[][3]={{1},{4}}; D:int a[][]={{1,2,3},{4,5,6}}; 答案:D

第13题 (2.0分) 题号:170

关于return语句,下列正确的说法是()。A:在主函数和其他函数中均可出现 B:必须在每个函数中出现 C:可以在同一个函数中出现多次

D:只能在除主函数之外的函数中出现一次 答案:C

第14题 (2.0分) 题号:151 以下程序的运行结果是()。 main() {

int i=1,sum=0;

while(i<10) sum=sum+1;i++; printf(\}

A:i=10,sum=9 B:i=9,sum=9 C:i=2,sum=1 D:运行出现错误

B:p+2 C:a++ D:&a 答案:B

━━━━━━━━━━━━━━━━ 三、程序填空 共1题 (共计15分) ━━━━━━━━━━━━━━━━

第1题 (15.0分) 题号:423

/*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

功能:考查字符串数组的应用。输出26个大写英文字母。

-------------------------------------------------------*/

#include void main (void) {

char string[256]; int i;

/***********SPACE***********/ for (i = 0; i < 26; 【?】)

=======(答案1)======= i++

=========或========= ++i

=========或========= i=i+1

=========或========= i+=1

=======(答案2)======= 'A' + i

=========或========= i+'A'

=========或========= 65 + i

=========或========= i+65

=======(答案3)======= string

━━━━━━━━━━━━━━━━ 四、程序改错 共1题 (共计15分) ━━━━━━━━━━━━━━━━

第1题 (15.0分) 题号:410

/*------------------------------------------------------ space,digit,others); }

char fun(char c) May Be Changed\ }

【程序改错】

--------------------------------------------------------

功能:输入一行字符,分别统计出其中英文字母、空格、数字和 其它字符的个数。

------------------------------------------------------*/

#include

void main() { char c;

int letters=0,space=0,digit=0,others=0; printf(\ /**********FOUND**********/ while((c=getchar())=='\\n') {

/**********FOUND**********/ if(c>='a'&&c<='z'&&c>='A'&&c<='Z') letters++;

/**********FOUND**********/ else if(c=!' ') space++;

else if(c>='0'&&c<='9') digit++; else others++; }

printf(\in all:char=%d space=%d digit=%d others=%d\\n\

答案:

=======(答案1)======= while((c=getchar())!='\\n')

=======(答案2)=======

if( c>='a'&&c<='z' || c>='A'&&c<='Z' ) =========或=========

if( c<='z'&&c>='a' || c>='A'&&c<='Z' ) =========或=========

if( c <= 'z' && c >= 'a' || c >= 'A' && c<='Z' )

=======(答案3)======= else if(c==' ')

━━━━━━━━━━━━━━━━ 五、程序设计 共1题 (共计20分) ━━━━━━━━━━━━━━━━

第1题 (20.0分) 题号:501 #include

/*------------------------------------------------------- 【程序设计】

---------------------------------------------------------

题目:从键盘输入一个大写字母,要求改用小写字母输出。

-------------------------------------------------------*/ #include void wwjt();

{

/**********Program**********/

/********** End **********/ }

void main() { char fun(char c); char c1, c2;

printf(\ c1=getchar();

printf(\

c2=fun(c1);

printf(\ wwjt(); }

void wwjt() {

FILE *IN,*OUT; int i;

char iIN,iOUT; IN=fopen(\ if(IN==NULL) {

printf(\Verify The Currernt Dir..it

OUT=fopen(\ if(OUT==NULL) {

printf(\Verify The Current Dir.. it May Be Changed\ }

for(i=0;i<5;i++) {

fscanf(IN,\ iOUT=fun(iIN);

fprintf(OUT,\ } fclose(IN); fclose(OUT); }

答案: c=c+32; return c;

━━━━━━━━━━━━━━━ 一、判断 共10题 (共计20分) ━━━━━━━━━━━━━━━

第1题 (2.0分) 题号:1225

第7题 (2.0分) 题号:4

在Turbo C中,下面的定义和语句是合法的:

file *fp;fp=fopen(\答案:A

第2题 (2.0分) 题号:206 下面程序的输出结果是( ) main()

{ int a[10]={8,7,6,5,4,3,2,1},*p; p=&a[1]; 答案:A

第5题 (2.0分) 题号:203 下面程序的输出结果是( )

main(){ int a[8]={8,7,6,5,4,3,2,1},*p; p=a+3; printf(\在给变量命名时,C语言区分大小写字母,即认为Name和name不是同一个变量. 答案:Y

第2题 (2.0分) 题号:1256

while循环结构和do while循环结构的执行结果完全相同. 答案:N

第3题 (2.0分) 题号:1253

函数定义不能嵌套,即一个函数不能定义在别的函数内部. 答案:Y

第4题 (2.0分) 题号:12 结构体类型只有一种。 答案:N

第5题 (2.0分) 题号:27

char c[]=\Good\是一个合法的为字符串数组赋值的语句。 答案:Y

第6题 (2.0分) 题号:1096

C语言中\运算符的运算对象必须是整型. 答案:Y

答案:N

第8题 (2.0分) 题号:1226

在循环程序设计时,当while循环的条件表达式为常数1时,必然构成死循环. 答案:N

第9题 (2.0分) 题号:1261

C程序如果有多个函数,C程序的执行总是从最前边的函数开始的. 答案:N

第10题 (2.0分) 题号:1243

'm' 是C的合法常量,而\不是C的合法常量. 答案:N

━━━━━━━━━━━━━━━━━ 二、单项选择 共15题 (共计30分) ━━━━━━━━━━━━━━━━━

第1题 (2.0分) 题号:552

应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为()。 A:fclose() B:close() C:fread() D:fwrite

printf(\A:4 B:5 C:6 D:3 答案:A

第3题 (2.0分) 题号:97 以下不正确的叙述是()。

A:在C程序中所用的变量必须先定义后使用 B:程序中,APH和aph是两个不同的变量 C:若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变 D:当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值 答案:D

第4题 (2.0分) 题号:615

C语言中 while 和 do-while 循环的主要区别是()。

A:do-while 的循环体至少无条件执行一次 B:while的循环控制条件比 do-while的循环控制条件更严格

C:do-while 允许从外部转到循环体内 D:do-while 的循环体不能是复合语句

A:3 B:4 C:5 D:2 答案:A

第6题 (2.0分) 题号:112 下列程序的输出结果是()。 main()

{char c1=97,c2=98; printf(\} A:97 98 B:97 b C:a 98 D:a b 答案:B

第7题 (2.0分) 题号:551

应用缓冲文件系统对文件进行读写操作,打开文件的函数名为()。 A:open B:fopen C:close D:fclose


C语言上机题库(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:施工技术交底

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: