石大c语言考试题及答案_第1页
石大c语言考试题及答案_第2页
石大c语言考试题及答案_第3页
石大c语言考试题及答案_第4页
石大c语言考试题及答案_第5页
已阅读5页,还剩7页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

石大c语言考试题及答案一、选择题(8题,每题3分,共24分)

1.下列哪个不是C语言的关键字?

A.int

B.float

C.string

D.double

2.在C语言中,如何定义一个字符型变量?

A.intcharName;

B.charcharName;

C.stringcharName;

D.doublecharName;

3.以下哪个语句是正确的?

A.if(x=y){

B.if(x==y){

C.ifx=y{

D.ifx==y{

4.以下哪个循环语句会无限循环?

A.for(inti=0;i<10;i--){

B.while(i<10){

C.for(inti=0;i<10;i++){

D.for(inti=10;i>0;i--){

5.以下哪个函数用于动态分配内存?

A.malloc

B.free

C.calloc

D.realloc

6.以下哪个运算符用于按位与操作?

A.&&

B.||

C.&

D.|

7.以下哪个函数用于输入数据?

A.printf

B.scanf

C.cout

D.cin

8.以下哪个语句用于退出当前函数?

A.return;

B.exit();

C.break;

D.continue;

二、(一)多项选择题(5题,每题4分,共20分)

1.下列哪些是C语言的基本数据类型?

A.int

B.char

C.float

D.string

E.double

2.以下哪些语句是正确的循环语句?

A.for(inti=0;i<10;i++){

B.while(i<10){

C.do{i++;}while(i<10);

D.for(inti=10;i>0;i--){

E.if(i<10){i++;}

3.以下哪些函数用于动态内存管理?

A.malloc

B.free

C.calloc

D.realloc

E.memset

4.以下哪些运算符是逻辑运算符?

A.&&

B.||

C.&

D.|

E.!

5.以下哪些函数用于输入输出操作?

A.printf

B.scanf

C.cout

D.cin

E.putchar

(二)判断题(5题,每题2分,共10分)

1.C语言中的变量必须在使用前声明。()

2.C语言中的字符串可以用单引号表示。()

3.break语句用于退出当前循环。()

4.continue语句用于跳过当前循环的剩余部分。()

5.C语言中的数组可以是多维的。()

三、(一)填空题(5题,每题4分,共20分)

1.在C语言中,用于表示取模的运算符是______。

2.在C语言中,用于表示逻辑非的运算符是______。

3.在C语言中,用于动态分配内存的函数______可以分配指定大小的内存块。

4.在C语言中,用于输入数据的函数______可以从标准输入读取数据。

5.在C语言中,用于输出数据的函数______可以将数据输出到标准输出。

(二)计算题(2题,每题10分,共20分)

1.写一个C语言程序,定义一个整型数组,包含10个元素,并初始化数组的前5个元素为1,后5个元素为2。

2.写一个C语言程序,定义一个字符型数组,包含10个字符,并使用循环从标准输入读取10个字符,存储到字符型数组中。

四、综合题(2题,每题15分,共30分)

1.写一个C语言程序,实现一个简单的计算器,可以加、减、乘、除四种运算。

2.写一个C语言程序,实现一个冒泡排序算法,对一组整数进行排序。

五、材料分析题(2题,每题15分,共30分)

1.分析以下代码片段,说明其功能并解释其工作原理。

#include<stdio.h>

intmain(){

inti,j;

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

for(j=1;j<=i;j++){

printf("*");

}

printf("\n");

}

return0;

}

2.分析以下代码片段,说明其功能并解释其工作原理。

#include<stdio.h>

intmain(){

intarr[5]={1,2,3,4,5};

int*ptr=arr;

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

printf("%d",*(ptr+i));

}

return0;

}

答案部分:

一、选择题

1.C

2.B

3.B

4.B

5.A

6.C

7.B

8.A

二、(一)多项选择题

1.A,B,C,E

2.A,B,C,D

3.A,B,C,D

4.A,B,E

5.A,B,D

(二)判断题

1.√

2.×

3.√

4.√

5.√

三、(一)填空题

1.%

2.!

3.malloc

4.scanf

5.printf

(二)计算题

1.

#include<stdio.h>

intmain(){

intarr[10]={1,1,1,1,1,2,2,2,2,2};

for(inti=0;i<10;i++){

printf("%d",arr[i]);

}

return0;

}

2.

#include<stdio.h>

intmain(){

chararr[10];

printf("Enter10characters:");

for(inti=0;i<10;i++){

scanf("%c",&arr[i]);

}

for(inti=0;i<10;i++){

printf("%c",arr[i]);

}

return0;

}

四、综合题

1.

#include<stdio.h>

intmain(){

charoperator;

doublefirst,second;

printf("Enteranoperator(+,-,*,/):");

scanf("%c",&operator);

printf("Entertwooperands:");

scanf("%lf%lf",&first,&second);

switch(operator){

case'+':

printf("%.1lf+%.1lf=%.1lf",first,second,first+second);

break;

case'-':

printf("%.1lf-%.1lf=%.1lf",first,second,first-second);

break;

case'*':

printf("%.1lf*%.1lf=%.1lf",first,second,first*second);

break;

case'/':

if(second!=0.0)

printf("%.1lf/%.1lf=%.1lf",first,second,first/second);

else

printf("Dividebyzerosituation!");

break;

default:

printf("Error!operatorisnotcorrect");

}

return0;

}

2.

#include<stdio.h>

voidbubbleSort(intarr[],intn){

inti,j,temp;

for(i=0;i<n-1;i++){

for(j=0;j<n-i-1;j++){

if(arr[j]>arr[j+1]){

temp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

}

intmain(){

intarr[]={64,34,25,12,22,11,90};

intn=sizeof(arr)/sizeof(arr[0]);

bubbleSort(arr,n);

printf("Sortedarray:");

for(inti=0;i<n;i++){

printf("%d",arr[i]);

}

return0;

}

五、材料分析题

1.该代码片段的功能是打印一个右三角形星号图案。其工作原理是通过两层嵌套循环,外层循环控制行数,内层循

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论