2010程序设计竞赛上机试题
2010年(上)全国信息技术水平考试计算机程序设计技术水平证书(JAVA语言)考试试卷

2010年(上)全国信息技术水平考试计算机程序设计技术水平证书(JAVA语言)考试试卷2010年(上)全国信息技术水平考试计算机程序设计技术水平证书(JAVA语言)考试试卷第一大题:单选题(30 分)1. (1分) 在Java中,int数据类型所占的位数为 ( C )(A) 8 (B) 16 (C) 32 (D) 642. (1分)在一个类设计中,其中的一些类成员变量需要保证只能够被同类和相同的包中的其他类访问,那么应使用的访问控制符是( D )(A) private (B) protected (C) public (D) 没有访问控制符3. (1分) 下列选项中属于非法标识符的是( A )(A) 2variable (B) Variable2 (C) _what (D) b3_4. (1分) 下列选项中属于Panel和Applet默认布局管理器的是( B )(A) CardLayout (B) FlowLayout (C) BorderLayout (D)GridLayout5. (1分) 下列说法中错误的是( D )(A) final关键字声明该方法是最终方法,不能被重写(B) 所谓方法的覆盖是声明一个方法与其父类中某个方法相同(C) 所谓方法的重载是多个方法可以共用一个方法名(D) 所谓构造方法就是类里面的第一个方法6. (1分)为把文件指针设置为文件内的特定位置,应使用RandomAccessFile 类中的哪个方法( D )(A) long getFilePointer()(B) long length()(C) Byte [] readBytes(long)(D) void seek(long pos)7. (1分) 下列程序的输出结果是( )class Happy {public static void main(String args[]) {int i =1;int j = 10;do {if ( i++ < j--)continue;} while ( i <5 );System.out.println ( i+" "+j );}}(A) 5 5 (B) 5 4 (C) 6 4 (D) 5 68. (1分) 下列程序的输出结果是 ( )class Test{String s;public static void main(String args[]){Test ks=new Test();int j,i;i=ks.hai();j=ks.hello();System.out.println(i+" "+j);}int hai(){if((s==null)||(s.length()==0))return 10;elsereturn 0;}int hello(){if((s==null)||(s.length()==20))return 10;elsereturn 0;}}(A) 10 10 (B) 0 0 (C) 10 0 (D) 0 109. (1分) 执行下列程序段后,b,x,y的值是( )int x=6,y=8;boolean b;b=x<y||++x==--y;(A) true,6,8 (B) false,7,7 (C) true,7,7 (D) false,6,810. (1分)下列关于Java Application与Applet的说法中,正确的是( ) (A) 都包含main()方法 (B) 都通过“appletviewer”命令执行 (C)都通过“javac”命令编译 (D) 都嵌入在HTML文件中执行11. (1分) 下列代码中,将引起一个编译错误的行是( )1)public class Test{2)int m,n;3)public Test() {}4)public Test(int a) {m=a;}5)public static void main(String args[]){6)Test t1,t2;7)int j,k;8)j=0;k=0;9)t1=new Test();10)t2=new Test(j,k);11)}12)}(A) 第3行 (B) 第5行 (C) 第6行 (D) 第10行12. (1分)要串行化某些类的对象,这些类就必须实现( )(A) Serializable接口 (B) java.io.Externalizable接口 (C) java.io.DataInput接口 (D) DataOutput接口13. (1分) 下列程序输出的结果是( )public class Test {public static void changestr(String str){str="welcome";}public static void main(String[] args) {String str="1234";changestr(str);System.out.println(str);}}(A) 1234(B) welcome(C) 编译出错(D) 编译通过,运行出错14. (1分) 下列程序输出的结果是( )public class Test{public static void main(String args[]){System.out.print(10%3);System.out.print(",");System.out.println(10%3.0);}}(A) 1,1 (B) 1,1.0 (C) 1.0,1 (D) 1.0,1.015. (1分)编译并运行以下程序(运行命令:java Test 0),则下列关于运行结果的描述正确的是( )class Test{public static void main(String[] args){long i=1;switch(i){case 0: System.out.println("0");case 1: System.out.println("1");default : System.out.println("default");}}}(A) 编译出错 (B) 打印出0 (C) 打印出1 (D) 打印出default16. (1分) 若抛出用户自定义异常,应使用的子句是( )(A) catch (B) throw (C) try (D) finally17. (1分)在使用interface声明一个接口时,只可以使用( )修饰符修饰该接口。
C语言程序设计试题AB卷及标答2010年

2010—2011学年度第二学期期末考试《C语言程序设计》试题A卷09年级90 分钟2011年6月一、用C语言描述下列命题(每小题2分,共8分)1、a小于b或a小于c。
2、a或b其中之一小于c。
3、a和b中有一个是奇数。
4、无条件循环(while )。
二、填空(每小题2分,共10分)1、(FF)H=()2。
2、若一个二进制数的原码是X原=10010011,则反码是X反=()。
3、a+=a-=a*=a ()。
4、C程序设计的基本结构有3种,分别是顺序结构、分支结构、()。
5、C函数结尾处,一般有return语句,其含义是()。
三、读程序,写出其结果(每小题5分,共10分)1、程序代码如下,结果是( )。
#i nclude <stdafx.h>int main (i nt argc,char *argv[]){int a=10,b=20;prin tf("%d",a>b?a:b);return 0;}2、程序代码如下,结果是( )。
#include <stdafx.h>int main (i nt argc,char *argv[]){int i=8,j=10,m, n;m=++i; n =j++;prin tf("%d,%d,%d,%d",i,j,m, n);return 0;四、程序填空(每空4分,共12分)输出杨辉三角形(要求输出10行)11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1程序如下:#i nclude "stdafx.h"int main (i nt argc, char* argv[]){int a[10][10];〃构建杨辉三角形for(int i=0; i<10; i++){_____ ;a[i][i]=1;}for( ②;i<10; i++)for(i nt j=1; j<i; j++) a[i][j]= ③〃以下是输出杨辉三角形for(i=0; i<10; i++){for(i nt j=0; j<=i; j++)prin tf("%5d ", a[i][j]);prin tf("\n");}return 0;}五、程序改错(在答题纸上写出改正后的语句)(共10分)下列给定程序中,函数fun的功能是:根据整型形参m的值,计算如下公式的值1 1 1 1t j 亠 M2x2 3x3 m xm请改正函数fun中的二处错误,使它能得出正确的结果。
2010秋VFP上机试题

