2007年4月份带答案_第1页
2007年4月份带答案_第2页
2007年4月份带答案_第3页
2007年4月份带答案_第4页
2007年4月份带答案_第5页
全文预览已结束

下载本文档

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

文档简介

/2007年4月高等教育自学考试全国统一命题考试计算机软件基础(一)试卷第一部分选择题(共40分)一、单项选择题(本大题共40小题,每小题1分,共40分)1。属于C语言基本数据类型的是()A.指针B。数组C.结构D.实型2.已知华氏温度和摄氏温度的关系是C=(F-32),若有说明语句floatC,F;由华氏温度求摄氏温度的正确的赋值表达式是()A.C=5/9(F—32)B。C=5*(F-32)/9C。C=5/9*(F-32)D.C=5。0/(9*(F-32))3.C语言无符号整型变量(unsignedint)的取值范围是()A.-32768至32767B.0至32767C.0至65535D.-65536至655354。C语言中,已知inty;则执行y=4。9+sqrt(4。0)后,y的值是()A。6B.6.9C.7D.8.95。下列十进制数中,能用八位二进制数正确表示的是()A.199B.256C.300D.4006.已知ch是字符型变量,则下列C语言语句中错误的赋值语句是()A.ch=’0';B.ch='a+b';C.ch=7+'9';D。ch=5+9;7.C语言中,已知inta1,a2;charc1,c2;scanf(”%d%c%d%c",&a1,&c1,&a2,&c2);要求a1、a2、c1、c2的值分别为10、20、A、B,正确的输入方式是()(注:□表示空格,↙表示回车A。10A□20B↙B.10□A□20□B↙C.10□A20□B↙D。10A20□B↙8。下面C语言程序段的运行结果是(注:□表示空格)()intx=10,y=20,z=30;printf(”x=%d,y=%d,z=%d",x,y,z);A.10,20,30B.x=10,y=20,z=30C.x=10y=20z=30D。10□20□309.执行下列C语言程序时,若从键盘输入20,d↙(注:↙表示回车)则运行结果是()main(){inta=8,b=5;charc1;scanf("%d,%c",&a,&c1);b=c1++;-—a;printf(”%d,%d”,a,b);}A。8,5B.19,100C。19,101D。20,10110.运行下列C语言程序段,输入a↙/后(注:↙表示回车),输出结果是()charc;scanf("%c”,&c);c=(c〉=’a'&&c〈’z')?(c-32):c;printf("%c",c);A.AB。ZC。aD。z11。下列值为1的C语言表达式是()A.!1&&0B.10>(2+10)C.!(99>100)D.(2+9)<1012。运行下列C语言程序段,分别输入2,2↙和3,3↙时的运行结果是(注:↙表示回车)()inta,b,c;scanf("%d,%d",&a,&b);c=a*b;if((c%2)==0)printf("%d,”,c);e1seprintf("%d,",c—1);A.3,8,B。3,9,C。4,8,D。4,9,13.已知a=1,b=2,c=3,d=4;表达式:a>b?a:(c>d?c:d)的值是()A。0B.1C.2D。414.在C语言中,若有while(a)语句,则结束循环的条件是a的值()A.为0B.为1C。大于0D。不等于015.C语言中break语句()A.只能用于循环语句中B.只能用于switch语句中C。可以用于任意语句中D.可以用于循环语句或switch语句中16。C语言中,多重循环中内层循环与外层循环间()A.可以交叉B.可以并行C.必须完全嵌套D.交叉、并行、嵌套均可17.执行下列C语言程序后k的值是()main(){intk=1;while(k){if(k>10)break;k++;}printf(”%d”,k);}A.0B.10C.11D.无穷大18。C语言中能为字符数组a正确赋值的是()A.chara[]="china";B.chara[];a=”china";C.chara[5],b[]={”china"};a=b;D.chara[],a={"china"};19.已知:inta[]={0,1,2,3};下列叙述中正确的是()A.数组a对应一个存储单元B.系统根据赋初值的个数决定数组a的长度C.数组a占用4个字节D.存放数组a的存储单元的首地址是020。下列C语言程序的运行结果是#include<stdio.h>#include〈string。h>main(){char*str1="AbAAAA”,*str2="AaaAAa";str1++;printf("%d\n",strcmp(str1,str2));}A.小于0的数B。0C.大于0的数D.随机数21.在C语言中,下列语句的执行结果是()printf("%d\n”,strlen("contry\n0003"));A。10B.11C.13D.1422.在C语言中,取变量地址的运算符是()A.*B。&C.&&D。%23.已知:inta,*ip1=&a,*ip2;则赋值语句ip2=ip1;的含义是()A.将ip1的地址赋给ip2B。将a的地址赋给ip1C.将a的值赋给ip2D.将a的地址赋给ip224.C语言函数的形参为简单变量时,实参与形参之间是()A.双向传址B。双向传值C.单向传址D.单向传值25.执行下列C语言程序段后,变量a的值是()int*v,a=200;v=&a;a=*v+10;A.190B.200C.210D.22026.在C语言中,关于函数之间的数据传递,错误的叙述是()A.函数可以通过形参和实参传递数据B.如果函数形参是简单变量,相应的实参可以是常数、表达式或简单变量C。被调用函数只能通过return语句传递数据D。如果形参是数组名,实参也可以是数组名,这种传递不是数组值的传递,而是地址传递27。下列C语言程序的运行结果是()intd=1;fun(p)intp;{intd=5;d=d+p++;printf("%d,”,d);}main(){inta=3;fun(a);d=d+a++;printf(”%d\n”,d);}A.8,4B.8,5C.9,4D。9,628。C语言中,函数返回值的类型是由()A.return语句中的表达式类型决定B.调用该函数时的主调函数类型决定C.调用该函数时系统临时决定D。定义该函数时指定的函数类型决定29.下列C语言程序段运行后屏幕上显示hello!的条件是();fp=fopen("test.dat”,”r");if(fp==NULL)printf(”hello!”);A.只要运行程序屏幕就会显示hello!B。由于条件总不成立因此屏幕不会显示hello!C.当文件test.dat不存在时,显示hello!D.当打开test.dat文件无错误时,显示hello!30.已知下列C语言程序;fp=fopen("test。dat”,”w”);for(i=0;i<=10;i++)fprintf(fp,”%d”,i);为保证可靠地向数据文件中写入数据,需要在退出for循环之后增加的一个语句是()A.close(fp);B.fclose(fp);C.close(*fp);D.fclose(*fp);31.在FoxPro中,如果命令LIST不加任何选项,其功能是显示当前数据库中的()A。当前记录B.全部记录C.从当前记录开始到最后一条记录之间的所有记录D.从第一条记录开始到当前记录之间的所有记录32。在FoxPro中,若数值型字段的宽度定为7,小数位数定为2,该字段整数部分允许表示的最小值是()A.0B.—99999C.—9999D.-99933.在FoxPro中,已知内存变量M=”28+2”,则命令?M的执行结果是()A.30B.28+2C.”28+2”D.30.0034。在FoxPro中,执行以下语句序列后输出结果为()store5toxstore8toy?(x〉y)。AND.(x=y)A。.F.B..T。C.0D.-135.在FoxPro的圆点提示符下执行下列命令?LEN('计算机软件基础'-'课程')输出结果是()A.7B.9C.14D.1836。要建立一个描述教师信息的链表,需要定义如下结构structteacher{intnum;charname[20];struct________;}横线处正确的定义应该是()A。nextB.*nextC。teachernextD.teacher*next37。假定用上界为m的向量S(1:m)存储栈,设栈顶指针top总是指向栈顶元素,要将x入栈的操作步骤是()A.top=top+1;s[top]=x;B.s[top]=x;top=top+1;C.top=(top+1)%m;s[top]=x;D.s[top]=x;top=(top+1)%m;38.在Q(1:m)的向量空间中建立一个循环队列,若队头指针为front,队尾指针为rear,则判断队列为满的条件是()A.front=rearB。front=rear+1C。front=mod(rear,m)D.front=mod(rear,m)+139。已知下列链表结构,指针p、q分别指向图中所示结点,要将q所指的结点从链表中删除,应当使用的一组语句是()A.p=q->next;free(q);B.p—〉next=q-〉next;free(q);C.p—〉next=*p。next;free(q);D.p=(*q).next;free(q);40.在m个元素构成的链式有序线性表中查找一个元素,则()A.只能使用顺序查找算法B。只能使用对分查找算法C.可以使用顺序查找和对分查找算法D。不能使用顺序查找和对分查找算法第二部分非选择题(共60分)二、填空题(本大题共10个空,每空1分,共10分)41.下列C语言程序段中循环体的执行次数是__3__次,循环结束时变量a的值是__—8___.a=10;b=0;while(a〉=0){b+=2;a-=2+b;}42.在C语言中有说明语句charstr1[]=”program”,str2[10];在调用函数strcpy(str2,str1+2)之后数组str1中的内容是program__,str2中的内容是__ogram__.43.函数s)的功能是交换调用函数中两个变量的值,填空完成程序。s)int*x,*y;{intz;z=*x;*x=*y;*y=z;}44.对于FoxPro中的命令SETORDERTO[数字表达式],当“数字表达式”为_0_或缺省不选时,所有记录才能恢复原有数据库的排列顺序。45。在C语言中要动态申请内存空间可使用函数malloc;要释放动态空间可使用函数free。三、阅读程序题(本大题共8小题,每小题4分,共32分)46。运行下列程序,当输入字母a时,输出为_start_;当输入为字母z时,输出为__end__。#include〈stdio。h〉main(){chara;scanf("%c",&a);if(a=='a’)printf("start\n”);elseif(a=='z')printf("end\n”);elseprintf("%c\n”,a);}47。下列程序的功能是输出小于等于200的偶数,填空完成程序.main(){inti;__i=0__;while(i〈=200){printf("%d”,i);__i+=2__;}printf(”\n”);}48.运行下列程序,若从键盘输入字符串a+b=123↙(注:↙表示回车),写出程序运行结果。#include<stdio.h>#include<string.h〉voidfun(tt)chartt[];{inti;for(i=0;tt[i]!=’\0’;i++)if(('a'<=tt[i])&&(tt[i]〈='z'))tt[i]=tt[i]-32;}main(){inti;chartt[8];printf(”Pleaseenterastring:");gets(tt);fun(tt);printf(”%s”,tt);}结果:A+B=12349.写出下列程序的运行结果。#include〈stdio.h〉main(){intk,b[6]={1,2,3,4,5,6};for(k=1;k<5;k++)b[k]=b[k]+k;for(k=0;k<4;k++)printf(”%d,",b[k]);}结果:1,3,5,7,50.写出下列程序的运行结果。#include<stdio。h>voidfuna(ip1,ip2)int*ip1,*ip2;{(*ip1)++;(*ip2)—-;}main(){inta=4,b=3;funa(&a,&b);printf(”%d,%d",a,a*b);}结果:5,1051.下列FoxPro程序段的功能是:统计当前数据库中性别为“女”的人数且显示性别为”女"的记录,填空完成程序。DANGAN。DBF的库结构是:姓名(C,8),性别(C,2)。SETTALKOFFUSEDANGANN=0SCANIF性别="女”N=N+1LOOPENDIFENDSCAN?N52.下列程序完成的功能是退栈操作。如果退栈成功,返回栈顶元素数据;退栈失败,返回0.填空完成程序.structstack{intdata;structstack*link;}top;pop(){structstack*p;intx;if(_*p—〉top==0_)return(0);p=top;x=p->data;top=_top-1_;free(p);return(x);}53.下列程序的功能是按学生的姓名查询,然后显示学生的成绩排名和平均成绩。查询时可连续进行,直到输入0时结束.填空完成程序。#include<stdio。h>#include<string。h>structstudent{intrank;/*学生按成绩的排名*/charname[10];/*学生的姓名*/floatscore;/*学生的平均成绩*/};structstudentstu[]={{3,”liming",89。3},{4,”zhanghua",78.2},{1,"anli”,95。1},{2,”wangqi",90.6}};main(){charstr[10];inti;do{printf(”Enteraname:");scanf("%s",str);for(i=0;i<4;i++)if(strcmp(stu[i].name,str)==0){printf(”Name:%8s\n”,stu[i].name);printf("Rank:%3d\n”,stu[i].rank);printf("Average:%5。1f\n”,stu[i]。score);_break_;}if(i>=4)printf("Notfound\n");}while(strcmp(str,"0")!=0);}四、编写程序题(本大题共2小题,每小题9分,共18分)54。编写C语言程序:从键盘输入10个整数,存入一维数组a中,计算数组a中10个元素的平均值,然后输出数组中小于平均值的元素的值。#include<stdio.h〉intfun(float*s,intn,float*aver){floatave,t=0.0;intcount=0,k,i,j;for(k=0;k<n;k++)t+=s[k];ave=t/n;printf(”someislessthanaveragevalueis:");for(i=0;i<n;i++)if(s[i]<ave){j=s[i];printf("%d",j);count++;}*aver=ave;returncount;}main(){floats[30],aver;intm,i

温馨提示

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

评论

0/150

提交评论