77范文网 - 专业文章范例文档资料分享平台

C语言练习题(谭浩强第四版)..附有答案 (1)(5)

来源:网络收集 时间:2019-01-07 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

高级语言程序设计综合练习一 学号: 姓名:

D、 函数内全部范围

17. 下列函数中,能够从键盘上获得一个字符数据的函数是( )。

A、 puts( ) B、 putchar( ) C、 getchar( ) D、 gets( ) 18. 以下程序的输出结果是( )。

fun(int a,int b,int c) { c=a+b; }

int main() { int c; fun(2,3,c); printf(“%d\\n”,c); return 0; }

A、 2 B、 3 19. 分析以下程序的运行结果( func(int a,int b) { int temp=a; a=b; b=temp; }

int main() { int x,y; x=10; y=20; func(x,y);

printf((“%d,%d\\n”,x,y); return 0 ; }

A、 10,20 B、10,10 20. 下面程序的输出是( )。fun(int x) {

static int a=3; a+=x; return(a); }

int main() { int k=2,m=1,n; n=fun(k); n=fun(m); printf(“%d”,n);

return 0;

)。

C、 20,10 C、 5 D、20,20 D、 无定值21

高级语言程序设计综合练习一 学号: 姓名:

}

A、 3 B、 4 C、 6 D、 9 21. 以下程序输出的结果是( )。

int func(int a,int b) {

return(a+b); }

int main() {

int x=2,y=5,z=8,r; r=func(func(x,y),z); printf(“%d\\n”,r);

return 0; }

A、 12 B、 13 C、 14 D、 15 22. 以下程序的输出结果是( )。

int a,b void fun() {

a=100; b=200; }

int main() {

int a=5,b =7; fun(); printf(“%d%d \\n”,a,b);

return 0; }

A、 100200 B、 57 C、 200100 D、23. 下列程序执行后的输出结果是

void func1(int i); void func2(int i);

char st[]=\ void func1(int i) { printf(\[i]);

if(i<3) { i+=2;func2(i);} }

void func2(int i) { printf(\[i]);

if(i<3) { i+=2;func1(i);} }

int main()

{ int i=0; func1(i); printf(\\n\); return 0;} A)hello B)hel C)hlo D)hlm

75 22

高级语言程序设计综合练习一 学号: 姓名:

24. 有以下程序

int f(int n)

{ if(n==1) return 1; else return f(n-1)+1; }

int main() { int i,j=0;

for(i=1;i<3;i++) j+=f(i); printf(\\n\); return 0; }

程序运行后的输出结果是 A)4 B)3 C)2 D)1 25. 现有如下程序

#include \ int fun(int x)

{ printf(\\n\); }

int main()

{ fun(12+5); return 0; }

则程序的输出结果是 A)12 B)13 C)17 D)18

二、判断题

1、 ( ) 函数定义void max(int a,int b)表示该函数的返回值不确定。 2、 ( )在C语言中,函数体中变量的隐含存储类别是自动变量auto。 3、 ( )return语句作为函数的出口,在一个函数体内只能有一个。 4、 ( )在C程序中,函数不能嵌套定义,但可以嵌套调用。 5、 ( ) C语言的源程序中必须包含库函数。 6、 ( )在C程序中,函数调用不能出现在表达式语句中。 7、 ( )在C函数中,形参可以是变量、常量或表达式。 8、 ( )在主函数main( )中定义的变量都可以在其它被调函数中直接使用。

9、 ( )在C语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。10、 ( )C语言程序中的main( )函数必须放在程序的开始部分。 11、 ( )若定义的函数没有参数,则函数名后的圆括号可以省略。 12、 ( )函数的函数体可以是空语句。 13、 ( )函数的实参和形参可以是相同的名字。 14、 ( )函数调用中,形参与实参的类型和个数必须保持一致。 15、 ( )C语言中函数返回值的类型由return语句中的表达式的类型决定。 16、 ( )外部类型的变量只能定义一次,但可在不同地方声明多次。 17、 ( )外部类型的变量作用范围大,编程中应多用外部变量。 答案:

BCBBD CBBDB CADAD CCDAC DBCBD

23

高级语言程序设计综合练习一 学号: 姓名:

1F 2T 3F 4T 5 F 6F 7 F 8 F 9T 10F 11F 12T 13T 14T 15F 16T 17F

第8章 指 针

一、 选择题

1、 下列选项中正确的语句组是:( )

A)char s[8]; s={\)char *s; s={\C)char s[8]; s=\ D)char *s; s=\2、 若有定义:int *p[3];,则以下叙述中正确的是:( ) A)定义了一个类型为int的指针变量p,该变量具有三个指针

B)定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针 C)定义了一个名为*p的整型数组,该数组含有三个int类型元素

D)定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素 3、 已定义以下函数

fun(char *p2, char *p1)

{ while((*p2=*p1)!='\\0'){ p1++;p2++; } } 函数的功能是:( )

A)将p1所指字符串复制到p2所指内存空间 B)将p1所指字符串的地址赋给指针p2

C)对p1和p2两个指针所指字符串进行比较

D)检查p1和p2两个指针所指字符串中是否有'\\0'

4、 若有如下定义char a[10],*p=a,则对a数组中元素的不正确的引用是:( )

A)*&a[5] B)a+2 C)*(p+5) D)*(a+5) 5、 有以下程序 main()

{ int x[8]={8,7,6,5,0,0}, *s; s=x+3;

printf(\}

执行后输出结果是:( )

A) 随机值 B) 0 C) 5 D) 6 6、 下列程序的运行结果是:( ) void fun(int *a, int *b) { int *k;

k=a; a=b; b=k; }

main()

{ int a=3, b=6, *x=&a, *y=&b; fun(x,y);

printf(\}

A) 6 3 B) 3 6 C) 0 0 D)编译出错 7、 下面程序的输出结果是:( ) main()

24

高级语言程序设计综合练习一 学号: 姓名:

{ int a[ ]={1,2,3,4,5,6,7,8,9,0,},*p; p=a;

printf(\}

A) 0 B) 1 C) 10 D) 9

8、 若有说明:int i, j=2,*p=&i;,则能完成i=j赋值功能的语句是:( )

A) i = *p; B) *p = *&j; C) i = &j; D) i = **p; 9、 以下定义语句中,错误的是:( )

A) int a[]={1,2}; B) char *a[3]; C) char s[10]=\ D) int n=5,a[n];

10、 以下不能正确进行字符串赋初值的语句是:( ) A) char str[5]=\; B) char str[]=\

C) char *str=\11、 有以下程序 main()

{ int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};

int i,s=0;

for(i=0;i<4;i++) s+=aa[i][1]; printf(\}

程序运行后的输出结果是:( )

A) 11 B) 19 C) 13 D) 20 12、 有以下程序 #include main()

{ char *p=\

printf(\}

程序运行后的输出结果是:( ) A) 12 B) 15 C) 6 D) 5

13、 变量的指针,其含义是指该变量的______. a)值 b)地址 c)名 d)一个标志

14、 若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是_______. a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point ,point 15、 若有说明;int *p,m=5,n;以下正确的程序段的是____. a)p=&n; b)p=&n; scanf(\ scanf(\ c)scanf(\ d)p=&n;

*p=n; *p=m; 16、 以下正确的程序段是______.

a)char str[20]; b)char *p; scanf(\ scanf(\

25

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言练习题(谭浩强第四版)..附有答案 (1)(5)在线全文阅读。

C语言练习题(谭浩强第四版)..附有答案 (1)(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/409092.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: