201203学期《C语言程序设计》复习纲要A
   
一、单选题
1. 一个C语言程序是由(  )。
A.一个主程序和若干子程序组成            B.若干函数组成   
C.若干过程组成                          D.若干子程序组成
2. 常数的书写格式决定了常数的类型和值,0x1011是(  )。
A.8进制整型常量                        B.字符常量
C.16进制整型常数                      D.2进制整型常数
3. 以下叙述正确的是(  )。
    A.C程序中,main函数必须位于程序的最前面
    B.C程序的每行中只能写一条语句
    C.结构化程序由顺序、选择和循环等三种基本结构组成
    D.在对一个C程序进行编译的过程中,可发现注视中的拼写错误
4. 设有
static char str[ ]="Beijing";
则执行
printf("%d\n", strlen(strcpy(str,"China")));
后的输出结果为(  )。
A.5                                    B.7
C.12                                  D.14
5. C语言中,intcharshort三种类型数据所占用的内存是(  )。
A.均为2个字节                        B.由用户自己定义
C.由所用机器的机器字长决定的          D.是任意的
6. 下面函数的功能是(  )。
int funl(char * x)
{ char * y=x;
while(*y++);
return(y-x-1);}
A.求字符串的长度                      B.比较两个字符串的大小
C.将字符串x复制到字符串y                D.将字符串x连接到字符串y后面
7. 有以下程序
int fun(int x,int y,int *cp,int *dp)
{*cp=xy;*dp=x--y;}
main()
{
int a,b,c,d;
a=30;b=50;
fun(a,b,&c,&d);
printf("%d,%d\n",c,d);
}
输出结果是(  )。
A.50,30        B.30,50 
C.80,-20      D.80,20
8. 下面有关for循环的正确描述是(  )。
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断表达式
C.for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来
9. 若函数a调用b,函数b又调用c,则它们的执行顺序是(  )。
A.abc                                  B.cba
C.acb                                  D.bca
10. C语言中规定,函数返回值的类型是由(  )。
    A.return语句中的表达式类型所决定
    B.调用该函数时的主调函数类型所决定
    C.调用该函数时系统临时决定
    D.在定义该函数时所指定的函数类型所决定
二、多选题
1. 下列正确使用变量赋初值的是(  )。
A.int a=3;                            B.float f=3.56;
C.char c= 'a';                        D.int a=b=3;
2. if语句有哪三种形式?( 
A.if(表达式)语句;
B.if(表达式)语句1else 语句 2;
C.if(表达式)语句1 语句2;
D.if(表达式1)语句1  if(表达式2)语句2 if(表达式3)语句3;
3. 以下说法中不正确的是(  )。
A.函数标示符指定函数带回值得类型
B.主函数和被调函数之间没有数据传递关系
C.实参可以是常量、变量或表达式
D.在被定义的函数中不用指定参数类型
4. 下列哪些可称为函数的递归调用?( 
A.函数对自身的直接调用                    B.函数对自身的间接调用
C.函数对别的函数的调用                D.函数被主函数调用
5. 下列哪些可称为函数的嵌套调用?( 
A.函数对自身的直接调用    B.函数对自身的间接调用
C.函数对别的函数的调用    D.函数被主函数调用
6. 如果想在函数中改变实参数组的元素值,则(  )。
A.形参实参都用数组名                  B.实参用数组名,形参用指针变量
C.实参用指针变量,形参用数组名        D.形参和实参都用指针变量
7. 设有如下定义:
char *aa [2]={"abcd","ABCD"};
则以下句法中错误的是(  )。
A.aa数组成元素的值分别"abcd"ABCD"
B.aa是指针变量,它指向含有两个数组元素的字符型一维数组
C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
D.aa数组的两个元素中各自存放了字符‘编程语言有哪几种类a’和‘A’的地址
三、填空题
1. C语言是在__________的基础上发展起来的。
2. 十进制数112.375转换成十六进制数为__________
3. 指向函数的指针中存放的是函数的__________
4. int *a()返回值为一个整型的__________变量。
5. 结构体用__________关键字定义。
6. 结构体数组的每个元素都是__________型变量。
四、判断题
1. C语言中对文件的读写是用输入输出语句实现的。(                                                                 
2. int a,b,c=5;说明变量abc一直相等。(                                 
3. 自增运算符只能用于变量。(                                               
4. 数组名作函数参数时,采用值传递方式。( 
5. 对字符串中字符的存取可以用下标方法、也可以用指针方法。( 
6. 函数不能通过函数指针调用。( 
7. 在给函数指针变量赋值时,必须给出参数。( 
8. char **p是一个指向指针的指针。( 
9. 函数指针是指函数的入口地址。( 
10. 文件的打开用fopen函数实现。( 
五、简答题
1. C编译程序的功能是什么?
2. #include <stdio. h>
Void fun(char *s)
{
  Char t;
  If (*s!= ‘\0’)
          {t=*s++;
            Fun(s);
    If (t!=\0’) printf(%c,t);
}
Main()
{
  Char *a= 1234
  Fun(a);
Pringtf(\n);
}
3. 动态存储区存放什么数据?
4. C语言中常用的文件检测函数有哪些?
5. 整型变量分为哪些类型?
6. 地址指针的基本概念是什么?
7. 要把整型变量a的地址赋予p用什么方法?
8. C语言中,定义了三个函数:
  1 int fl(int p)
        { return p++;}
  2 int f2(int *p)
        { return *(p++);}
  3 int f3(int *p)
        ( return (*p)++;)
201203学期《C语言程序设计》复习纲要A答案
一、单项选择题
题号
1
2
3
4
5
6
7
8
9
10
答案
B
A
C
A
C
C
C
D
C
B
二、多项选择题
题号
1
2
3
4
5
6
7
8
答案
ABC
BCD
AB
BCD
ACD
ABCD
ABCD
ABC
三、填空题
(1)B语言            (2)70.6            (3)入口地址

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