河海大学C语言期末试题A
- 格式:pdf
- 大小:160.12 KB
- 文档页数:12
专业班级:学号:姓名:
一、选择题(用铅笔把选中的方格涂黑40×1=40分)
1A B C D2A B C D3A B C D4A B C D 5A B C D6A B C D7A B C D8A B C D 9A B C D10A B C D11A B C D12A B C D 13A B C D14A B C D15A B C D16A B C D 17A B C D18A B C D19A B C D20A B C D 21A B C D22A B C D23A B C D24A B C D 25A B C D26A B C D27A B C D28A B C D 29A B C D30A B C D31A B C D32A B C D 33A B C D34A B C D35A B C D36A B C D 37A B C D38A B C D39A B C D40A B C D
二、填空题(25×2=50分)
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
三、编程题(10分)
求10个数的最大公约数和最小公倍数(定义两个函数,求两个数的最大公约数和两个数的最小公倍数)
一、选择题 ( 40×1分=40分)
1.以下叙述中正确的是 (1)D 。
A .在编译时可以发现注释中的拼写错误
B .
C 语言程序的每一行只能写一条语句C .main( ){}必须位于程序的开始
D .C 语言程序可以由一个或多个函数组成
2.以下选项中不能用作变量名的是 (2)B 。
A ._float
B .switch
C .sum
D ._123 3.已知sizeof(int)的值为2,为将10!的值存储到变量f 中(10!=3628800),变量f 的类
型应声明为
(3)A 。
A .long int
B .int
C .short int
D .unsigned
int
4. 以下表示中,不能用作C 语言常量的是 (4)B 。
A. 0UL
B. (long)123
C. 1e0
D.‘\x2a’
5.数学式
在C 程序中正确的表示形式为 (5)B 。 b
a
2A .sqrt(a)/2*b B .sqrt(a)/2/b C .sqrt(a)/2b D .sqrt a/(2*b) 6.已知有程序段“char str[][10]={"Aoyun","Beijing"},*p=&str[0][0];
printf("%s\n",p+10);”,则执行printf 语句后输出为 (6) A 。A .Beijing B .Aoyun C .ing D .ng 7.以下声明中错误的是 (7)C 。
A .int a[2];
B .int a[]={0,1};
C .int a[3]=0;
D .int a[3][4]
={0};
8.以下表示数学式“a
A. a
B. a
C. !(a>=b)&&!(b>=c)
D. !(a>=b||b>=c)9.已有声明“int a=3,b=3,c=2;”,以下选项中值为0的表达式是 (9)A 。 A. !a&&!b&&c B. !a||!b||c C. a==b&&b>=c D. a>=b&&b>c 10.若有声明“char ss[8]="Red";”,则sizeof(ss)的值是 (10)A 。
A .8
B .4
C .3
D .111. 以下程序运行后的输出结果是 (11)B 。
A. 2 2
B. 7 2
C. 7 5
D. 6 2main()
{ char a[7]="a0\0a0\0"; int i,j; i=sizeof(a); j=strlen(a); printf("%d %d",i,j); }
12. 下面关于循环语句for 、while 、do_while 的叙述中,正确的是 (12)D 。
A.三种循环语句的循环体都必须放入一对花括号中
B.三种循环语句中都可以缺省循环终止条件表达式
C.三种循环语句的循环体都至少被无条件地执行一次
D.三种循环语句都可能出现无穷循环
13. 若有声明“int a[]={1,2,3,4},*p,i;”,则以下程序段中不能输出13的是(13)B
。
A.for(i=0;i<4;i+=2) printf("%d",a[i]);
B.for(p=0;p<4;p+=2) printf("%d",a[p]);