1编程题参考答案0001Word文件下载.docx

上传人:b****6 文档编号:18871423 上传时间:2023-01-01 格式:DOCX 页数:7 大小:17.57KB
下载 相关 举报
1编程题参考答案0001Word文件下载.docx_第1页
第1页 / 共7页
1编程题参考答案0001Word文件下载.docx_第2页
第2页 / 共7页
1编程题参考答案0001Word文件下载.docx_第3页
第3页 / 共7页
1编程题参考答案0001Word文件下载.docx_第4页
第4页 / 共7页
1编程题参考答案0001Word文件下载.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

1编程题参考答案0001Word文件下载.docx

《1编程题参考答案0001Word文件下载.docx》由会员分享,可在线阅读,更多相关《1编程题参考答案0001Word文件下载.docx(7页珍藏版)》请在冰豆网上搜索。

1编程题参考答案0001Word文件下载.docx

x=x/10;

}returnb;

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

doublerevInt(intx){

intb=0,g,n=0;

n++;

return(double)b/n;

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

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

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

2015.10

doublesumS(intn){//要特别注意数据类型哟!

inti;

doubles=0.0;

intfz=2,fm=1,temp;

//temp用于保存前一个分母,避免覆盖

for(i=1;

i<

=n;

i++){

temp=fm;

//改变前的分母s=s+(double)fz/fm;

fm=fz;

fz=fz+temp;

returns;

(二)字符串的运算

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

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

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

2010.1voidstrReverse(Stringstr){

Stringn="

"

;

for(int

i=0;

=str.length()-1;

n=n+str.substring(str.length()-1-i,str.length()-i);

System.out.println(n);

}/////////////////////////////////////////////////////voidstrReverse(Stringstr){

byteb[]=str.getBytes();

bytet;

for(inti=0;

b.length/2;

t=b[i];

b[i]=b[b.length-1-i];

b[b.length-1-i]=t;

Stringn=newString(b);

37.请编写方法intcountNum(Stringstr),该方法的功能是统计已知字符

串str中数字的个数。

例如,countNum("

A42B83C2D"

)的返回值是5。

2010.10

intcountNum(Stringstr){

intn=0;

//将字符串转换为字节数组来处理

b.length;

i++){if(b[i]>

=48&

&

b[i]<

=57)n++;

//也可以写成if(b[i]>

='

0'

9'

)n++;

returnn;

(3)数组的运用

37.编写方法intsearchMaxNumIndex(int[]a),寻找已知数组中最大数的下标并返回。

2009.10

intsearchMaxNumIndex(int[]a){intmax=a[0],n=0;

for(inti=1;

a.length;

if(a[i]>

max){max=a[i];

n=i;

}

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

2011.1doubleaverageOfArray(double[]a){

doublesum=0.0;

intn=0;

0){sum=sum+a[i];

n++;

}//注意把这个两个语句放在IF

returnsum/n;

37.请编写方法intcountOddNum(int[]a),该方法的功能是求已知数组a中奇数的个数。

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

2016.10

intcountOddNum(int[]a){

if(a[i]%2!

=0)n++;

37.编写方法int[]delete(int[]a,intd),方法将创建一个新数组b,新数

组b中只包含原数组中所有值不等于d的元素,并返回该新数组b。

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

intn=0,k=0;

//k用来表示下标for(inti=0;

i++)//先计算出b数组的长度

if(a[i]!

=d)n++;

intb[]=newint[n];

//然后定义数组b

i++){if(a[i]!

=d){b[k]=a[i];

k++;

}//注意这里不能用b[i],只能用b[k]

}returnb;

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

2012.10int[]cubeArray(int[]a){

intb[]=newint[a.length];

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

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

2014.4int[]arrayReverse(int[]a){

intb[]=newint[a.length],n=0;

for(inti=a.length-1;

i>

=0;

i--){

b[n]=a[i];

//或者写成b[a.length-i-1]=a[i];

37.请编写一个方法intfindMaximum(int[][]numbers),要求该方法返回二维数组中元素的最大值。

2011.10

intfindMaximum(int[][]numbers){

intmax=numbers[0][0];

//注意max只能初始成第一个元素

numbers.length;

i++){//访问行for(int

j=0;

j<

numbers[i].length;

j++){//访问

行中的列

if(numbers[i][j]>

max)

max=numbers[i][j];

returnmax;

37.编写方法int[][]transpose(int[][]a),方法将生成并返回一个新数组b,该数组为a的转置数组。

注:

数组转置指的是将数组的行、列内容互换。

2013.10int[][]transpose(int[][]a){

intb[][]=newint[a[0].length][a.length];

//a的列数为b的行数,a的行数为b的列数

i++){for(intj=0;

a[i].length;

j++){

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

第二题:

图形用户界面设计题

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

JFrame;

布局:

FlowLayout、BorderLayout、GridLayout、CardLayout,null;

常用组件:

JLabe、lJTextField、JButton、JTextArea、JPane⋯l⋯;

事件处理)

(1)JFrame的应用importjava.awt.*;

importjavax.swing.*;

classMFrameextendsJFrame{

MFrame(Strings){super(s);

//布局

//组件创建与加载

this.pack();

//this.setSize(300,200);

this.setBounds(300,200,400,500);

this.setVisible(true);

this.setDefaultColoseOperation(JFrame.EXIT_ON_COLOSE);

举例:

2009年1月、2010年1月、2014年4月、2015年10月、2016年10月最后一题

(2)事件的处理actionEvent

importjava.awt.*;

importjava.awt.event.*;

classMFrameextendsJFrame

implementsActionListener{

MFrame(Strings){

super(s);

//为事件源添加监视器

this.setBounds(300,200,400,500);

//重写事件处理的方法

publicvoidactionPerformed(ActionEvente){if(e.getSource()==事件源对象){//具体的事件处理内容

}举例:

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

a、文本框中数字的运算double

c=Doble.parseDouble(text1.getText());

//将文本框的内容转换为数字

doublef=c*9/5+32;

text2.setText(f+””);

//text2.setText(String.valueOf(h));

//将运算结果转换为字符串写回文本框举例:

2010年10月、2011年1月b、字符串的分析

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==button){

Strings=textA.getText();

doublesum=0;

StringTokenizerfenxi=newStringTokenizer(s,"

\n"

);

//创建字符串分析对象

while(fenxi.hasMoreTokens()){//循

环访问分析后的子串

sum=sum+Double.parseDouble(fenxi

.nextToken());

//将子串转换为数字参与运算

//将结果

textA.setText(sum+””);

写回文本框

2009年10月、2012年1月、

2012年10月、2015年4月

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

当前位置:首页 > 自然科学

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

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