DLUT计算机二级模拟考试试习题三_第1页
DLUT计算机二级模拟考试试习题三_第2页
DLUT计算机二级模拟考试试习题三_第3页
DLUT计算机二级模拟考试试习题三_第4页
DLUT计算机二级模拟考试试习题三_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、DLUT计算机校二级模拟考试试题三一判断题1. 在C程序中,注释说明只能位于一条语句的后面 2. 当函数的类型与return语句后表达式的值的类型不一致时,函数返回值的类型由return语句后表达式值的类型决定。3. dowhile循环由do开始,while结束,在while(表达式)后面不能加分号。4. 定义 int x5,n;则x=x+n;或x+;都是正确的。5. 逻辑表达式4>2&&1|5<3-!0的值为1。6. for循环的三个表达式中间用逗号相分隔。分号7. 若有定义 int a10;则 for (i=0;i<=10;i+) ai=i;执行时无语法错

2、误。8. 格式字符%e以指数形式输出实数数字部分小数位数7位。 9. 二维数组在内存中存贮时,是按下标值递增且右侧的下标比左侧的下标变化快的顺序连续存贮各元素的值。10. C语言中,在打开文件时,必须说明文件的使用方式,"r"用于打开一个不存在的文件。二.选择题1. 在C程序中,字符型数据在内存中以_形式存放。A原码 BBCD码 C.反码 D.ASC2. 对于语句 f=(3.0,4.0,5.0), (2.0,1.0,0.0); 的判断中,_是正确的。A语法错误 B.使 f的值为5.0 C. 使 f的值为0.0 D. 使 f的值为2.0 3. 能正确表示a和b同时为正或同时为

3、负的逻辑表达式是:( )A.(a>=0|b>=0)&&(a<0|b<0) B. (a>=0&&b>=0)&&(a<0&&b<0) C.(a+b>0)&&(a+b<=0) D. a*b>04. 下面函数的功能是:_sss(s,t)char *s, *t; while(*s)&&(*t)&&(*t+= =*s+); return(*s-*t); A. 求字符串的长度B:比较两个字符串的大小C:将字符串s复制到字符串t中 D

4、:将字符串s续接到字符串t中 5. 函数char ctype(int x, int y)的返回类型由_确定。 A字符型 Breturn语句返回的表达式类型C. 浮点型 D.调用时的实参类型6.设有如下程序段: int k=10; while(k=0) k- -;则下述说明中正确的是:A循环体执行一次B循环体执行10次C. 循环体一次也不执行D. 死循环7.以下程序的输出结果是 _ 。 main( ) char str ="ABCD",*p=str; printf("%dn",*(p+4);A68 B0 C.字符D的地址 D.不确定的值8. 以下程序的输出

5、结果是_ 。 main( ) int a =2,4,6,8,*p=a,i; for(i=0;i<4;i+) ai =*p+; printf("%dn",a2);A6 B8 C. 4 D.29. 根据下面的程序, 正确的输出形式是_。main() float x=68.7563, y=-789.124; printf ("%e,%10.2en", x,y);A6.875630e+001,-7.89e+002 B6.87563e+001,-7.89124e+002 C. 0.687563e+002,-7.89124e+002 D. 6.87563e+0

6、02,-7.89124e+00210. 下面的scanf函数输入数据,使得i=10, j=15,c1='S',c2='s',x=1.5,y=-3.75,z=67.8, 选择正确的键盘输入方法_。(规定用字符串CR表示回车,U表示空格)main() int i,j; float x,y,z; char c1,c2; scanf("%5d%5d%c%c%f%f%*f%f",&i,&j,&c1,&c2,&x,&y,&z);A10UUU15Ss1.5 -3.75U+1.5,67.8CR BUUU

7、10UUU15Ss1.5 -3.75U+1.5U67.8CR C.10UU15USUsU1.5 -3.75U+1.5 67.8CR D.UUU10UUU15USUsU1.5 67.8CR11. 下列运算符优先级最低的是: ( )A< B| C. + D.!12. 下面程序的功能是输入数组元素,0或负数则重新输入。请在A处填写正确语句。#include "stdio.h"main() int data10,i; for(i=1;i<10;i+) printf("ndata%d=",i); scanf("%d",&da

8、tai); if(datai<=0) _A_ Ai-; continue; B. i-; break; C. continue D.break13. 程序的输出结果应该是_。 #include <stdio.h> void fun(float *p1, float *p2, float *s) s=(float *)malloc(1,sizeof(float); *s=*p1+*(p2+); main() float a2=1.1,2.2,b2=10.0,20.0,*s=a; fun(a,b,s); printf("%fn",*s); 注:malloc(s

