资源描述:
《c语言程序设计及vfp程序设计试题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
高级语言(C)程序设计部分(满分100分)一、单项选择题(每小题1分,共20分)1、在C语言中,不正确的int类型的常数是() A、32768 B、0 C、037 D、0xAF2、设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是()A、x=x*100+0.5/100.0 B、x=(x*100+0.5)/100C、x=(int)(x*100+0.5)/100.0 D、x=(x/100+0.5)*100.03、已知inti=-10;表达式-12<=i<=-8的值是()A、0B、1C、-8D、非零值4、若己定义:inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[l]地址的 表达式是() A、p+l B、a+l C、a++ D、++p5、设有如下程序段,下面描述中正确的是()intk=10;while(k=0)k=k-1;A、循环执行一次B、循环是无限循环C、循环体语句一次也不执行D、循环体语句执行一次6、以下程序的输出结果为()inti;voidprt(){for(i=5;i<8;i++)printf("%c",'*');printf("t");}main(){for(i=5;i<=8;i++)prt();}A、***B、************C、******D、***7、下面选项中正确的赋值语句是(设chara[5],*p=a;)()Ap="abcd";Ba="abcd";C*p="abcd";D*a="abcd";8、C语言中的文件类型只有()A、索引文件和文本文件两种B、文本文件一种C、二进制文件一种D、ASCII码文件和二进制文件两种9、C语言规定:在一个源程序中,main函数的位置()A、必须在最开始B、必须在系统调用的库函数的后面 C、可以任意D、必须在最后10、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是() A、7 B、8 C、6 D、211、以下不正确的叙述是()A、在C程序中,逗号运算符的优先级最低B、在C程序中,APH和aph是两个不同的变量C、若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。D、当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值12、putchar函数可以向终端输出一个()A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量值13、对for(表达式1;;表达式3)可理解为()A、for(表达式1; 0;表达式3)B、for(表达式1;1;表达式3)C、for(表达式1;表达式1;表达式3)D、for(表达式1;表达式3;表达式3)14、若有以下说明和语句,且已知char型占1个字节,int型占两个字节,float型占4个字节。structst{intnum;charname[10];intage;floatscore;}student;则结构体变量student占用内存的字节数是()A、10B、18C、9D、215、以下程序执行后的结果是()#defineKB(x,y,z)x*y*z;main(){inti;i=AREA(3+2,3,1+2)printf(“%d”,i);}A、20B、程序出错C、11D、4516、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为()A、D B、68 C、不确定的值 D、C17、若有代数式3ae/bc,则不正确的C语言表达式是() A、a/b/c*e*3 B、3*a*e/b/c C、3*a*e/b*c D、a*e/c/b*318、有输入语句: scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是A、132(回车)B、1,3,2(回车)C、a=1b=3c=2(回车)D、a=1,b=3,c=2(回车)19、在C语言中,一维数组的定义方式为:,类型说说明符数组名__。A、[常量表达式] B、[整型表达式]C、[整型常量]或[整型表达式]D、[整型常量]20、以下for循环的执行次数是: for (x=0,y=0; (y=123)&&(x<4); x++); A、是无限循环B、循环次数不定C、执行4次 D、执行3次二、判断正误并改错(每题2分,共12分)1、C语言中的基本数据类型有整型、字符型和实型。()2、C语言中不同的函数中不可以使用相同名字的变量。()3、C语言程序区分字母大小写,符号常量必须定义为大写。()4、若intx=100,y=200,则语句printf(“%d”,(x,y))的输出结果是100。()5、C语言的数组名是一个地址常量,不能对它进行加、减和赋值运算。()6、在程序运行过程中,系统分配给实参和形参的内存单元是相同的。()三、简答题(每题4分,共16分)1、在c语言中读写文件的使用规则是什么?2、对于charmessage[]="hello";和char*message1="hello";请回答message和message1在存储位置、访问方式上有什么区别? 3、do语句相对于while和for语句的主要不同点在哪?四、写出下列程序运行结果(每题4分,共12分)1、main(){inti,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<3;j++){if(j%2)continue;x++;}x++;}printf("x=%d ",x);}程序的运行结果是2、 #includemain() {int n,sum=0;n=2345;do{ sum=sum+(n%10)*n%10); n=n/10;}while(n);printf("sum=%d",sum);} 程序的运行结果是3、 #includemain(){ intp[7]={11,13,14,15,16,17,18};inti=0,j=0;while(i<7&&p[i]%2==1)j+=p[i++];printf("%d ",j);}程序的运行结果是五、程序填空题(每题4分,共12分)1、以下函数fun的功能是用选择排序法对数组的数据按从小到大的顺序排列。voidfun(inta[],intn){inti,j,k,temp;for(i=0;i'Z' && c<='Z'+ 2) ; } printf(" %c",c) }26. 当前目录下存放着文本文件from.txt,将其中除数字以外的内容显示在屏幕上。 #include“stdio.h” voidmain() { FILE*fp;intch; if( ){ printf("不能打开文件-->form.txt"); exit(0); } while(!feof(fp)){ ch=; if( !(ch>=’0’&&ch<=’9’)) putchar(ch); } fclose(fp); }六、编程题(每题14分,共28分)1、利用公式=×…前100项之积计算并打印p值。 2、编程从输入的10个数中,去掉一个最大数和一个最小数,求剩余数的平均值。VisualFoxPro程序设计基础部分(满分100分)一、单项选择题(每小题1分,共20分)1、在命令窗口中,不能实现的操作是()A、复制已执行过的命令B、重复执行已执行过的命令C、同时执行多个命令D、在命令窗口中显示命令执行结果2、VFP系统中,表的结构取决于()A、字段的个数、名称、类型和长度B、字段的个数、名称、顺序C、记录的个数、顺序D、记录和字段的个数、顺序3、某表单FrmA上有一个命令按钮组CommandGroup1,命令按钮组中有四个命令按钮:CmdTop,CmdPrior,CmdNext,CmdLast。要求按下CmdLast时,将按钮CmdNext的Enabled属性置为.F.,则在按钮CmdLast的Click事件中应加入的命令是()A、This.Enabled=.F.B、This.Parent.CmdNext.Enabled=.F.C、This.CmdNext.Enabled=.F.D、Thisform.CmdNext.Enabled=.F. 4、关系型数据库采用什么表示实体和实体间的联系()A、对象B、字段C、二维表D、表单5、在定义表结构时,以下哪些数据类型的字段宽度都是定长的( )A、字符型、货币型、数值型B、字符型、货币型、整型 C、备注型、逻辑型、数值型D、日期型、备注型、逻辑型6、VFP系统中的查询文件是指一个包含一条SELECT-SQL命令的程序文件,文件的扩展名为()A、.PRGB、.QPRC、.SCXD、.TXT7、在命令窗口执行CREATEMENU命令等同于操作()A、选择菜单“文件→新建”,然后从“新建”对话框中选择“菜单”并单击“向导”按钮B、选择菜单“文件→新建”,然后从“新建”对话框中选择“菜单”并单击“新建文件”按钮C、选择菜单“文件→新建”,然后从“新建”对话框中选择“新建文件”并单击“菜单”按钮D、选择菜单“文件→新建”,然后从“新建”对话框中选择“向导”并单击“菜单”按钮8、选定查询文件后,项目管理器的右边按钮不可能有()A、新建B、修改C、打开D、运行9、已知:X="AB",AB=100。执行命令?&X+10的结果是()A、XB、ABC、ABC58D、11010、显示所有以A打头的所有内存变量,正确的命令是()A、LISTMEMOLIKEAB、LISTFORA*C、DISPMEMOLIKEA*D、DISPMEMOA*11、VFP系统中,内存变量只定义了数组MK(12),它具有12个下标变量。用LISTMEMORY命令显示已定义的内存变量个数是()A、12B、1C、0D、有时是1,有时是1212、关系运算中的选择运算是()A、从关系中找出满足给定条件的元组的操作B、从关系中选择若干个属性组成新的关系的操作C、从关系中选择满足给定条件的属性的操作D、A和B都对13、VFP中,+和-运算符能用于()表达式。A、日期B、字符C、日期时间D、A、B、C三项都对14、 Zgda表已按性别建立索引,表中有男生记录5个,女生记录3个,使用TOTAL命令按照性别分类汇总,生成的表文件中共有()条记录。A、3B、2C、5D、815、在命令窗口中,可用DO命令运行扩展名为()的菜单程序文件。A、MPRB、MNTC、FMTD、MNX16、当表单被读入内存来调用时,首先触发的事件是()A、LoadB、InitC、ReleaseD、Activate17、在VisualFoxPro中,建立数据库表时,将年龄字段值限制在12~14之间的这种约束属于()A、实体完整性约束B、域完整性约束C、参照完整性约束D、视图完整性约束18、在VisualFoxPro中,运行表单T1.SCX的命令是()A、DOT1B、RUNFORM1T1C、DOFORMT1D、DOFROMT119、使用SQL语句将学生表S中年龄(AGE)大于30岁的记录删除,正确的命令是()A、DELETEFORAGE>30B、DELETEFROMSWHEREAGE>30C、DELETESFORAGE>30D、DELETESWHEREAGE>3020、SQL语句中修改表结构的命令是()A、MODISTRUB、ALTERTABLEC、ALTERSTRUCTURED、MODITABLE二、判断正误并改错(每题2分,共12分)1、一条命令可分几行写,在行结束处用“:”表示一行未完,转入下一行。()2、报表包括两个基本组成部分:数据源和布局。()3、VFP有交互操作与程序执行两类工作方式。()4、表的所有字段的值均存放在表文件(.DBF)中。()5、在使用了zap命令删除了表中的全部记录后,表文件也一同删除了。()6、调用表单的hide方法,可以把表单隐藏起来。()三、简答题(每题4分,共16分) 1、请说明LIST、DISPLAY、REPLACE、DELETE、RECALL命令的默认范围?2、请说明有哪些报表带区及各带区的作用?3、请写出向课程表中增加一条记录,课程代号"01",课程名为"数据库",课时数为"72",必选课为"是",学分为"2"的操作命令。四、写出下列程序运行结果(每题4分,共12分)1、SETTALKOFFX=1 FOR I=1 to50IFX>=10 EXITENDIFIFX%2=1X=X+5LOOPENDIF X=X-3ENDFOR?ISETTALKON程序运行结果为:2、SETTALKOFF FOR I=10 TO 4 STEP–1IFI%3#0 I=I-1 ENDIF I=I-2 ??I+”” ENDFORSETTALKON程序运行结果为:五、程序填空题(每题4分,共12分)1、若YG表中包含“编号”字段,并以“编号”建立普通索引(BH)且指定主索引,下列程序实现了编号相同记录的物理删除。USEYGSETORDETOTAGBHDOWHILENOTEOF()BH=编号SKIPIF()BH=BHDELETEENDIFENDDO()PACK设有一职工数据表ZG.DBF,其中包括如下字段:姓名(C,8)、性别(C,2)、和基本工资(N,7,2)。下面的程序要求屏幕上显示全部女职工的基本情况,显示格式为“姓名:XXX 性别:女 基本工资:XXXX.XX”。填空完成这一功能。 SETTALKOFF USEZG LOCATEFOR性别=”女” DOWHILE!EOF() ?“姓名:”+姓名 ?? “性别:”+性别 ( ) ( ) ENDDO USE六、编程题(每题14分,共28分)1、若已建立了一个日销售文件RXS.DBF(营业员代号、品名、数量、单价、营业额),每笔营业产生一个记录,但营业额字段的值因未填写而都为0.00,试编写程序查询某营业员的全天营业额。找出100-999之间的所有“水仙花数”。“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身(如153=1^3+5^3+3^3)。