选择题
11.1 以下叙述不正确的是
A) C程序的main函数可以没有参数。
B) C程序的main函数可以有参数。
C) C程序的main函数若有参数时,第一个参数的值最少是1。
D) main函数的第一个参数必须是整型,其名字必须是argv,第二个参数可以定义成:char
*argv[],名字必须是argv。
答案:D
11.2 若有以下定义和说明,则对fun函数的正确调用语句是
A) a=fun; a(w); B) a=fun; (*a)(&c);
C) b=fun; *b(w);D) fun(b);
main()
{ int (*a)(int *),*b(),w[10],c;
.
.
.
}
fun(int *c) { ... }
答案:B
11.3 以下叙述正确的是
A) C程序中各函数之间既允许直接递归调用也允许间接递归调用
B) C程序中各函数之间不允许直接递归调用也不允许间接递归调用
C) C程序中各函数之间允许直接递归调用不允许间接递归调用
D) C程序中各函数之间不允许直接递归调用允许间接递归调用
答案:A
11.4 以下程序的输出结果是
A) 8 B) 30 C) 16 D) 2
long fib(int n)
{ if(n>2) return (fib(n-1)+fib(n-2));
else return (2);
}
main()
{ printf("%ld\\n",fib(6)); }
答案:C
填空题
11.5 假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在DOS提示符下键入
PROG ABCD EFGH IJKL (此处代表Enter键)
则输出结果为_____。
main(int argc, char *argv[])
{ while(--argc>0) printf("%s",argv[argc]);
printf("\\n");
}
答案:IJKLEFGHABCD