9、ize)分配size字节的存储空间A11.100000 B12.100000 C. 21.100000 D. 1.10000014. 有两个实型变量dog和cat,若要把数据写入磁盘文件中,以下正确的形式是: Afprintf(dog,cat); Bfprintf(dog,cat,”%f%f”); C. fprintf(dog,cat,”%f%f”,fp); D. fprintf(fp,”%f%f”,dog,cat);15. 函数scmp(char *s,char *t)用来比较字符串s和t的大小,当s=t时,返回0,当s!=t时,返回s和t的第一个不同的字符的ASCII码值,_是正确的字符串

10、比较函数。A: int scmp(char *s,char *t)for(; *s+=*t+;) if(*s='0') return 0; return *s-*t; B: int scmp(char *s,char *t)for(; *s+=*t+;) if(!*s) return 0; return *s-*t; C: int scmp(char *s,char *t)for(; *s+=*t+;); if(*s=0) return 0; return *s-*t; D: int scmp(char *s,char *t)for(; *s=*t;s+,t+) if(!*s)

11、 return 0; return *s-*t;三.完善程序题1. 将file_point定义为文件指针的语句为_A_。写出应包含的头文件语句_B_。2. 下面程序的功能是按由小到大的顺序输出两个数,完善该程序。main() int a,b,*pa,*pb,*pt; scanf("%d%d",_A_); pa=&a,pb=&b; if(a>b)pt=pa;pa=pb;pb=pt; printf ("%d,%d",_B_);3. 下列程序输出三个数中的最大数,完善该程序。main() int a,b,c; a=2;b=3;c=1; i

12、f(a<b) if(b_A_c) printf("%dn",c); _B_ printf("%d",b); else if(a > c) printf("%dn",a); else printf("%d",c); 4. 打印100200间(包括100和200)所有个位数是5且能被3整除的数字。#include "stdio.h"main() int i; for(i=100;_A_;i+) if(i%3!=0|_B_) continue; else printf("n%5d

13、",i);5. 下述的程序调用getone函数开辟一个动态存储单元,调用assone函数把数据输入到此动态存储单元中,outone函数输出此动态存储单元中的值,请完善程序。#include <stdio.h>getone(int *s) *s=(int *)malloc(sizeof(int); assone(int *a) scanf("%d",_A_); outone(int *b) printf("%dn",_B_); main() int *p; getone(&p); assone(p); outone(p);四阅

14、读程序题.1. 若下列程序运行时输入124,则其输出结果为_。main() int x,k; /* scanf("%d", &x);*/ x=124; printf("x=%d=",x); do k=f(x); if(x=k) printf("%d",k); break; else printf("%d*",k); x/=k; while (1); int f(int x) int i; for(i=2;i<x;i+) if(x%i=0) break; return i; 2. 写出下面程序的运行结果

15、。main() int i=5; printf("n"); do switch(i%2) case 0:i-;break; case 1:i-;continue; i-; printf("%d ",i); while(i>0);3. 阅读本程序并写出程序的运行结果: #include "stdio.h" main() char b ="ABCDEFG",*chp=&b7; while(-chp>&b0) putchar(*chp); putchar('n'); 4. 阅读

16、本程序并写出运行结果:main() struct student int num; int age; ; struct student stu3=1001,16,1002,19,1003,17; struct student *p; p=stu; printf("%dn",(*p+).age);5. 阅读本程序并写出程序的运行结果:(输入字符中大写字母U代表空格) main() char str8;int I; scanf("%s",str); printf("%s",str); 输入: TUC(代表回车符)五.程序改错题1. #in

17、clude <stdio.h>char *fun2(char s1, char s2) char *p=s1,k; for(k=0; *s1&&*s2; s1+, s2+, k+) if(k%2) char t=*s1; *s1=*s2; *s2=t; return p; void main( ) char s10=example; puts(fun2(s, "only"); 2. 改正以下程序的函数体中不正确的语句。main()int,student,a,b;char c;double x=1.42;x=x%(-3);c='a'

18、student=30;a+=a-=(b=4)*(a=3);六程序编写题 /*请编写函数change(array). */*功能:将array矩阵转置 */*注意:请勿修改change函数和其它函数中的任何内容, */* 仅在答题区中填入你编写的语句. */#include "stdio.h"#include "string.h"#include "conio.h"FILE *fp;change(array)int array4;/* 答题区开始 */* 答题区结束 */main() int array44=1,2,3,8,7,6,2,4,3,1,4,3,2,3,

温馨提示

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

评论

0/150

提交评论