(含答案)程序设计基础与语言_复习提纲
一、选择题
1.以下叙述中错误的是( A )。
A.使用三种基本结构构成的程序只能解决简单问题 (P28)
B.结构化程序由顺序、分支、循环三种基本结构组成(P26)
C.C语言是一种结构化程序设计语言
D.结构化程序设计提倡模块化的设计方法(P34)
2.以下叙述正确的是( A )。
A.C语言函数可以嵌套调用,例如:fun(fun(x))
B.C语言程序是由过程和函数组成的(P10 C语言程序是由函数组成的)
C.C语言函数不可以单独编译
D.C语言中除了main函数,其他函数不可作为单独文件形式存在
3.有以下程序
#include
main()
{ int a=0, b=0;
/* 给a赋值 a=10;
b=20; 给b赋值 */
printf("a+b=%d\n",a+b); /* 输出计算结果 */
}
程序运行后的输出结果是( B )。
A.出错B.a+b=0C.a+b=10D.a+b=30
4.以下叙述中正确的是( A )。
A.每个后缀为.C的C语言源程序都可以单独进行编译
B.每个后缀为.C的C语言源程序都应该包含一个main函数(若在一个项目中,后缀为.C的C语言源可以不包含main)
C.在C语言程序中,main函数必须放在其他函数的最前面
D.在C语言程序中,只有main函数才可单独进行编译
5.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是( D )。
A.大写字母B.下划线C.数字字符D.连接符
6.以下选项中能表示合法常量的是( D )。(p39)
A.1,200B.1.5E2.0C.0118D."\007"
7.有以下程序
#include
main()
{
int sum, pad, pAd;
sum = pad = 4;
pAd = ++sum, pAd++, ++pad;
printf("%d\n", pad );
}
程序的输出结果是( B )。
A.4B.5C.6
8.有以下程序
#include
main()
{ int a;
a = (int)(-1.65*3);
printf("%d\n", a);
}
程序的运行结果是( B )。(直接取整数部分)
A.-3B.-4
9.关于"while(条件表达式)循环体",以下叙述正确的是( B )。
A.循环体的执行次数总是比条件表达式的执行次数多一次
B.条件表达式的执行次数总是比循环体的执行次数多一次
C.条件表达式的执行次数与循环体的执行次数一样
D.条件表达式的执行次数与循环体的执行次数无关
10.若有定义语句:int year=2009, *p=&year ;以下不能使变量year中的值增至2010的语句是( B )。
A.(*p)++;B.*p++;C.++(*p);D. *p+=1;
11.有以下程序
#include
int fun( int a, int b)
{ return a+b; }
main()
{ int x=6, y=7, z=8, r ;
r = fun ( fun(x,y), z-- );
printf (" %d\n" , r );
}
程序运行后的输出结果是( A )。
A. 21B. 15C. 20D. 31
12.在以下给出的表达式中,与while(E)中的(E)不等价的表达式是( B )。
A. (E>0||E<0)B. (E==0)C. (! E==0)D. (E!=0)
13. 由以下while构成的循环,循环体执行的次数是( D )。
int k=1;
while ( k=2 ) k++;//请注意:若改为while ( k==2 ),则如何?(B)
A. 有语法错,不能执行B. 一次也不执行
C. 执行一次D. 无限次
14. 若有以下定义
int x[10], *pt=x;
则对x数组元素的正确引用是( D )。(p236)
A. pt+3B. *&x[10]C. *(pt+10)D. *(x+3)
15. 有以下程序
#include