C语言习题集(平时练习含答案)1(7)

2020-04-03 10:14

}

15.有以下程序: #include #include main()

{char a[10]=”abcd”;

printf(“%d, %d\\n”,strlen(A),sizeof(A)); }

程序运行后的输出结果为:B

A)7,4 B)4,10 C)8,8D)10,10

16.有两个字符数组a、b,则以下正确的输入语句是( B ). (提示因为数组名代表数组的首地址,所以不需要取地址符号) A)gets(a,B);

B)scanf(\

C)scanf(\

D)gets(\

17.下面程序段的运行结果是( C ).

(提示,凾数strcpy(a,B);将字符串b拷贝到a,所以a的前面三个字符变成ABC第四个变成’\\0’,但e和f仍然存在)

char a[7]=\ char b[4]=\ strcpy(a,B); printf(\

思考:如果改成printf(\输出结果是???

26

A)空格 B)\\0 C)e D)f 18.有下面程序段,则( D )。 char a[3],b[ ]=\“%s”,a);

A)运行后将输出China B) 运行后将输出Ch C)运行后将输出Chi

D)编译出错

19. 若有说明: int a[ ][3]={1,2,3,4,5,6,7};则a 数组第一维的大小是( B )。(后面系统默认赋值为0,补两个0) A)2

B)3

C)4

D)无确定值

20.以下叙述中错误的是( C )。

A)对于double类型数组,不可以直接用数组名对数组进行整体输入或输出 B)数组名代表的是数组所占存储区的首地址,其值不可改变

C)当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息

D)可以通过赋初值的方式确定数组元素的个数

21.下列函数inverse的功能是使一个字符串按逆序存放,请填空。 void inverse (char str[]) {

char m; int i,j;

for (i=0,j=strlen(str);i< strlen(str)/2 ;i++, j-- ) {

m=str[i];

27

}

}

str[i]= str[j-1] ; str[j-1]=m; ;

注意:22---24题可以不看

22.编写一个程序,从键盘输入10个学生的成绩,统计最高分、最低分和平均分。 解:使用一维数组A存储学生的成绩,然后用for循环进行判定求值。程序如下:

23.编写一个程序,将用户输入的十进制整数转换成任意进制的数。

解:采用辗转相除法进行进制之间的相互转换,将结果存储在一维数组num中,最后显示其值即可。

24.有一行文字,现要求从其中删去某个指定字符(如输入n,表示要从此行文字中删去所有是n的字符),要求该行文字和待删的字符均由终端输入。

第七章 函数

复习要点:

1. 库函数的正确调用。 2. 函数的定义方法。 3. 函数的类型和返回值。

4. 形式参数与实在参数,参数值的传递。 5. 函数的正确调用,嵌套调用,递归调用。

28

6. 局部变量和全局变量。 7. 变量的存的作用域和生存期。

1.C语言函数返回类型的默认定义类型是 。 2.函数的实参传递到形参有两种方式: 和 。

3.在一个函数内部调用另一个函数的调用方式称为 。在一个函数内部直接或间接调用该函数成为函数 的调用方式。

4.在一个C程序中,若要定义一个只允许本源程序文件中所有函数使用的全局变量,则该变量需要定义的存储类别为 。 5.以下正确的说法是( )。

A)用户若需要调用标准库函数,调用前必须重新定义

B)用户可以重新定义标准库函数,如若此,该函数将失去原有定义 C)系统不允许用户重新定义标准库函数

D)用户若需要使用标准库函数,调用前不必使用预处理命令将该函数所在的头文件包含编译,系统会自动调用。 6.以下正确的函数定义是。

A)double fun(int x, int y) B)double fun(int x,y) { z=x+y ; return z ; } { int z ; return z ;} C)fun (x,y) D)double fun (int x, int y) { int x, y ; double z ; { double z ; z=x+y ; return z ; } return z ; }

7.若调用一个函数,且此函数中没有return语句,则正确的说法是 。 A)该函数没有返回值

29

B)该函数返回若干个系统默认值 C)能返回一个用户所希望的函数值 D)返回一个不确定的值 8.以下正确的函数定义是 。

A)double fun(int x , int y) B)double fun(int x ; int y) C)double fun(int x , int y) ; D)double fun(int x,y)

9.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是( ) A)float型 B)int型 C)long型 D)double型 10.若程序中定义了以下函数 double myadd(double a,double B) { return (a+B);}

并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误是( )

A)double myadd(double a,B); B)double myadd(double,double); C)double myadd(double b,double A); D)double myadd(double x,double y);

11..C语言规定,非地址类变量做实参时,它和对应的形参之间的数据传递方式是( )。

A)地址传递 B)值传递 C)有实参传给形参,再由形参传给实参 D)由用户指定传递方式 12.以下正确的描述是( )。

30


C语言习题集(平时练习含答案)1(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中南大学软件体系结构实验报告-实验1

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

马上注册会员

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