C语言6套试题

更新时间:2023-12-01 18:51:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一套试题

一、单项选择题(15个小题,每题2分,共30分):

1.一个C语言程序的执行是从_____。 A.main函数开始,直到main函数结束 B.第一个函数开始,直到最后一个函数结束 C.第一个函数开始,直到最后一个语句结束 D.main函数开始,直到最后一个函数结束 2. 正确的自定义标识符是_____。 A.x_2 B.a-b C.2sum D.$123 3.下面程序的运行结果是_____。 #define F(x) x*x void main( ) { int a=2,b=1;

prinft(“%d\\n”,F(a+b)); }

A.3 B.5 C.8 D.9

4.读以下程序段,判断a的值为_____。 int *p,a=10,b=1; p=&a; a=*p+b;

A.12 B.10 C.11 D.编译出错

5.根据以下说明语句,则下面的叙述中不正确的是_____。 struct student { int num; char name[10]; int score; }stu;

A.struct是定义结构体类型的关键字 B.stu是结构体变量名

C.num, name, score都是结构体成员名 D.stu是结构体类型名

6.已知字母A的ASCII码为十进制数65,变量ch1为字符型,则执行语句ch1=‘A’+‘5’-‘2’;后,ch1中的值是_____。

A.D B.67 C.一个不确定的值 D.C

7.以下哪种方法不能对一维数组进行正确的初始化_____。 A.int a[ ]={1,2,3}; B.int a[5]={ };

C.int a[5]=(1,2,3,4,5); D.int a[ ]={2,3,4*5,6}; 8.已正确定义字符变量ch1,下面能正确赋值的是_____。 A.ch1=“a”; B.ch1=‘a’;

C.ch1=“C语言程序设计”; D.ch1=‘ C语言程序设计’; 9.逗号表达式 (a=3*4,a*4),a+5 的值是_____。 A.53 B.17 C.20 D.48

10.设n为float型,m为int型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍

五入的表达式是_____。

A.n=(n*100+0.5)/100.0 B.n=n*100+0.5/100.0 C.m=n*100+0.5,n=m/100.0 D.n=(n/100+0.5)*100.0 11.设i=2,j=3,则表达式(i++)*(++j)的值为_____。 A.6 B.8 C.9 D.12

12.关于以下程序段,说法正确的是_____。 x=-1; do

{ x=x*x; }while(!x);

A.死循环 B.循环体执行二次 C.循环体执行一次 D.有语法错误

13.若有下列定义:char c[5],*p=c; 则对c数组元素地址的正确引用是_____。 A.p+2 B.&c[5] C.c++ D.&c

14.当调用函数时,实参是一个数组名,则向函数传送的是_____。 A.数组的长度 B.数组每个元素中的值 C.数组每一个元素的地址 D.数组的首地址

15.文件中利用fopen函数打开文件,如果以只读方式打开二进制文件,则以下打开方式正确的是_____。

A.r+ B.rb C.wb D.ab

二、填空题(5个小题,每题2分,共10分):

1.若有int i=1,j=7,a; 执行语句 a=i+(j%4!=0); 后,a的值是_______。 2.执行以下程序后,运行结果是_______。 #include void main( ) { int a,b;

for(a=1,b=1;a<=100;a++) { if(b>=10) break;

if(b%3==1) { b+=3; continue; } }

printf(“%d\\n”,a);}

3.源程序中用到了strcat函数,需要包含的头文件(即库文件)为_______。 4.执行以下程序后,运行结果是_______。 #include void main( ) { int a=2; float n=5.888,b; b=a+(int)n;

printf(“%f\\n”,b);}

