您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页C语言复习资料B(含答案)

C语言复习资料B(含答案)

来源:尚车旅游网
《C语言程序设计》复习资料2

一.选择题 题号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 答案 B B D B B C C C A A C D A A 1. 以下选项中合法的用户标识符是( )

A.long

B._2Test

C.3Dmax

D.A.dat

2. 若变量已正确定义并赋值,以下符合C语言语法的表达式是( )

A.a:=b+1

B.a=b=c+2

C.int 18.5%3

D.a=a+7=c+b

3. 在TurboC中,double类型变量所占字节数是 _______。

A.2 B.4

C.6

D.8

4. printf()函数的格式说明符中,要输出字符串应使用下面那个说明符:

A.%d

B.%s

C.%c

D.%f

5. 使用strcmp( )函数之前, 必须要包含头文件:

A.stdio.h

B.string.h

C.math.h D.

conio.h

6. 若x=-1;则关于以下程序段的描述,正确的是( )

do

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

A.是死循环 B.循环执行两次 C.循环执行一次 D.有语法错误7. 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是( A.-3

B.9

C.-12

D.6

8. 设x、y、z和k都是int型,则执行表达式:x=(y=4,z=16,k=32)后,x的值为( A.4

B.16

C.32

D.52

9. 有如下程序段

int *p, a=10,b=1;

p=&a; a=*p+b; 执行该程序段后,a的值为:( )

第 1 页 共 5 页

B )

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

10. 以下程序段中,printf语句一共执行了:( )次。

for( n = 0, i = 1; i <= 5; i++ )

for( j = 1; j <= 10; j++ ) n++; printf( \"n=%d\\n\

B.5

C.10

D.50

A.1

11. 下列各语句定义了数组,其中哪一个是正确的____________。

A.int x[6]={0,1,2,3,4,5,6}; B.char x={‘x’,‘y’,‘z’};

C.int x[10]= {0}; D.int x[100]= “100”; 12. 若说明int *p,n;则通过语句scanf能够正确读入数据的程序段是( )

A.p=&n;scanf(\"%d\); C.scanf(\"%d\);

B.p=&n;scanf(\"%d\); D.p=&n;scanf(\"%d\);

13. 在C语言中,要求运算数必须是整型的运算符是( )

A.%

B./

C.<

D.!

14. 以下叙述中正确的是( )

A.C程序中注释部分可以出现在程序中任意合适的地方 B.花括号“{”和“}”只能作为函数体的定界符

C.构成C程序的基本单位是函数,所有函数名都可以由用户命名 D.分号是C语句之间的分隔符,不是语句的一部分

15. 凡是函数中未指定存储类别的局部变量,其默认的存储类别为 。

A. auto B. static C. extern 二. 填空题

D. register

bb24ac1. 请将代数式改写成C语言的表达式

2a(—b+sqrt(b*b—4*a*c )/(2*a))___ 。

2. 已知char c[12]={ “Student”};则strlen(c))的值为__7 _____。

第 2 页 共 5 页

3. 设y是int型变量,请写出判断y既能被5整除又是偶数的关系表达式__

___if( (y%5==0)&&(y%2==0) ) _。

4. 在C语言中,字符串输入函数为_ gets( ) ___,字符串输出函数为_ puts( )__

使用这两个函数前应包含 stdio.h 头文件。

5. 语句int a, *p=&a中,“*”是 指针 运算符,“&”是 地址 运算符。 6. 在函数声明float f1(float m,int n); 中,m,n被称为函数的 形参 ,当f1被调用时,如fun(10,3.14)中,10,3.14被称为函数的 实参 。 三.简答题

1. 编程实现1!+2!+3!+……+10!,请填空。 void main( ) {

float s = 0, t = 1; int n;

for (n=1; n<=10; n++)

{ t=__t*n __ ___;

s=__s+t ____ __ _; }

printf(“1!+2!+3!+……+10!=%f”, s); }

2. 以下程序的输出结果是___< > < > ____。 main()

{ int i;

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

{ if(i%2= =1)

putchar(‘<’); else putchar(‘>’); }

putchar(‘#’);}

3. 下面程序的运行结果是 再见Mike 。 main( )

{ char arr[30]=“再见”; char b[8]=“Mike”; strcat(arr ,b); puts(arr); }

4. 以下列程序的输出结果是 35 。

int fun( )

第 3 页 共 5 页

{

static int a = 10; a +=5; return a; }

void main() { printf(“ %d \\n”,fun()+ fun() );

}

5. 以下列程序的输出结果是 7 2 。

#include main() {int x,y;

char a[7]=\"a0\\0a0\\0\"; x=sizeof(a); y=strlen(a);

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

6、定义结构体类型Birth,成员包括:名字(name)、年(year)、月(month)、日(day)。然后定义一个结构体变量bir01,并按照下表进行初始化。 struct Birth 名字 年 月 日 { LiMing 1990 6 18 char name[20]; int year; int month; int day };

struct Birth bir01={“LiMing”, 1990 ,6,18}; 四.编写程序

1. 韩信点兵。韩信有一队兵,他想知道有多少人,便让士兵排队报数:按从1

至5报数,最末一个士兵报的数为1;按从1至6报数,最末一个士兵报的数为5;按从1至7报数,最末一个士兵报的数为4;最后再按从1至11报数,最末一个士兵报的数为10。编程计算韩信至少有多少兵。 #include main() { int i;

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

{ if(i%5= =1&&i%6= =5&&i%7= =4&&i%11= =10) {printf(“兵数:%d\\n”,i); break;

第 4 页 共 5 页

}

}

}

2. 输入10个学生的一门课成绩,用一维数组存放其成绩,统计并输出不及格人

数及其百分比。 #include main()

{float a[10]; int i,j=0;

for(i=0;i<10;i++) { scanf(\"%f\ if(a[i]<60) j++; }

printf(\"不及格人数:%d,百分比:%.2f%\\n\}

3. 编写有参、有返回值的自定义函数fun( ),其功能是计算圆柱体的体积。要求在主函数中指定输入圆柱体的半径和高,调用函数fun( )后输出圆柱体体积。

#include

float fun(float r,float h) {

float v;

v=3.14*r*r*h; return v; }

main() {

float r,h,v;

scanf(\"%f%f\ v=fun(r,h);

printf(\"体积:%.2f\ }

第 5 页 共 5 页

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

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务