"C语言基础题库:数组定义与传参细节"

版权申诉
0 下载量 64 浏览量 更新于2024-03-01 1 收藏 152KB DOCX 举报
数通产品线 C 语言编程基础题库 001 本题目为考前说明:本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C语言的标准函数都可用。假定程序运行环境为操作系统Windows 2000,VC6.0编译环境,X86(80586)CPU处理器(32位小字节序处理器)。 一、选择题目: 1.给出以下定义: char acX[] = "abcdefg"; char acY[] = {'a','b','c','d','e','f','g'}; 则正确的叙述为: A) 数组acX和数组acY等价 B) 数组acX的长度大于数组acY的长度 C) 数组acX的长度小于数组acY的长度 D) 数组acX的长度和数组acY的长度相同 答案为:C 2.void example(char acHello[]){ printf("%d", sizeof(acHello)); return; } void main(){ char acHello[] = "hello"; example(acHello); return; } 以上代码的输出是: A) 4 B) 5 C) 6 D) 7 答案为:A 二、判断题: 1.下列哪个语句是非法的? A) char *pc; B) char *pc = "Hello"; C) char *pc = 'c'; D) char c = 'A'; 答案为:C 2.以下代码的输出是多少? int i = 5, j = 4; int result = (i++) * (--j); printf("%d", result); A) 20 B) 24 C) 18 D) 16 答案为:C 三、填空题: 1.如果定义了一个二维数组int arr[3][4],那么arr[2][3]的元素在内存中的地址为:________ 答案为:&arr[2][3] 2.以下代码的输出是什么? char str[] = "Hello"; printf("%s", str); A) Hello B) H C) Hello\0 D) Hel 答案为:A 四、编程题: 1.编写一个程序,计算斐波那契数列的第n项并输出,要求使用递归实现。 答案如下: #include<stdio.h> int fibonacci(int n){ if(n <= 1){ return n; }else{ return fibonacci(n-1) + fibonacci(n-2); } } int main(){ int n; printf("请输入n的值:"); scanf("%d", &n); printf("第%d项斐波那契数为:%d", n, fibonacci(n)); return 0; } 以上就是题目内容的总结,讲解了选择题、判断题、填空题和编程题的内容。希术能够对C语言编程基础有一个更深入的理解。