5.语句 scanf(\若将3和4分别输入给a和b,则正确的输入方式为____ 。 三、程序分析题,写出程序的运行结果(5个小题,每题4分,共20分): 1.#include void main( )

{ int x=1,y=0,a=0,b=0; switch(x)

{ case 1: switch(y)

{ case 0: a++; break; case 1: b++; break; }

case 2: a++; b++; break;} printf(“a=%d,b=%d\\n”,a,b);}

2.在运行以下程序时,输入“Turbo C++ 3.0”,写出程序的运行结果。 #include void main( ) { char str[40];

printf(\scanf(\puts(str);}

3.#include void f(int y) { static int i=5; int j=3; j++;

printf(“%d+%d+%d=%d\\n”,i,j,y,i+j+y); i*=2;} void main( ) { int x;

for(x=1;x<=2;++x) f(x);} 4.#include void swap(int *pa,int *pb) { int *p; p=pa; pa=pb; pb=p; } void main( ) { int a=10,b=20; int *p1=&a,*p2=&b; if(a int a=5; int b=7; int plus(int x,int y) { int z; z=x+y; return (z);} void main( ) { int a=4,b=5,c; c=plus(a,b);

printf(“a+b=%d\\n”,c); }

四、程序填空题,将下面程序补充完整(10个填空,每空2分,共20分):

1.输出九九表。 #include “stdio.h” void main( ) { int i,j; for(i=1;i<=9;i++) {for(j=1; ① ;j++)

printf(“=*%d=-”,i,j,i*j); ② ; } }

2.利用函数形式,求x数组所有元素的平均值并输出。 #include “stdio.h” ① ;

void main( )

{ float avg,x[10]={1.2,3.6,4.5,5.1,6.9,7,8,9,10.5,11.3}; avg=average(x);

printf(“The average is %5.2f\\n”,avg); }

float average(float a[10]) { int i; float sum=0;

for(i=0;i<10;i++) sum=sum+a[i]; ② ; }

3.编写一个计算字符串长度的函数length。 #include “stdio.h” void main( ) { char str[20]; int m;

int length(char *p);

printf(\gets(str); ① ;

printf(\}

int length(char *p) { int n=0;

while( ② ) { n++; p++; } return n;}

4.输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。 #include “stdio.h” void main( ) { int i,n=10,a[10]; float avg=0;

for(i=0;i

{ if( ① ) printf(“\\n”); printf(“%d ”,a[i]); }

for(i=0;i

printf(“average=%f\\n”,avg); }

5.将字符数组中大写字符改为小写字符,将小写字符改为大写字符,利用指针完成。 #include “stdio.h” void main( )

{ char str[30]=“Welcome to C Language”,*cp=str; while(*cp)

{ if(*cp>=‘A’&&*cp<=‘Z’) ① ;

else if(*cp>=‘a’&&*cp<=‘z’) *cp=*cp-32; ② ; }

puts(str); }

五、程序设计题(3个小题,共20分):

1.设三个整型变量a,b,c,编写程序为a,b,c输入数据,并要求a,b,c按由小到大排序后输出。(5分) 2.学生成绩可分为五分制与百分制,编程将百分制转换为五分制输出。(5分)

3.编写排序函数sort(int a[ ]),实现对数组a中的元素进行排序,并利用该函数,从键盘输入若干个数(如10个)将其按升序排列。(10分)

第一套试题

一、单项选择题(15个小题,每题2分,共30分): 1-5:AABCD 6-10:ACBBC 11-15:BCADB 二、填空题(5个小题,每题2分,共10分): 1.2 2.4 3.string.h 4.7.000000 5.a=3,b=4

三、程序分析题,写出程序的运行结果(5个小题,每题4分,共20分): 1.a=2,b=1 2.Turbo 3.5+4+1=10 4.10,20 5.a+b=9 10+4+2=16

四、程序填空题,将下面程序补充完整(10个填空,每空2分,共20分): 1.①j<=i ②printf(“\\n”)

2.①float average(float a[10]) 或 float average(float a[ ]) ②return (sum/10)

3.①m=length(str) ②*p!=‘\\0’ 或 *p

本文来源:https://www.bwwdw.com/article/qw2t.html

Top