c语言期末试题及答案
一、选择题
1.下列C语言中的数据类型中,占用字节最小的是:
A. int
B. float
C. char
D. double
答案:C
2.在C语言中,用于执行循环的关键字是:
A. for
B. while
C. do
D. switch
答案:A、B
3.以下哪个运算符可以用于判断两个表达式的值是否相等?
A. ==
B. =
C. !=
D. >
答案:A
4.C语言中表示注释的符号是:
A. //
B. /*
C. #
D. --
答案:B
5.以下关于数组的说法正确的是:
A. 数组的大小是固定的,不能改变
B. 数组中的所有元素的类型必须相同
C. 数组的下标从0开始
D. 数组的索引可以是负数
答案:B、C
二、填空题
1.下面哪个函数用于从标准输入读取一个字符?
  __________
答案:getchar()
2.在C语言中,变量x的地址可以用__________表示。
答案:&x
3.以下代码中,num的值为__________:
```c
int num;
printf("%d", num);
```
答案:未定义,可能是任意值。
三、编程题
1.编写一个C语言程序,实现求斐波那契数列第n个数的功能。其中,斐波那契数列的定义如下:
  F(1) = 1
  F(2) = 1
  F(n) = F(n-1) + F(n-2)
```c
#include <stdio.h>
int fibonacci(int n) {
    if (n == 1 || n == 2) {
        return 1;
    } else {
        return fibonacci(n-1) + fibonacci(n-2);
    }
}
int main() {
    int n;
    printf("请输入n的值:");
c语言斐波那契数列    scanf("%d", &n);
    printf("斐波那契数列的第%d个数是:%d\n", n, fibonacci(n));

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。