《高级语言程序设计》期中测试题(答案)_第1页
《高级语言程序设计》期中测试题(答案)_第2页
《高级语言程序设计》期中测试题(答案)_第3页
《高级语言程序设计》期中测试题(答案)_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、高级语言程序设计期中测试题(答案)一、选择题(共20题)(1) 下列标识符中,合法的是 D 。A) unsignedB) 5abC) INT#D) _num2(2) 下面错误的初始化语句是 D 。A. char str = hello;B. char str100 = hello;C. char str = h,e,l,l,o;D. char str = hello;(3) 用C语言编写的代码程序 B 。A. 可立即执行B. 是一个源程序C. 经过编译即可执行D. 经过编译解释才能执行 (4) 有定义语句:int b; char c10;,则正确的输入语句是 B 。A. scanf(%d%s,

2、 &b, &c);B. scanf(%d%s, &b, c);C. scanf(%d%s, b, c);D. scanf(%d%s, b, &c);(5) 以下关于switch语句和break语句的描述正确的是 D 。A. switch语句中必须使用break语句B. break语句只能用于switch语句体C. break语句只能用于循环语句D. switch语句中可以使用break语句(6) C语言中运算对象必须是整型的运算符是 A 。A. %=B. /C. =D. =(7) 假定a和b为int型变量,则执行以下语句后b的值为 D 。a=1; b=10; dob -= a;a+; whil

3、e(b- 0);A. 9B. -2C. -1D. 8(8) 若i为整型变量,则以下循环执行次数是 B 。for ( i=2; i = 0; )printf (”%d”, i-);A. 无限次B. 0次C. 1次D. 2次(9) 设有以下程序段,执行后的输出结果是 D 。int main(void)int x = 10;printf(%d,%dn, x, x+);A. 10,11B. 11,10C. 11,11D. 10,10(10) 以下叙述中错误的是 C 。A. 对于double类型数组,不可以直接用数组名对数组进行整体输入或输出B. 数组名代表的是数组所占存储区的首地址,其值不可改变C.

4、当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息D. 可以通过赋初值的方式确定数组元素的个数(11) 执行与句:for(n = 0; n+ 4; );后,变量n的值是 C 。A. 3B. 4C. 5D. 不定(12) 数字字符0的ASCII值为48,若有以下程序:int main(void)char a=1,b=2;printf(%c, b+);printf(%dn, b-a);return 0;程序运行后的输出结果是 C 。A. 3,2B. 50,2C. 2,2D. 2,50(13) 设有如下说明:struct STlong a;int b;char c2

5、;NEW;则下面叙述中正确的是 D 。A. 以上的说明形式非法B. ST是一个结构体变量C. NEW是一个结构体类型D. NEW是一个结构体变量(14) 以下程序运行后的输出结果是 A 。int main(void)int k, n=0,0,0,0,0;for(k = 1; k = 4; k+)nk = nk-1*2 + 1;printf(“%d”, nk);return 0;A. 13715B. 0,0,0,0,0C. D. 以上都不正确(15) 下面程序的运行结果是 C 。int main(void)int a3=1,2,3,4,5,6;printf(%d, a11);return 0;A

6、. 3B. 4C. 5D. 6(16) 设有 int x=11; 则表达式 (x+ * 1/3) 的值是 A 。A. 3B. 4C. 11D. 12(17) 当c的值不为0时,在下列选项中能正确将c的值赋给变量a,b的是 C 。A. c=b=a;B. (a=c)|(b=c)C. (a=c)&(b=c)D. a=c=b;(18) 有如下程序:int x; float y;scanf(x=%d,y=%f, &x, &y);则为了将数据10和66.6分别赋给x和y,正确的输入应当是 A 。A. x=10,y=66.6B. 10,66.6C. 1066.6D. x=10y=66.6(19) 定义:ch

7、ar a=xyz,b=x,y,z;,以下叙述中正确的是 C 。A. a数组长度小于b数组长度B. 数组a和b的长度相同C. a数组长度大于b数组长度D. 上述说法都不对(20) 设有程序段:int t = 0;while(printf(“*”) t+; if(t 3) break;下面描述正确的是 B 。A. 其中循环控制表达式与0等价B. 其中循环控制表达式为非0C. 其中循环控制表达式是不合法的D. 以上说法都不对二、填空完成程序(共10空)(1) 变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。a += b ;b = a b ;a = b;(2) 若a = 10,b

8、 = 9,则表达式 (-a != b+) ? -a : +b的值为 11 。(3) 字符串“abn012”的长度为 9 。(4) 下面程序段将输出computer。char c = Its a computer;for(i = 0; i = 0 & c = 9 ) n+;c = getchar();(6) 下面程序可求出矩阵a的主对角线上的元素之和。int main(void)int a33 = 1,3,5,67,9,11,13,15,17;int sum = 0, i, j;for( i = 0; i 3; i+ )for( j = 0; j 3; j+ )if( i = j )sum =

9、sum + aij ;printf(sum = %dn., sum);return 0;三、编程题(共3题)1编写程序把100400中能被7整除的数输出。#include stdio.hint main(void)int i, j = 0;for(i=100; i=400; i+)if(i%7 = 0) printf(%4d:%4d, +j, i);return 0;2初始化一个55的二维矩阵,计算主对角线上的元素之和。要求输出此矩阵,并输出主对角线之和(提示a00,a11之类的元素为主对角线元素,其数值定义可参考如下)。#include stdio.hint main(void)int a55 = 1,2,3,4,5,2,3,4,5,6,3,4,5,6,7,4,5,6,7,8,5,6,7,8,9;int i, j;int sum = 0;for(i=0; i5; i+)sum = sum + aii;for(i=0;i5;i+)printf(n);for(j=0; j5; j+)printf(%4d, aij);printf(n);printf(sum is %d, sum);return 0;3由键盘输入一个字符串,编程确定字符串长度。(要求不能使用库函数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论