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语言中,int、char和short三种类型数据所占用的内存是( )。
A.均为2个字节 B.由用户自己定义
C.由所用机器的机器字长决定的 D.是任意的
6. 下面函数的功能是( )。
int funl(char * x)
{ char * y=x;
while(*y++);
return(y-x-1);}
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;说明变量a、b、c一直相等。( )
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小时内删除。
发表评论