编程题.docx

上传人:b****7 文档编号:9123385 上传时间:2023-02-03 格式:DOCX 页数:6 大小:15.96KB
下载 相关 举报
编程题.docx_第1页
第1页 / 共6页
编程题.docx_第2页
第2页 / 共6页
编程题.docx_第3页
第3页 / 共6页
编程题.docx_第4页
第4页 / 共6页
编程题.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

编程题.docx

《编程题.docx》由会员分享,可在线阅读,更多相关《编程题.docx(6页珍藏版)》请在冰豆网上搜索。

编程题.docx

编程题

第一题:

定义方法

(一)基本算法

37.请编写方法intrevInt(inta),该方法的功能是返回与十进制正整数a的数字顺序相反排列的正整数。

如已知正整数1234,方法返回值是4321。

intrevInt(inta){

intb=0,g;

while(a>0){

g=a%10;b=b*10+g;a=a/10;

}

returnb;

}

练习:

请编写方法intgetSum(intx),该方法的功能是返回正整数x的各位数字的和。

intrevInt(intx){

intb=0,g;

while(x>0){

g=x%10;b=b+g;x=x/10;

}

returnb;

}

请编写方法doublegetSum(intx),该方法的功能是返回正整数x的各位数字的平均值。

doublerevInt(intx){

intb=0,g,n=0;

while(x>0){

g=x%10;b=b+g;x=x/10;n++;

}

return(double)b/n;

}

37.编写方法doublesumS(intn),已知参数n,求以下表达式前n项的和S返回。

s=2/1+3/2+5/3+8/5+13/8+……注:

下一项的分母=上一项的分子,下一项的分子=上一项的分子与分母的和。

doublesumS(intn){编写方法voidstrReverse(Stringstr),该方法的功能是输出一个新字符串,新字符串字符排列顺序与原字符串str的字符排列顺序相反。

例如,strReverse(″ABCD″)所输出的结果是″DCBA″。

请使用字符串与字节数组的相互转换方法进行设计。

voidstrReverse(Stringstr){

Stringn="";

for(inti=0;i<=()-1;i++){

n=n+()-1-i,()-i);

}

strReverse(Stringstr){

byteb[]=();bytet;

for(inti=0;i<2;i++){

t=b[i];b[i]=b[];b[]=t;

}

Stringn=newString(b);

请编写方法intcountNum(Stringstr),该方法的功能是统计已知字符串str中数字的个数。

例如,countNum("A42B83C2D")的返回值是5。

intcountNum(Stringstr){

intn=0;

byteb[]=();编写方法doubleaverageOfArray(double[]a),返回非空数组中正数的平均值(数组中可能有非正数元素)。

doubleaverageOfArray(double[]a){

doublesum=;intn=0;

for(inti=0;i<;i++){

if(a[i]>0){sum=sum+a[i];n++;}编写方法intcountOddNum(int[]a),该方法的功能是求已知数组a中奇数的个数。

要求根据方法的功能写出方法的代码。

intcountOddNum(int[]a){

intn=0;

for(inti=0;i<;i++){

if(a[i]%2!

=0)n++;

}

returnn;

}

37.编写方法int[]delete(int[]a,intd),方法将创建一个新数组b,新数组b中只包含原数组中所有值不等于d的元素,并返回该新数组b。

int[]delete(int[]a,intd){

intn=0,k=0;请编写方法int[]cubeArray(int[]a),返回一个新数组b,数组b的长度与参数数组的长度相同,其元素的值是参数数组对应各元素值的立方。

int[]cubeArray(int[]a){

intb[]=newint[];

for(inti=0;i<;i++){

b[i]=a[i]*a[i]*a[i];

}

returnb;

}

37.编写方法int[]arrayReverse(int[]a),该方法的功能是返回一个新的数组b,新数组的元素排列顺序与参数数组的元素排列顺序相反。

int[]arrayReverse(int[]a){

intb[]=newint[],n=0;

for(inti=;i>=0;i--){

b[n]=a[i];n++;编写一个方法intfindMaximum(int[][]numbers),要求该方法返回二维数组中元素的最大值。

intfindMaximum(int[][]numbers){

intmax=numbers[0][0];ength;j++){ength][];ength;j++){

b[j][i]=a[i][j];

}

}

returnb;

}

第二题:

图形用户界面设计题

1、完成界面设计(界面的设计:

JFrame;布局:

FlowLayout、BorderLayout、GridLayout、CardLayout,null;常用组件:

JLabel、JTextField、JButton、JTextArea、JPanel……;事件处理)

(1)JFrame的应用

import.*;

import.*;

classMFrameextendsJFrame{

MFrame(Strings){

super(s);

;

import.*;

importMFrameextendsJFrameimplementsActionListener{

MFrame(Strings){

super(s);

//布局

//组件创建与加载

//为事件源添加监视器

();//(300,200);(300,200,400,500);

(true);

;

}

//重写事件处理的方法

publicvoidactionPerformed(ActionEvente){

if()==事件源对象){

//具体的事件处理内容

}

}

}

举例:

2013年10月

(3)事件处理中的两种常见问题:

a、文本框中数字的运算

doublec=());//将文本框的内容转换为数字

doublef=c*9/5+32;

(f+””);//(h));//将运算结果转换为字符串写回文本框

举例:

2010年10月、2011年1月

b、字符串的分析

publicvoidactionPerformed(ActionEvente){

if(()==button){

Strings=();doublesum=0;

StringTokenizerfenxi=newStringTokenizer(s,",\n");//创建字符串分析对象

while()){//循环访问分析后的子串

sum=sum+());//将子串转换为数字参与运算

}

(sum+””);//将结果写回文本框

}

}

举例:

2009年10月、2012年1月、2012年10月、2015年4月

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1