函数进一步40002.doc

上传人:公**** 文档编号:556934858 上传时间:2022-09-19 格式:DOC 页数:21 大小:67.50KB
返回 下载 相关 举报
函数进一步40002.doc_第1页
第1页 / 共21页
函数进一步40002.doc_第2页
第2页 / 共21页
函数进一步40002.doc_第3页
第3页 / 共21页
函数进一步40002.doc_第4页
第4页 / 共21页
函数进一步40002.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《函数进一步40002.doc》由会员分享,可在线阅读,更多相关《函数进一步40002.doc(21页珍藏版)》请在金锄头文库上搜索。

1、函数进一步40002讲信用,够朋友.这么多年来,差不多到今天为止,任何一个国家的人,任何一个省份的中国人,跟我做伙伴的,合作之后都成为好朋友,从来没有一件事闹过不开心,这一点是我引以为荣的事.函数进一步一、选择题 (1)有以下程序 # include void f(char *s char *t) char k; k=*s; *s=*t; *t=k; s+; t-; if (*s) f(s t); main() char str10=abcdefg *p ; p=str+strlen(str)/2+1; f(p p-2); printf(%snstr); 程序运行后的输出结果是 A)abcde

2、fg B)gfedcba C)gbcdefa D)abedcfg (2)有以下程序 float f1(float n) return n*n; float f2(float n) return 2*n; main() float (*p1)(float)(*p2)(float)(*t)(float) y1 y2; p1=f1; p2=f2; y1=p2( p1(2.0) ); t = p1; p1=p2; p2 = t; y2=p2( p1(2.0) ); printf(%3.0f %3.0fny1y2); 程序运行后的输出结果是 A)8 16 B)8 8 C)16 16 D)4 8 (3)程

3、序中若有如下的说明和定义语句 char fun(char *); main() char *s=onea5=0(*f1)()=funch; . 以下选项中对函数fun的正确调用语句是 A)(*f1)(a); B)*f1(*s); C)fun(&a); D)ch=*f1(s) (4) 在函数调用过程中如果函数funA调用了函数 funB函数funB又调用了函数funA则 A) 称为函数的直接递归调用 B) 称为函数的间接递归调用 C) 称为函数的循环调用 D) C语言中不允许这样的递归调用 (5) 有以下程序 void fun(int *aint iint j) int t; if(ij) t=

4、ai;ai=aj;aj=t; i+; j-; fun(aij); main() int x=2618i; fun(x03); for(i=0;i4;i+) printf(%2dxi); printf(n); 程序运行后的输出结果是 A) 1 2 6 8 B) 8 6 2 1 C) 8 1 6 2 D) 8 6 1 2 *(6) 有以下程序 #include main(int argc char *argv ) int ilen=0; for(i=1;iargc;i+=2) len+=strlen(argvi); printf(5dnlen); 经编译链接后生成的可执行文件是ex.exe若运行时

5、输入以下带参数的命令行 ex abcd efg h3 k44 执行后输出结果是 A) 14 B) 12 C) 8 D) 6 (7) 有以下程序 void f(int aint iint j) int t; if(ij) t=ai; ai=aj;aj=t; f(ai+1j-1); main( ) int iaa5=12345; f(aa04); for(i=0;i5;i+) printf(%daai); printf(n); 执行后输出结果是 A) 54321 B) 52341 C) 12345 D) 12345 (8) 有以下程序 void fun(int *aint iint j) int

6、t; if(ij) t=ai;ai=aj;aj=t; fun(a+i-j); main() int a=123456i; fun(a05) for(i=0;i6;i+) printf(%dai); 执行后的输出结果是 A) 6 5 4 3 2 1 B) 4 3 2 1 5 6 C) 4 5 6 1 2 3 D) 1 2 3 4 5 6 (9) 有以下程序 int f(int n) if (n=1) return 1; else return f(n-1)+1; main() int ij=0; for(i=i;i3;i+) j+=f(i); printf(%dnj); 程序运行后的输出结果是

7、A) 4 B) 3 C) 2 D) 1 *(10) 有以下程序 #include main(int argcchar *argv) int ilen=0; for(i=1;iargc;i+) len+=strlen(argvi); printf(%dnlen); 程序编译连接后生成的可执行文件是ex1.exe若运行时输入带参数的命令行是: ex1 abcd efg 10 则运行的结果是: A) 22 B) 17 C) 12 D) 9 (11) 有以下程序 int fa(int x) return x*x; int fb(int x) return x*x*x; int f(int (*f1)(

8、)int (*f2)()int x) return f2(x)-f1(x); main() int i; i=f(fafb2); printf(%dni); 程序运行后的输出结果是 A) -4 B) 1 C) 4 D) 8 *(12) 不合法的main函数命令行参数表示形式是 A) main(int achar *c) B) main(int arcchar *arv) C) main(int argcchar *argv) D) main(int argvchar *argc) *(13) 假定以下程序经编译和连接后生成可执行文件PROG.EXE如果在此可执行文件所在目录的DOS提示符下键入

9、: PROG ABCDEFGH IJKL则输出结果为 A) ABCDEFG B) IJHL C) ABCDEFGHIJKL D) IJKLABCDEFGH main( int argc char *argv) while(-argc0) printf(%sargvargc); printf(n); (14) 以下程序的输出结果是 A) 1 B) 2 C) 3 D) 4 long fun( int n) long s; if(n= =1 | n= =2) s=2; else s=n-fun(n-1); return s; main() printf(%ldn fun(3); (15) 有如下程序

10、 long fib(int n) if(n2) return(fib(n-1)+fib(n-2); else return(2); main0 printf(%dnfib(3); 该程序的输出结果是 A 2 B 4 C 6 D 8 (16) 若有以下说明和定义 fun(int *c) main() int (*a)()=fun*b()w10c; 在必要的赋值之后对fun函数的正确调用语句是 A a=a(w); B (*a)(&c); C b=*b(w); D fun (b); (17) 下列程序执行后的输出结果是 A hello B hel C hlo D hlm void func1(int i); void func2(int i); char st=hellofriend!; void func1(int i) printf(%csti);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号