2010Q VFP01一、项目、数据库和表操作(12分)打开T盘根目录中的项目文件JXGL,在该项目中已有一数据库JXSJ。
1.在(1)(2) 设置日期字段的默认值:当前系统日期;(3) 设置日期字段的显示类:微调框;(4) 设置记录有效性规则:实际参观人数小于或等于售出门票数量;(5) 创建普通索引,索引名为abcd,要求按实际参观人数与售出门票数量之比排序.2.在AB3.给KC表中所有学分大于或等于5的记录加删除标记。
4.JS表已存在主索引GH,索引表达式为GH;KCAP表已存在普通索引GH,索引表达式为GH。
以JS表为主表、KCAP表为子表,根据GH建立永久关系,并设置两表之间的参照完整性:更新级联、删除级联。
二、设计查询(8分)已知教师表(JS)含有工号(gh,C)、姓名(xm,C)等字段;自由表图书借阅表(JYB)含有读者号(dzh,C)、分类号(flh,C)、借阅日期(jyrq,D)、还书日期(hsrq,D)等字段,教师的读者号与工号相同。
按如下要求修改JXGL项目中的查询CHAXUN:基于JS表和JYB表查询教师借书情况,计算过期罚款信息。
要求:查询输出字段为dzh、xm、罚款额;查询结果按罚款额降序排序;输出去向为文本文件TEMP。
注:罚款计算方法为30天以上超过部分每本每天0.10元,未还书者(即还书日期为空的记录)不统计。
三、设计菜单(5分)JXGL项目中已存在菜单MENU,其中已定义了“文件”菜单栏及其中的“退出菜单”项。
按如下要求设计菜单,菜单运行后的效果如图1所示。
1.在“文件”菜单栏右侧创建“数据管理”菜单栏。
2. 在“数据管理”菜单栏下创建子菜单“查询”和“数据备份”。
3. 为“查询”菜单项设置快捷键:F12。
4. 在菜单项“查询”和“数据备份”之间插入分组线。
5. 为“数据备份”菜单项设置过程代码:d=GETFILE("dbf","*.dbf")USE &dCOPY TO bf1四、设计表单(10分)表单F101A用于统计输入文本中各类字符的个数。
2010年上海市高等学校计算机等级考试试卷二级C语言程序设计

2010年上海市高等学校计算机等级考试试卷二级 C语言程序设计( C 卷)(本试卷考试时间 120 分钟)一、单选题1. C程序是由_______组成的。
A. 子程序B. 过程C. 子函数D. 主函数和子函数2. 若有定义语句:char c='\n'; 则变量c _______。
A. 包含4个字符B. 包含2个字符C. 包含1个字符D. 说明不合法,c的值不确定3. 设有float x=1.25; int n=x; 则语句printf("%.2f,%d\n",x,n);的输出是:_______ 。
A. 1.25,1.25B. 1,1C. 1,1.25D. 1.25,14. 设x为int型变量,且初值为 'f',则执行printf("%c\n", 'A'+(x-'a'+1));后的输出结果是_______。
A. GB. HC. ID. J5. 设有int n; 则判断“n为二位数(10至99)”的表达式是:_______ 。
A. 10<=n<=99B. 10<=n || n<=99C. 10<=n, n<=99D. 10<=n && n<=996. 下列if语句中,错误的是 _______。
A. if(a==b) a-- else b++;B. if(a-b>0) printf("a>b\n");C. if(x>0&&x<10) y=x*x-1.5;D. if(x) y+=1;7. 设:int i,n ; float sum; 则求调和级数s=1+1/2+1/3+...前n项之和的正确循环语句是_______。
A. for(i=1;i<=n;i++) sum+=1/i ;B. for(i=1,sum=0.0;i<=n;i++) sum+=1/i;C. for(i=1,sum=0.0;i<=n;i++) sum+=(float)(1/i) ;D. for(i=1,sum=0.0;i<=n;i++) sum+=1.0/i;8. C程序中,return语句的作用是_______。
2010计算机等级考试 二级C语言上机100题

2: 第 2 题 请编写函数 fun,它的功能是:求出 1 到 1000 之内能北 7 或者 11 整除,但不能 同时北 7 和 11 整除的所有整数,并将他们放在 a 所指的数组中,通过 n 返回这些数的个数。 答案: void fun(int *a, int *n) { int i,j=0; for(i=2;i<1000;i++) if ((i%7==0 || i%11==0) && i%77!=0) a[j++]=i; *n=j; }
-2-
case ‘k’: case ‘l’: case ‘m’: case ‘n’: case ‘o’: case ‘p’: case ‘q’: case ‘r’: case ‘s’: case ‘t’: case ‘u’: case ‘v’: case ‘w’: case ‘x’: case ‘y’: case ‘z’: } tt++; } }
pp[10]++;break; pp[11]++;break; pp[12]++;break; pp[12]++;break; pp[14]++;break; pp[15]++;break; pp[16]++;break; pp[17]++;break; pp[18]++;break; pp[19]++;break; pp[20]++;break; pp[21]++;break; pp[22]++;break; pp[23]++;break; pp[24]++;break; pp[25]++;break;
2010年上海市高等学校计算机等级考试试卷二级_C语言程序设计_(_E_卷)

