【学历类职业资格】高级语言程序设计-1及答案解析.doc
《【学历类职业资格】高级语言程序设计-1及答案解析.doc》由会员分享,可在线阅读,更多相关《【学历类职业资格】高级语言程序设计-1及答案解析.doc(9页珍藏版)》请在麦多课文档分享上搜索。
1、高级语言程序设计-1 及答案解析(总分:100.00,做题时间:90 分钟)一、B单项选择题/B(总题数:15,分数:30.00)1.下列不属于面向机器语言的是( )(分数:2.00)A.符号语言B.二进制语言C.汇编语言D.C 语言2.执行下列程序段后,*p 的值是( ) char *p=“asdf“; printf(“%c“,*(p+strlen(p);(分数:2.00)A.语句错误B.sC.dD.a3.设 char str100;int I=5;,则引用数组元素的错误形式的是( )(分数:2.00)A.strI+10B.*(srr+C.(str+I-1)D.*(str+)+4.通常适用于
2、从被调用函数中将一个值传回主调函数的参数传递方式是( )(分数:2.00)A.利用返回值数据传递方式B.利用形参与实参传递数据的方式C.利用全局变量传递数据的方式D.以上都不对5.设 a=5,b=3;,执行语句“printf(“%d,%d,(a,b),(b,a);“输出是( )(分数:2.00)A.5,3B.3,5C.5,5D.3,36.下列关于函数的说法不正确的是( )(分数:2.00)A.函数是一个可反复使用的程序段B.main()函数也可以做被调函数C.函数参数的输入和输出统称为“函数问数据的传递“D.从定义的角度来分,可分为用户函数和系统函数两类7.字符串“2008 Olympic“在
3、存储单元中所占用的字节数是( )(分数:2.00)A.9B.10C.11D.138.当执行以下程序段时( ) doy-;while(-y) printf(“%d/n“,y-);(分数:2.00)A.循环体将执行一次B.循环体将执行两次C.循环体将执行无限次D.系统将提示有语法错误9.设 int b=2;表达式(b2)/(b1)的值是( )(分数:2.00)A.2B.4C.6D.810.设置变量定义为:int a=0x53;int b=6;,求表达式ab 的值(假定现有计算机字长为 16)( )(分数:2.00)A.82B.-82C.72D.-7211.为了判定两个字符串是否相等应当使用( )(
4、分数:2.00)A.if(s1=s2)B.if(s1=s2)C.if(strcmp(s1,s2)=0)D.if(strcmp(s1,s2)=0)12.设 char c5=a,b,/0,C,/0);则 printf(“%s“,c);的输出是( )(分数:2.00)A.abB.abC.abcD.“ab/0c“13.下列关于文件随机定位函数 fseek()的描述正确的是( )(分数:2.00)A.若定位正确返回非零值B.包含在头文件 stdlih 中C.本函数只能用于二进制文件D.本函数可以使用文件内部指针直接指向需要的某个数据14.以下程序的运行结果是( ) #includestdioh main
5、() int a=1,2,3,4,5,6,7,8,9,10,11,12; int *p=a5,*q=NULL; printf(“%d%d/n“,*p,*q);(分数:2.00)A.运行后报错B.6 0C.6 12D.5 515.下列表达式的值为 0 的是( )(分数:2.00)A.3%5B.3*5C.3/5.0D.35二、B填空题/B(总题数:10,分数:20.00)16.有以下程序 #includestdioh main() char s=“159“,*P; p=s; printf(“%C“,*p+); printf(“%C“,*p+); 程序运行后的输出结果是_。(分数:2.00)填空项
6、1:_17.以下程序运行时若从键盘输入:10 20 30回车,输出结果是_。 #includestdioh main() int i=0,j=0,k=0; scanf(“%d%*d%d“,i,j,k); printf(“%d%d%d/n“,i,j,k); (分数:2.00)填空项 1:_18.有如下程序 #includestdioh int rune(int a,int b) return(a+b);) main() int x=2,y=5,z=8,r; r=rune(rune(x,y),z); printf(“%dkn“,r); 该程序的输出结果是_。(分数:2.00)填空项 1:_19.表
7、示整数 X 的绝对值大于 5 时值为“真“的 C 语言表达式是: 1。(分数:2.00)填空项 1:_20.用来定义寄存器类型变量的 C 语言保留字是 1。(分数:2.00)填空项 1:_21.分别用十进制表示整形常量-0xlf 为 1。(分数:2.00)填空项 1:_22.在 Turbo C 中语言源程序的扩展名为 1。(分数:2.00)填空项 1:_23.在函数调用过程中,如果形参是指针变量,则实参必须是 1。(分数:2.00)填空项 1:_24.判断一个字符是否是英文字母的函数是 1。(分数:2.00)填空项 1:_25.读字符串函数是 1。(分数:2.00)填空项 1:_三、B程序分析
8、题/B(总题数:4,分数:16.00)26.#includestdioh void fun(int m,int n,int ar4,int*bar) int i,j,x; for(i=0;i3;i+) x=ari0; for(j=0;j3;j+) bari=X; main() int a34=12,41,36,28,19,33,15,27,3,27,19,1),b3,i; fun(3,4,a,b); for(i=0;i3;i+)printf(“%4d“,bi); printf(“/n“); (分数:4.00)_27.#includestdioh void swap(int x,int y) i
9、nt t; t=x;x=y;y=t; printf(“%d%d“,x,y); main() int a=3,b=4; swap(a,b); printf(“%d%d/n“,a,b); (分数:4.00)_28.#includestdioh main() char *a=“12134211“; int v1=0,v2=0,v3=0,v4=0,k; for(k=0;k=strlen(a);k+) switch(*a+) default:v4+; case1:v1+; case3:v3+; case2:v2+;) printf(“v1=%d,v2=%d,v3=%d,v4=%d/n“,v1,v2,v3
10、,v4);(分数:4.00)_29.#includestdioh int fun(int h) static int a3=1,2,3); int k; for(k=0;k3;k+)ak+=ak-h; for(k=1;k3;k+)printf(“%d/t“,ak); return(ah); main() int t=1;fun(fun(t);(分数:4.00)_四、B程序填充题/B(总题数:3,分数:18.00)30.以下程序求 a 数组中的所有素数的和,函数 isprime 用来判断自变量是否为素数。素数是只能被 1 和本身整除且大于 1 的自然数。 #includestdioh int i
11、sprime(int x) int i,r=1; for(i=2;i=x/2;i+) if(x%i=0)r=0;break;) _;/*第一空*/ main() int i,a10,sum=0; printf(“Enter 10 nums:/n“); for(i=0;i10;i+) scanf(“%d“,ai); for(i=0;i10;i+) if(_)/*第二空*/(printf(“%d“,ai); _;/*第三空*/ printf(“/nThe sum=%d/n“,sum); (分数:6.00)填空项 1:_31.下面程序的功能是调用函数 fun 计算:m=1-2+3-4+9-10,并输
12、出结果。 #includestdioh int fun(int n) intm=0,f=1,i; for(_;i-n;i+)/*第一空*/ m+=i*f; f=_;/*第二空*/ return m; main() printf(“m=%d/n“,_);)/*第三空*/(分数:6.00)填空项 1:_32.下面程序的功能是:先从键盘上输入一个 3 行 3 列矩阵的各个元素的值,然后输出主对角线之和。 #includestdioh main() int a33,sum; int i,j; _;/*第一空*/ for(i=0;i3;i+) for(_)/*第二空*/ scanf(“%d“,aij);
13、 for(i=0;i3;i+) sum=_;/*第三空*/ printf(“sum=%d/n“,sum); (分数:6.00)填空项 1:_五、B程序设计题/B(总题数:2,分数:16.00)33.编程要求输出两个字符串对应位置相等的字符,并输出其位置号(自然编号)。(分数:8.00)_34.建立一个磁盘文件,文件名由键盘输入,文件内容也由键盘输入。文件内容的输入以“*“作为输入结束标志。(分数:8.00)_高级语言程序设计-1 答案解析(总分:100.00,做题时间:90 分钟)一、B单项选择题/B(总题数:15,分数:30.00)1.下列不属于面向机器语言的是( )(分数:2.00)A.符
14、号语言B.二进制语言C.汇编语言D.C 语言 解析:2.执行下列程序段后,*p 的值是( ) char *p=“asdf“; printf(“%c“,*(p+strlen(p);(分数:2.00)A.语句错误B.sC.dD.a 解析:解析 指针变量 P 在得到初值“asdf“之后没有初改变过,P 就是字符串“asdf“的首地址故*P 的值为 a。3.设 char str100;int I=5;,则引用数组元素的错误形式的是( )(分数:2.00)A.strI+10B.*(srr+C.(str+I-1)D.*(str+)+ 解析:4.通常适用于从被调用函数中将一个值传回主调函数的参数传递方式是(
15、 )(分数:2.00)A.利用返回值数据传递方式 B.利用形参与实参传递数据的方式C.利用全局变量传递数据的方式D.以上都不对解析:5.设 a=5,b=3;,执行语句“printf(“%d,%d,(a,b),(b,a);“输出是( )(分数:2.00)A.5,3B.3,5 C.5,5D.3,3解析:6.下列关于函数的说法不正确的是( )(分数:2.00)A.函数是一个可反复使用的程序段B.main()函数也可以做被调函数 C.函数参数的输入和输出统称为“函数问数据的传递“D.从定义的角度来分,可分为用户函数和系统函数两类解析:7.字符串“2008 Olympic“在存储单元中所占用的字节数是(
16、 )(分数:2.00)A.9B.10C.11D.13 解析:8.当执行以下程序段时( ) doy-;while(-y) printf(“%d/n“,y-);(分数:2.00)A.循环体将执行一次B.循环体将执行两次C.循环体将执行无限次 D.系统将提示有语法错误解析:解析 变量 y 无初值,系统默认非空。循环将无限次地被执行下去。9.设 int b=2;表达式(b2)/(b1)的值是( )(分数:2.00)A.2B.4C.6D.8 解析:解析 左移位运算移一位相当于乘 2,右移位运算右移一位相当于除 2。10.设置变量定义为:int a=0x53;int b=6;,求表达式ab 的值(假定现有
17、计算机字长为 16)( )(分数:2.00)A.82B.-82 C.72D.-72解析:解析 因计算机字长为 16故 a 的二制表示是 0000000001010011,b 的二进制表示是0000000000000110。 运算符“自右向左结合,运算符“是自左向右结合;且运算符“的优先级高于运算符“的优先级,则进行计算的顺序是“(a)b“。最终计算结果是 1111111101010010(十进制值为-82)。11.为了判定两个字符串是否相等应当使用( )(分数:2.00)A.if(s1=s2)B.if(s1=s2)C.if(strcmp(s1,s2)=0) D.if(strcmp(s1,s2)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学历 职业资格 高级 语言程序设计 答案 解析 DOC