2010年上海市高等学校计算机等级考试试卷二级 C语言程序设计( E 卷)(本试卷考试时间 120 分钟)一、单选题 ( 本大题 15 道小题,每小题 1 分,共 15 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。
1. 以下C程序中预处理命令写法正确的是:答案: DA. #include (stdio.h)B. #include [stdio.h]C. #include {stdio.h}D. #include <stdio.h>2. 设有变量定义语句char a; 则下面的赋值语句中 ( ) 是正确的。
答案: AA. a='&';B. a="&";C. a=' ' ';D. a='16' ;3. 设有char ch; 与语句“ch=getchar();”等价的语句是:答案: DA. printf("%c",ch);B. printf("%c",&ch);C. scanf("%c",ch);D. scanf("%c",&ch);4. int a=2, b=5;则表达式21%9/(float)a+4/b*b的运算结果为( )。
答案: CA. 2B. 1C. 1.5D. 05. 能正确表示逻辑关系"a>=10 或 a<=0"的C语言表达式是( )。
答案: CA. a>=10 or a<=0B. a<=0|a>=10C. a<=0||a>=10D. a>=10 && a<=06. 设有int n=60;写出下列语句的运行结果switch (n/10){case 6: printf("@");break;case 5: printf("#");default: printf("$");}答案: DA. @#$B. #$C. $D. @7. 设有int i; 以下语句中,循环次数为100次的语句是:答案: DA. for ( i=0; i<=100; i++ )B. for ( i=0; i<99; i++ )C. for ( i=1; i<99; i++ )D. for ( i=0; i<100; i++ )8. C程序中,用于提前结束本次循环、进行下一次循环的语句是( )。
2010年春季计算机等级考试VB上机考试题

重庆市高等院校非计算机专业计算机等级考试Visual Basic 2010年第1次考试上机试卷第1套2010年4月24日一、设计下图所示界面的程序,程序运行后,输入球的半径,单击“球体积”、“球表面积”复选框,根据复选框是否勾选,决定是否在右侧相应的文本框内显示球体积(πR )和球表面积(4πR )的计算值。
(40分,存盘时工程文件名为Ex11nnnn.Vbp ,窗体文件名为Ex11nnnn.Frm ,其中nnnn 为考生准考证号的右4位)2433二、编写具有下图所示界面的应用程序,程序运行后,在“起始值”和“结束值”两个文本框中分别输入一个整数(大小不限),单击“计算累加和”按钮,就能在文本框下方的Label 控件中显示起始值与结束值之间所有奇数的累加和。
(30分,存盘时工程文件名为Ex12nnnn.Vbp ,窗体文件名为Ex12nnnn.Frm ,其中nnnn 为考生准考证号的右4位)三、程序的功能是:学生成绩数据已经保存在数组a 中,学生姓名已经保存在数组b 中,单击窗体,就能在窗体上显示成绩最好的学生姓名及其成绩。
(30分,要求根据程序代码改错,改错时,不得增加和删除语句。
将修改正确的程序存盘,工程文件名为Ex13nnnn.Vbp ,窗体文件名为Ex13nnnn.Frm ,其中nnnn 为考生准考证号的右4位)Private Sub Form_Click()Dim a As Variant, b As Stringa = Array(85, 77, 92, 66, 44)b = Array("黄玉梅", "朱明霞", "孙家宝", "赵天明", "杨百万")Max = a(0):student = b(0)For i = 1 To 5If b(i) > Max ThenMax = a(i):student = b(i)End IfNext iPrint "成绩最好的学生是:"; student; "考试成绩为:"; Max; "分" End Sub参考答案及评分标准:第一题参考代码Private Sub Check1_Click()r = Val(T ext1.Text)If Check1.Value = 1 Thenv = 4 * 3.14159 * r ^ 3 / 3Text2.Text = vElseText2.Text = ""End IfEnd SubPrivate Sub Check2_Click()r = Val(T ext1.Text)If Check2.Value = 1 Thenv = 4 * 3.14159 * r ^ 2Text3.Text = vElseText3.Text = ""End IfEnd Sub评分标准:界面设计15分保存文件5分每个事件过程10分第二题参考代码:Private Sub Command1_Click()X1 = Val(Text1.Text)X2 = Val(Text2.Text)Sum = 0If X1 < X2 Then n = 1 Else n = -1For i = X1 To X2 Step nIf i Mod 2 <> 0 ThenSum = Sum + iEnd IfNext iLabel3.Caption = "从" + Text1.Text + "到" + Text2.Text + "之间所有奇数的累加和=" + Str(Sum)End Sub评分标准:界面设计5分循环结构正确5分(控制条件不正确者酌情扣分)判断条件正确5分求和正确5分输出格式正确5分正确存盘5分第三题改错参考答案:Private Sub Form_Click()Dim a As Variant, b As Varianta = Array(85, 77, 92, 66, 44)b = Array("黄玉梅", "朱明霞", "孙家宝", "赵天明", "杨百万")Max = a(0)student = b(0)For i = 1 To 4If a(i) > Max ThenMax = a(i)student = b(i)End IfNext iPrint "成绩最好的学生是:"; student; "考试成绩为:"; Max; "分" End Sub评分标准:共3处错误,每改一处错误正确存盘8分(共24分)6分重庆市高等院校非计算机专业计算机等级考试Visual Basic 2010年第1次考试上机试卷第2套2010年4月24日1.设计右图所示界面的程序,程序运行后,输入圆的半径,单击“圆面积”、“圆周长”复选框,然后单击“计算”按钮,根据复选框是否勾选,决定是否在右侧相应的文本框内显示圆面积和圆周长的计算值。
2010程序设计大赛决赛题及参考答案

}
4、(15分)网上流传一句话:"常在网上飘啊,哪能不挨刀啊~"。其实要想能安安心心地上网其实也不难,学点安全知识就可以。
首先,我们就要设置一个安全的密码。那什么样的密码才叫安全的呢?一般来说一个比较安全的密码至少应该满足下面两个条件:
(1).密码长度大于等于8,且不要超过16。
(2).密码中的字符应该来自下面“字符类别”中四组中的至少三组。
样例输入1
Linle@ACM
样例输出1
YES
样例输入2
^~^@^@!%
样例输出2
NO
C参考答案:
#include <stdio.h>
#include <string.h>
int main(){
char s[51], b[4];
int len, i, r;
scanf("%s", s);
len = strlen(s);
{
a[2]="";
switchห้องสมุดไป่ตู้i)
{
case0:
z[0] = m[0] + m[1];
a[0] ="("+m[0]+"+"+ m[1]+")";
break;
case1:
z[0] = m[0] - m[1];
a[0] ="("+m[0] +"-"+ m[1]+")";
break;
case2:
z[0] = m[0] * m[1];
printf("%10s%10s%10s\n”,”men”,”women”,”children");
全国2010计算机等级考试三级C语言上机题41-60

☆题目41下列程序prog1.c的功能是:计算出自然数SIX和NINE,它们满足的条件是SIX+SIX+SIX=NINE+NINE的个数cnt以及满足此条件所有的SIX与NINE的和SUM。
请编写函数countValue()实现程序的要求,最后调用函数writeDat()把结果cnt和sum,输出到文件OUT15.DAT 中。
其中的S,I,X,N,E各代表一个十进制数字。
部分源程序存在文件prog1.c中。
请勿改动主函数main()和输出数据函数writeDat()的内容。
#includeint cnt,sum;void countValue(){ int s,i,x,n,e,six,nine;for(s=1;s<10;s++)for(i=0;i<10;i++)for(x=0;x<10;x++)for(n=1;n<10;n++)for(e=0;e<10;e++){ six=s*100+i*10+x;nine=n*1000+i*100+n*10+e;if(3*six==2*nine){ cnt++;sum+=six+nine;}}}void main(){cnt=sum=0;countValue();printf("满足条件的个数=%d\n",cnt);printf("满足条件所有的SIX与NINE的和=%d\n",sum);w riteDat();}writeDat(){FILE *fp;fp=fopen("OUT15.DAT","w");fpri ntf(fp,"%d\n%d\n",cnt,sum);fclose(fp);}********************************************************************* *****题目42已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。
2010年1月高级语言程序设计(一)真题及参考答案

2010年1月高级语言程序设计(一)试题一、单项选择题(本大题共15小题,每小题2分,共30分)1. 下列不属于保留字的是( D )A. defaultB. RegisterC. structD. unsign2. 下列不能作为常量的是( A )A. 0582B. 0xa5C. ‟\n‟D. 2.5e-23. 设typedef long class;,则class是( C )A. 整型变量B. 长整型变量C. 长整型数据类型的新标识符D. 新的而非长整型数据类型的标识符4. 设char c=‟A‟;int i=1, j;,执行j=!c&&i++;后,i和j的值分别是( A )A. 1和0B. 1和1C. 2和0D. 2和l5. 设int a;,执行表达式(a=1,2,3),a+1后,a和表达式的值分别是( A )A. 1和2B. 2和3C. 3和4D. 4和56. 下列关于函数定义正确的是( D )A. fun(int x,y){int z;return z;}B. void fun(int x,int y){return x+y;}C. fun(x,y){int x,y;double z;z=x+y;return z;}D. double fun(int x,int y) {double z;z=x+y;return z;)7. 下列用户自定义标识符正确的是( B )A. 4aB. b_1C. -&D. *p8. 下列程序段中循环体执行的次数是( B )int x=-1; Do { x=x*x; }while(! x);A. 0B. 1C. 2D. 无限9. 实现字符串连接的系统函数名是( A )A. strcatB. strcmpC. strcpyD. strlen10. 若实参是一个数组名,在调用函数时,实参向形参传递的是( B )A. 数组的长度B. 数组的首地址C. 数组每个元素的值D. 数组每个元素的地址11. 设int a[ ][4]={l,2,3,4,5,6,7};,则a[1][3]的值是( A )A. 0B. 3C. 4D. 712. 若定义一个只限本源文件使用的全局变量,则该变量的存储类别是( C )A. externB. registerC. staticD. auto13. 设chark=‟a‟;float j=2.0;,执行k+=5/j;printf(“%c”,k);后,输出结果是( C )A. aB. bC. cD. d14. 下列程序段正确的是( D )A. char s[ ]={…xyz‟};scanf(……%s”,s);B. float *p,i; p=*p+i;C. char s[5]=…word‟;puts(s);D. int a[5]={0},*p=a; *p=*(p+1);15. 关于编译预处理命令,叙述正确的是( A )A. 预处理命令都以”#”开头 D. 每个程序必须在开头使用预处理命令#include<stdio. h>B. 预处理命令必须位于程序的首部C. 预处理命令只能实现宏定义和条件编译的功能二、填空题(本大题共10小题,每小题2分,共20分)16. 设float a,b,c;,若a、b和c分别为三角形的三条边长,它们”能构成等边三角形”的逻辑表达式是a+b>c && a+c>b && b+c>a 。
华中科技大学 2010级信息学院C语言程序设计考试试题A

级信息学院《C 语言程序设计》考试试题(A ) 一、判断下列语句或程序段的对错。
(“×”表示错,“√”表示对)(10分) (1) int x=0,y=x; ( ) (2) #define SIZE 10 ( ) int a[SIZE /2][SIZE]; (3) char *str ; str ="c\test"; ( ) (4) register int n; scanf(“%d ”,&n); ( ) (5) int x ,*px=&x ; float *p=px; ( ) (6) int (*pa)[8],a[6][8]; pa=*a++; ( ) (7) int x ,*px ; *px=&x; ( ) (8) int **pp,a[6][8]; pp=a; ( ) (9) float xyz.1=3; ( ) (10) int x =‘\x78’; ( ) 二、计算下列表达式的值(10分) 设unsigned int a=7, b=17, c=5, d=3; float f; (11) f =c/d; ( ) (12) (!(a+b)+c-1) | | (b+c/3) ( ) (13) (a&b)^( ~c | ~d) ( ) (14) f= (a-b>0 ? c/d : c%d ) ; ( ) (15) b=a++ , a%3 ( ) 三、程序改错(10分) 要求:不得改变程序框架,不得重写程序,无需文字说明,直接在代码上添加、删除和修改。
(16) 用指针的方法实现对输入的3个整数按从小到大的顺序输出显示 #include <stdio.h> void main(void) { int a,b,c;int *pa=&a,*pb=&b,*pc=&c;scanf("%d%d%d",&pa,&pb,&pc);院系________________班级________________姓名________________学号________________成绩________________if(*pa>*pb) swap( pa , pb);if(*pb>*pc) swap( pb , pc);printf("%d\t%d\t%d\n",*pa,*pb,*pc);}void swap(int *px,int *py){int *temp;temp =px;px =py;py =temp;}(17)统计N个字符串中大写字母和数字字符的个数#include <stdio.h>#define N 5void main(void){char string[N][80];char i;int CapitalCount , NumCount;for(i=1;i<=N;i++)scanf("%s",&string[i]);for(i=0;i<=N;i++)CapitalCount +=count(string[i],&NumCount);printf("CapitalCount=%d,NumCount=%d\n",CapitalCount,NumCount); }count(char *pstr , int *result){int temp,i;*result = temp=0;for(i=0 ; i<80 ; i++){if(pstr[i]>='A'&&pstr[i]<='Z')temp ++;if(pstr[i]>=0&&pstr[i]<=9)*result ++;}return temp;}四、程序填空(10分)(18)找N个字符串中最大字符串和最小字符串#include <stdio.h>#include <string.h>#define N 5char *GetMaxMinString( );char *GetMaxMinString( ){int a;char *max;;for(a=1;a<num;a++){if( )max =string[a];if( )*min =string[a];}return max;}void main(void){char string[N][80],*pmax,*pmin;int i;for(i=0;i<N;i++)gets(string[i]);pmax =GetMaxMinString( );printf("Max string is %s,Min string is %s\n",pmax,pmin);}(19)以下程序用二维数组保存多个字符串,用二级指针处理多个字符串的排序。
2010级C语言期终考试题目(适用于机电学

2010-2011 学年第一学期《C语言程序设计》课内考试卷(A卷)授课班号年级专业学号姓名题号一二三上机(1) 上机(2) 总分审核题分30 18 12 20 20得分一、选择题(30分,每小题1分)得分评阅人1.以下所列的C语言常量中,错误的是( )A. 0xFF B. 1.2e0.5 C.‘#’ D. '\72'2. 下面四个选项中,合法用户标识符的选项是( )A. floatB. _totalC. #123D. M.D.John3. 若有以下类型说明语句:char x; float y; double z;则表达式x+z-y的结果类型为( )A. floatB. charC. intD. double4. 设x、y、s均为int型变量,则执行语句:x=y=2;s=x++||++y;后,y的值为( )A. 不定值B. 2C. 3D. 15. 若有说明语句:char c=‘\67’;则变量c( )A.包含1个字符 B.包含2个字符C.包含3个字符 D.该说明语句不合法6. 若说明x在区间(2,9]中,C语言的表达式为( )A.2<x≤9 B.2<x<=9 C.2<x||x<=9 D.2<x&&x<=97.下面程序段执行后int i = 4;float x;x = i /5;x的值为( )A. 0.8B. 0C. 0.0D. 1.08.设有说明“int a=3,b=5,m;”,则执行表达式m=a<=3 &&a+b<8后,m的值为( )。
A.true B.false C.0 D.19. 完成下列循环语句后,n的值为多少( )。
for(int n=0;n<100;n++){ }A. 0B.99C.100D.10110. 设有定义int a[]={1,2,3,4,5,6,7,8,9,10}, *p=a,i;则数组元素地址的正确表示为( )。
2010年上海市高等学校计算机等级考试试卷二级C语言程序设计( B 卷)

2010年上海市高等学校计算机等级考试试卷二级 C语言程序设计( B 卷)(本试卷考试时间 120 分钟)一、单选题1. 关于C程序的主函数,以下描述中正确的是:_______ 。
A. C程序的第一个函数称为主函数,程序从该函数开始运行。
B. C程序可以有多个主函数,程序从第一个主函数开始运行。
C. C程序可以没有主函数,程序从第一个函数开始运行。
D. C程序的主函数即是main函数,程序从该函数开始运行。
2. 字符变量a与b分别初始为'S'与'B',正确的语句是:_______ 。
A. char a,b='S','B';B. char a='S', char b='B';C. char a="S", b="B";D. char a='S', b='B';3. 设有int n=2010; 要求屏幕上显示“n=2010”结果,正确的语句是:_______ 。
A. printf( n );B. printf( "n=", n );C. printf( "n=", "%d", n );D. printf( "n=%d", n );4. 设有变量定义:int a=5, b=8;当执行完语句:b= a<b ? a: b - 1; 之后,变量 a和 b 的值为 _______。
A. 5和5B. 5和7C. 5和8D. 5和95. 设int n; 判断“n不为0”的表达式是:_______。
A. n==0B. !(n=0)C. n=!0D. n!=06. 若有定义: float w; int num; char s; 则合法的switch语句是_______。
2010年C++习题集、上机指导与课程设计

21.以下关于构造函数和析构函数的描述中错误的是___
A. 用户不定义缺省的构造函数,则系统自动生成一个缺省的构造函数
B. 若用户不定义拷贝的构造函数,则系统自动生成一个拷贝的构造函数
C. 若用户不定义析构函数,则系统自动生成一个析构函数
public:
Complex (double r=0 ,double i=0 ) {real =r ; image =i ;}
Complex (Complex &c) {real=c.real ; image=c .image ;}
};
若有Complex c1; //A
Complex c2(3,5); //B
第一部分 习题集
第一章
一、
1.下面关于对象概念的描述中,_______是错误的。
A、对象就是C语言中的结构变量 B、对象代表着正在创建的系统中的一个实体
C、对象是一个状态和操作(或方法)的封装体 D、对象之间的信息传递是通过消息进行的
2.C++对C语言做了很多改进,下列描述中_____使得C语言发生了质变,即从面向过程变成面向对象。
11.缺省析构函数的函数体是_________。
A、不存在 B、随机产生 C、空的 D、无法确定
12.假定X为一个类,执行X a[3],*p[2];语句时会自动调用该类的构造函数_________次。
A、2 B、3 C、4 D、5
13.对于常成员函数,下列描述正确的是________。
A、常成员函数只能修改常数据成员 B、常成员函数只能修改一般数据成员
A、是指静态数据成员B、是指静态函数成员
2010年(上)全国信息技术水平考试计算机程序设计技术水平证书(C语言)考试试卷

2010年(上)全国信息技术水平考试计算机程序设计技术水平证书(C语言)考试试卷2010年(上)全国信息技术水平考试计算机程序设计技术水平证书(C语言)考试试卷第一大题:单选题(30 分)1. (1分) 在C语言中,注释部分的结束符号是( )。
(A) // (B) }(C) */ (D) )2. (1分) 以下程序的运行结果是( )。
#includevoid main(){int i=3,j;j=i++;printf("%d,%d\n",i,j);}(A) 4,3 (B) 3,4 (C) 3,3 (D) 4,43 . (1分)已知ch是字符型变量,则以下赋值语句中别正确的是( )。
(A) ch="a" (B) ch=ˊaˊ(C) ch=ˊ\141ˊ(D) ch=ˊ\x6lˊ+34. (1分) 设int x=1,y=1;则表达式(!x||y - -)的值是( )。
(A) 0 (B) -1(C) 2 (D) 15. (1分) 设选项中的变量均为int类型,则表达式的值别为7的是( )。
(A) (x=y=6,x+y,x+1)(B) (x=6,x+1,y=6,x+y)(C) (x=y=6,x+y,y+1)(D) (y=6,y+1,x=y,x+1)6. (1分) 表达式!(15) 和!(4=3)的值分不为( )。
(A) 1和0 (B) 0和1 (C) 1和1 (D) 0和07 . (1分)以下程序的运行结果是( )。
main(){int x=010,y=10,z=0x10;printf("%d,%d,%d\n",x,y,z); }(A) 8,10,10(B) 8,10,16 (C) 10,10,10 (D) 10,10,168. (1分) 对下列程序段,描述正确的是( )。
int k=10;while(k=0) k=k-1;(A) 循环体语句一次也别执行(B) 循环是无限循环(C) 循环体执行了10次(D) 循环体语句执行了一次9. (1分) 在C语言中与while(1);等价的for语句是( )。
2010数据库上机测试题

SQLServer上机考试题注意:每个同学都要建立自己的一个文件夹,取名为:姓名+学号上机考试要求:在SQL_Server系统的查询分析器中独立完成以下操作!操作过程中要求的四个.sql脚本代码和运行结果截图保存到自己的文件夹中,然后再把文件夹提交到服务器中的登入用户文件夹下。
1、建立数据库SQLTest,并按照下列要求建立三张表并输入数据:顾客表、商品表和商品采购表,请根据你的理解,在三张表中分别选择适当字段建立主键。
(文件名1.sql)顾客表顾客编号顾客姓名顾客职业A1 甲教师A2 乙学生A3 丙教师A4 丁学生商品表商品编号商品名称商品单价B1 钢笔12B2 记录本 5B3 文件夹7商品采购表顾客编号商品编号采购数量A1 B1 5A1 B2 11A2 B2 8A2 B3 7A3 B3 12A4 B1 6A4 B2 92、创建一视图VIEW_SHOP,要求包括:顾客姓名、商品名称、采购数量、商品单价、总价五个字段。
(文件名2.sql)顾客姓名商品名称采购数量商品单价总价3、求出每种商品售出的数量(文件名3.sql),即:商品名称售出数量4、求出每个顾客所采购的所有商品总价(文件名4.sql)。
即:顾客姓名总价2011年软件工程随堂考测试题一、请用PAD图和PDL语言描述在数组A[1]到A[10]中找出最大数的算法二、某8位微机中某八进制常数定义为:以0开头的是八进制整数,其值的范围是-177~177,如05、0127、-065;使用等价类划分法设计测试用例;三、图书馆预定图书子系统有如下功能:1.由供书部门提供书目给订购组;2:订书组从各单位取得要订的书目; 3:根据供书目和订书书目产生订书文档留底;4.将订书信息(包括数目、数目等)反馈给供书单位;5:将未订书目通知订书者;6。
对于重复订购的书由系统自动检查,并把结果给订书者;试根据要求画出该的软件结构。
2010C++程序设计复习题及参考答案

中南大学现代远程教育课程考试复习题及参考答案C++程序设计一、选择题:1.下列标识符作为变量名称,合法的是 [ ]A. gotoB. StudentC. 123D. k-ld2.设x和y均为int型,则x && y为真的条件是 [ ]A.其中一个为0B.其中一个为非0C.它们均为0D.它们均为非03.存储以下数据,占用存储字节最多的是 [ ]A. 0B. ’0’C. ”0”D. ’\n’4.如果有以下语句:int a,b;char m,n;cin>>a>>b>>m>>n;则下列输入数据的方式中正确的是 [ ]A. 10,20,X,YB. 1020 XYC. 10 20 X YD. 10、20、X、Y5.下列for循环的次数为 [ ]for (int I=0,x=0;!x && I<=5;I++)A. 5B. 6C. 1D. 无限6. 若有定义为“int *r =new int [10];”,则释放指针所指内存空间的操作是 [ ]A. delete [ ]r;B. delete *rC.delete r;D.delete r[ ];7. 有函数原型声明语句“int test(int a, int b=1, int c=0);”,在以下函数调用语句中,不合法的是 [ ]A. test(0);B. test(0,0);C. test( );D. test(0,0,0);8. 选择出合法的if语句(设有int x,a,b,c;) [ ]A. if (a==b) x++;B. if (a=<b) x++;C. if (a<>b) x++;D. if (a=>b) x++;9. 声明或定义一个内联函数时,必须在函数开始使用保留字 [ ]A. staticB. constC. externD. inline10. 在下面的函数声明中,存在着语法错误的是 [ ]A. BC(int a, int);B. BC(int, int);C. BC(int, int=5);D. BC(int x; int y);11. 将两个字符串连接起来组成一个字符串时,选用的函数是 [ ]A. strlen()B. strcpy()C. strcat()D. strcmp()12. 在程序中,预处理命令开头的字符都是 [ ]A. *B. #C. &D. @13. 若已知“char str[20];”,有语句“cin>>str;”,当输入为:This is a program 时,所得的结果是str= [ ]A. This is a programB. ThisC. This isD. his is a14. 在下面的do循环语句中,其循环体被执行的次数为 [ ]int i=0;do { i++; }while(i*i<10);A. 4B. 3C. 5D. 215. 在下面的一维数组定义中,有语法错误的语句是 [ ]A. int a[ ]={1,2,3};B. int a[10]={0};C. int a[ ];D. int a[5];16. 下面的保留字中,不能作为函数的返回类型 [ ]A. voidB. intC. newD. long17. 下面的函数声明中,“void BC(int a, int b);”的重载函数是 [ ]A. int BC(int x, int y);B. void BC(int a, char b);C. float BC(int a, int b, int c=0);D. int BC(int a, int b=0);18. 假定AB为一个类,则该类的复制构造函数的声明语句为 [ ]A. AB&(AB x);B. AB(AB x);C. AB(AB* x);D. AB(AB&);19. C++程序的基本功能模块为 [ ]A. 表达式B. 标识符C. 语句D. 函数20. 函数模板:“template <class T> T add(T x, T y){return x+y;}”,下列对add函数的调用不正确的是 [ ]A. add<>(1,2)B. add<int>(1,2)C. add(1.0, 2)D. add(1.0,2.0)21. 在下面的一维数组定义中,有语法错误的是 [ ]A. int a[ ]={1,2,3};B. int a[10]={0};C. int a[ ];D. int a[5];22.C++语言中的每条简单语句是以哪个符号作为结束符的 [ ]A. 分号B. 逗号C. 空格D. 换行符23. 设“int f(int); ”和“int g(int); ”是函数f和g的原形,以下将f作为语句调用的是[ ]A. g(f(3))B. f(g(3));C. g(f(3)+2);D. p=f(g(3)+1);24. 下面对构造函数和析构函数正确定义的项是 [ ]A. X::X(参数), X::~X()B. void X::X(), void X::~X()C. X::X(参数), X::~X(参数)D. void X::X(参数), void X::~X(参数)25. 在下列double型常量表示中,错误的是 [ ]A. E15;B. .35;C. 3E5;D. 3E-526. 下列各运算符中,优先级最低的是 [ ]A. ?:B. |C. ||D. !=27. 下列定义中,定义指向数组的指针p的是 [ ]A. int *p[5];B. int (*p)[5]C. (int *)p[5]D. int *p[ ];28. 设有以下定义:void f1(int * m, long & n);int a;long b;则以下调用合法的是 [ ]A. f1(a,b)B.f1(&a,b)C. f1(a,&b)D.f1(&a,&b)29. 下列各类变量中,不是局部变量的是 [ ]A. register int x; B.void f(int w)C.int z; D.static int y;(定义在函数外)30. 已知p是一个指向类A数据成员m的指针,A1是类A的一个对象。
2010上全国信息技术水平考试计算机程序设计技术水平证书(C语言)

C语言测试试卷第一大题:单选题(45 分)1. (1.5分)执行下面程序后,输出的结果是()。
#include<stdio.h>void main( ){int a=8,b=5,t;if((b = a)>0) t=a+b;printf("%d\n",t);}(A) 20 (B) 16(C) 13 (D) 语法错,无输出结果2. (1.5分) 执行下面程序后,输出的结果是()。
#include <stdio.h>void main( ){ int i;for(i=10;i>1;i--);printf("%d\n",--i);}(A) 2 (B) 1(C) 0 (D) -13.(1.5分)在一个C语言源程序文件中,如要定义一个只允许源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是()。
(A) static (B) auto (C) register (D) float4. (1.5分) 下列语句中错误的是()。
(A) int x=l;x++;(B) int x=0;(x+1)++;(C) int x=2.3;(x++)+1;(D) int x=l,y=l;(x++)+(y--);5. (1.5分)下列程序的输出结果是()。
#include<stdio.h>void main( ){ int y=6;while(--y);printf("y=%d",y);}(A) y=0 (B) while无限循环(C) y=-1 (D) y=随机数6. (1.5分) 下列程序的输出结果是()。
#include<stdio.h>int F(char *S){ char *p=S;while(*p!='\0') p++;return(p-S);}void main( ){ printf("%d\n",F("canon\n"));}(A) 5 (B) 6(C) 7 (D) 87. (1.5分) 下列程序的输出结果是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1页 共4页
2010年小学生程序设计竞赛上机试题
一.题目概览
中文题目名称 旅行 IP地址 理发 数学老师的难题
英文题目名称 travel ipadress haircut problem
提交文件名 travel.pas ipadress.pas haircut.pas Problem.pas
输入文件名 travel.in ipadress.in haircut.in problem.in
输出文件名 trave.out ipadress.out haircut.out problem.out
每个测试点时限 1秒 1秒 1秒 1秒
测试点数目 10 10 10 10
每个测试点分值 10 10 10 10
注意事项:
请严格按题目要求,包括提交文件名、输入输出文件名,否则将严重影响得分。
1.旅行
(travel.pas)
【问题描述】
帅帅和随同爸爸一起开车去旅行。但是车上的里程表坏了,所以他们不知道他们行驶了多少英里?
幸运的是,帅帅有一只完好的秒表,所以他们可以把汽车的速度和行驶总时间记录下来。然而,他们
的记录方法有些奇怪。他们需要你帮忙计算他们驾驶的总路程。作为一个程序员,你打算写一个程序
来完成这个任务。
例如,如果他们的记录如下:
速度(公里/小时) 总共驾驶时间(时)
20 2
30 6
10 7
这意味着他们有两个小时以20公里/小时的速度行驶,然后6-2=4小时里他们以30公里/小时的速
度行驶,7-6=1小时里他们以10公里/小时的速度行驶。他们总共行驶过的路程为2*20 + 4*30 + 1*10 =
40 + 120 + 10 = 170公里。注意所有的驾驶时间都是从他们的旅行开始时开始计算的,而不是从他们之
前的记录开始计算的。
【输入】
第2页 共4页
输入文件travel.in的第一行为一个整数n,1<=n<=10,接下来有n对数值,每行一对。第一个值s
是速度,第二个值t是行驶总时间。s和t都是整数,1<=s<=90,1<=t<=12。T总是按照严格递增的顺
序输入的。
【输入】
输出文件travel.out包含一个整数,表示他们行驶了多少公里,最后用一个空格隔开,输出一个单
词"miles"。
【输入输出样例】
travel.in travel.out
3 20 2 40 30 6 120 10 7 10 170 miles
2.IP地址
(ipadress.pas)
【问题描述】
众所周知,在电话通讯中,电话用户是靠电话号码来识别的。同样,在网络中为了区别不
同的计算机,也需要给计算机指定一个号码,这个号码就是“IP地址”。
所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址。按照TCP/IP协议规定,
IP地址用二进制来表示,每个IP地址长32bit,比特(bit)换算成字节,就是4个字节。例如一个采用
二进制形式的IP地址是“00001010000000000000000000000001”,这么长的地址,人们处理起来也
太费劲了。为了方便人们的使用,IP地址经常被写成十进制的形式,中间使用符号“.”分开不同的字节。
于是,上面的IP地址可以表示为“10.0.0.1”。IP地址的这种表示法叫做“点分十进制表示法”,这显然比
1和0容易记忆得多。
现在需要从文件中读入一串代表着IP地址的二进制数。你的任务是将一个由0和1组成的32位
二进制串转化成一个“点分十进制表示法”IP地址。这样的IP地址应该由4个数组成,每个数依次代表
这个二进制串的8个位。为了便于你将一个正二进制数转换为一个正十进制数,特别为你需要知道2
的前8位对应的十进制数如下:
72 62 52 42 32 22 12 0
2
128 64 32 16 8 4 2 1
【输入】
输入文件ipadress.in只有一行,为一个待转换的二进制串。
【输出】
第3页 共4页
输出文件ipadress.out只有一行,为一个转换后的带点的IP地址。
【输入输出样例】
ipadress.in ipadress.out
11001011100001001110010110000000 203.132.229.128
3.理发
(haircut.pas)
【问题描述】
帅帅是一位很爱观察、很爱思考的小学生。他家的正对面有一间理发店,经过观察他发现:理发
店共有N(N<=255)位师傅给顾客理发,当然一个师傅一次只能为一个顾客服务,为一个人服务完了
之后可以马上给另一个人服务。帅帅对于进出店内顾客情况作为很详细的记录,他用大写字母A..Z来
表示不同的人,但现在的人们生活节奏很快,时间很宝贵,如果进来的顾客数量不大于理发店师傅的
人数则所有的顾客都可以得到服务,但如果进来的顾客人数多于师傅人数,则意味着有些顾客会离开,
因为他们不愿意等。你的任务是帮助帅帅计算有多少个顾客因得不到服务而离开?以便帅帅能够给理
发店的老板一些建议。
【输入】
输入文件haircut.in为两行,第一行为一个数N。第二行为一串字符,其中的字母是成对出现的。
每一对字母代表同一个客人,当然第一个代表他的到来第二个代表他的离去。字符串的长度不大于255。
【输出】
输出文件haircut.out为一个数,如果每个顾客都能得到服务就输出0,否则就输出多少个客人因得
不到服务而离去。
【输入输出样例1】
haircut.in haircut.out
2
ABBAJJ
0
【输入输出样例2】
haircut.in haircut.out
3
GACCBDDBAG
1
【样例解释】
对于样例1,前两位顾客A、B依次进来,时此刚好有两位师傅为他们服务,此后B、A相继离开,
此时两位师傅处理空闲状态,第三位顾客J进来,理完发后离开。因此所有的顾客都得到了服务,输
出0。
第4页 共4页
对于样例2, 前三位顾客G、A、C,都能得到服务,因为店里有三位理发师傅,第三位顾客C
离开后,有一位师傅处于空闲状态,因此第四位顾客B也能得到服务,第五位顾客D进店后,发现三
位师傅正在为顾客G、A、B理发,因此D会离开,此时D得不到服务,然后顾客B、A、G相继离开,
整个过程结束。因此只有一位顾客D得不到服务,输出1。
4. 数学老师的难题
(problem.pas)
【问题描述】
学好数学是学好计算机的一个重要基础,毕竟早期计算机科学是数学科学的一个重要分支。帅帅
也明白这个道理,因此,帅帅在学校既参加了数学兴趣班也参加了计算机兴趣班。但帅帅马上就要参
加2010年东莞市小学程序设计竞赛了,因此就暂停了数学兴趣班的学习,数学老师知道后很生气,后
果很严重,于是数学老师就给帅帅出了一个难题:统计两个正整数t1 , t2 ( t1 < t2 ) 之间的所有数的约
数个数和S,这本是一个很简单的题目,但数学老师为了难倒帅帅,给出的两个数t1、t2的非常大,
为10000000以内的正整数。但帅帅的编程能力还处于入门阶段,希望你能帮他解决这个问题?
【输入】
输入文件problem.in仅包含一行,共有两个整数,表示t1 t2 (用空格分开)
【输出】
输出文件problem.out仅有一个整数,表示t1 , t2之间的约数个数之和。
【输入输出样例】
problem.in problem.out
2 6 13
【样例解释】
2的约数有1,2共2个;
3的约数有1,3 共2个;
4的约数有1,2,4 共3个;
5的约数有1,5 共2个;
6的约数有1,2,3,6 共4个。
所以2到6 的约数个数为13
【数据规模】
对于50 %的数据,保证有t1,t2<=5000000
对于全部的数据,保证有t1,t2<=10000000