| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 734 人关注过本帖
标题:向大家请教一个问题
只看楼主 加入收藏
云中雾
Rank: 1
等 级:新手上路
威 望:1
帖 子:168
专家分:3
注 册:2005-12-30
收藏
 问题点数:0 回复次数:12 
向大家请教一个问题
62pxH31i.txt (16.61 KB) 向大家请教一个问题



以上是我编的一个程序,一切功能都可以实现,但就上在我实现删除功能之后再调用添加功能时就有点问题,但实现其他功能再调用添加功能就没问题了,请各位帮解决一下,谢谢~~~~~~~
搜索更多相关主题的帖子: 删除 
2006-10-23 19:17
云中雾
Rank: 1
等 级:新手上路
威 望:1
帖 子:168
专家分:3
注 册:2005-12-30
收藏
得分:10 
帮解决一下撒

白色的忧郁让我白色的思念从洁白到苍白,从苍白到空白,比空白更空白,变成深白的坦白!
2006-10-23 19:36
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 

玛雅,我的姐姐呀!你写的程序太好看了!我帮你把它贴出来!
import javax.swing.*;
class IndexIterm{ //数据类
String name;
String number;
String grade;
String scorse;
}

class method{ //方法类
IndexIterm tel[] = new IndexIterm[30000]; //定义一个大小30000的数组
int m=0; //全局变量

public int menu(){ //菜单函数
String a=JOptionPane.showInputDialog("1、添加新内容\n"+"2、查询一项记录\n"
+"3、删除一项记录\n"+"4、修改一项记录\n"+"5、输出\n"+"0、退出");
int b=Integer.parseInt(a);
return b;
}

public void init(){//初始化函数,为tel分配内存空间
for(int i=0;i<tel.length;i++){
tel[i]=new IndexIterm();
}
}

public void add(){//添加函数
//第一次调用时,m=0
String n=JOptionPane.showInputDialog("你想输入多少个记录?");
int y=Integer.parseInt(n);
for(int i=0;i<y;i++){//以y为上限,确定每次输入一定的记录
String name=JOptionPane.showInputDialog("请输入姓名");
tel[m].name=name;
String number=JOptionPane.showInputDialog("请输入学号");
tel[m].number=number;
String a=JOptionPane.showInputDialog("请输入学位级别(1-研究生,2-本科生)");
int b=Integer.parseInt(a);
if(b==1){//研究生成绩输入
tel[m].grade="研究生";
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=90&&c<=100)
tel[m].scorse="优秀";
else if(c>=80)
tel[m].scorse="良好";
else if(c>=70)
tel[m].scorse="中等";
else if(c>=60)
tel[m].scorse="合格";
else if(c>=0&&c<=60)
tel[m].scorse="不合格";
}
else if(b==2){//本科生成绩输入
tel[m].grade="本科生";
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=85&&c<=100)
tel[m].scorse="优秀";
else if(c>=75)
tel[m].scorse="良好";
else if(c>=65)
tel[m].scorse="中等";
else if(c>=50)
tel[m].scorse="合格";
else if(c>=0&&c<=60)
tel[m].scorse="不合格";
}
m++;
}

}

public void index(){//查询函数
String output1="";
JTextArea outputArea=new JTextArea(15,27);
JScrollPane out=new JScrollPane(outputArea);
output1+="学号"+"\t"+"姓名"+"\t"+"学位级别"+"\t"+"成绩\n";
String dt=JOptionPane.showInputDialog("1、按学号查询\n"+"2、按名字查询\n"+"0、退出删除");
int a=Integer.parseInt(dt);
if(a==1){//按学号查询
String number=JOptionPane.showInputDialog("请输入学号");
for(int i=0;i<m;i++){
boolean t=number.equals(tel[i].number); //输入number与tel[i].number比较
if(t==true){//成功匹配
output1+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output1);
JOptionPane.showMessageDialog(null,out,"查询结果",JOptionPane.PLAIN_MESSAGE);//输入查询结果
}
}
}
if(a==2){//按名字查询
String name=JOptionPane.showInputDialog("请输入姓名");
for(int i=0;i<m;i++){
boolean t=name.equals(tel[i].name); //输入name与tel[i].name比较
if(t==true){//匹配成功
output1+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output1);
JOptionPane.showMessageDialog(null,out,"查询结果",JOptionPane.PLAIN_MESSAGE);//输出查询结果
}
}
}
if(a==0){//退出查询
JOptionPane.showMessageDialog(null,"你将推出查询操作!","重要提示",JOptionPane.WARNING_MESSAGE);
}
}

public void detele(){//删除函数
String output3="";
JTextArea outputArea=new JTextArea(15,27);
JScrollPane out=new JScrollPane(outputArea);
output3+="学号"+"\t"+"姓名"+"\t"+"学位级别"+"\t"+"成绩\n";
String dt=JOptionPane.showInputDialog("1、按学号删除项\n"+"2、按名字删除项\n"+"0、退出删除");
int a=Integer.parseInt(dt);
if(a==1){//按学号查询
String number=JOptionPane.showInputDialog("请输入要删除项的学号");
for(int i=0;i<m;i++){
boolean t=number.equals(tel[i].number);//输入学号与tel[i].number比较
if(t==true){//比较相等
output3+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";//临时存储该项记录
for(int k=i;k<m;k++){
tel[k]=tel[k+1];//后面的记录项均前移一位
}
}

}
m--;
outputArea.setText(output3);
JOptionPane.showMessageDialog(null,out,"你所删除的项",JOptionPane.PLAIN_MESSAGE);//输出删除的记录
}
if(a==2){//按名字删除
String name=JOptionPane.showInputDialog("请输入要删除项的名字");
for(int i=0;i<m;i++){
boolean t=name.equals(tel[i].name);
if(t==true){
output3+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
for(int k=i;k<m;k++){
tel[k]=tel[k+1];
}
}
}
m--;
outputArea.setText(output3);
JOptionPane.showMessageDialog(null,out,"你所删除的项",JOptionPane.PLAIN_MESSAGE);
}
if(a==0){//退出删除
JOptionPane.showMessageDialog(null,"你将退出删除操作!","重要提示",JOptionPane.WARNING_MESSAGE);
}

}


♂ 死后定当长眠,生前何须久睡。♀
2006-10-23 22:39
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 

public void repair(){//修改函数,修改学位级别时,成绩也要重新输入
String output2="";
JTextArea outputArea=new JTextArea(15,27);
JScrollPane out=new JScrollPane(outputArea);
output2+="学号"+"\t"+"姓名"+"\t"+"学位级别"+"\t"+"成绩\n";
String dt=JOptionPane.showInputDialog("1、修改学号\n"+"2、修改名字\n"+"3、修改学位级别\n"
+"4、修改成绩\n"+"0、退出");
int a=Integer.parseInt(dt);
if(a==1){//修改学号
String num=JOptionPane.showInputDialog("请输入要修改的学号");
for(int i=0;i<m;i++){
boolean t=num.equals(tel[i].number);//匹配
if(t==true){//匹配成功
String number=JOptionPane.showInputDialog("请输入修改后的学号");
tel[i].number=number;//修改
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
}

}
if(a==2){//修改名字
String nam=JOptionPane.showInputDialog("请输入要修改的姓名");
for(int i=0;i<m;i++){
boolean t=nam.equals(tel[i].name);// 匹配
if(t==true){//匹配成功
String name=JOptionPane.showInputDialog("请输入姓名");
tel[i].name=name;//修改
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
}

}
if(a==3){//修改学位级别
int i;
String dt1=JOptionPane.showInputDialog("1、通过学号来修改\n"+"2、通过名字来修改\n"+"0、退出");
int abc=Integer.parseInt(dt1);
if(abc==1){//按学号来修改学位级别
String num=JOptionPane.showInputDialog("请输入学号");
for( i=0;i<m;i++){
boolean t=num.equals(tel[i].number);
if(t==true){
String gd=JOptionPane.showInputDialog("请输入学位级别(1-研究生,2-本科生)");
int b=Integer.parseInt(gd);
if(b==1){//研究生重新输入成绩
tel[i].grade="研究生";
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=90&&c<=100)
tel[i].scorse="优秀";
else if(c>=80)
tel[m].scorse="良好";
else if(c>=70)
tel[i].scorse="中等";
else if(c>=60)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);//输出修改记录
}
if(b==2){//本科生重新输入成绩
tel[i].grade="本科生";
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=85&&c<=100)
tel[i].scorse="优秀";
else if(c>=75)
tel[i].scorse="良好";
else if(c>=65)
tel[i].scorse="中等";
else if(c>=50)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
}
}


}
if(abc==2){//按名字来修改学位
String nam=JOptionPane.showInputDialog("请输入名字");
for( i=0;i<m;i++){
boolean t=nam.equals(tel[i].name);//与输入name匹配
if(t==true){//匹配成功
String gd=JOptionPane.showInputDialog("请输入学位级别(1-研究生,2-本科生)");
int b=Integer.parseInt(gd);
if(b==1){//研究生重新输入成绩
tel[i].grade="研究生";
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=90&&c<=100)
tel[i].scorse="优秀";
else if(c>=80)
tel[i].scorse="良好";
else if(c>=70)
tel[i].scorse="中等";
else if(c>=60)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
if(b==2){//本科生重新输入成绩
tel[i].grade="本科生";
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=85&&c<=100)
tel[i].scorse="优秀";
else if(c>=75)
tel[i].scorse="良好";
else if(c>=65)
tel[i].scorse="中等";
else if(c>=50)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
}
}

}
if(abc==0){//退出学位级别修改
JOptionPane.showMessageDialog(null,"你将退出学位级别修改","重要提示",JOptionPane.WARNING_MESSAGE);
}
}
if(a==4){//修改成绩
int i;
String dt1=JOptionPane.showInputDialog("1、通过学号来修改\n"+"2、通过名字来修改\n"+"0、退出");
int abc=Integer.parseInt(dt1);
if(abc==1){//通过学号修改
String num=JOptionPane.showInputDialog("请输入学号");
for( i=0;i<m;i++){
boolean t=num.equals(tel[i].number);//找到相应位置
if(t==true){
boolean k=tel[i].grade.equals("研究生");//判断学位级别
if(k==true){//研究生修改成绩
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=90&&c<=100)
tel[i].scorse="优秀";
else if(c>=80)
tel[i].scorse="良好";
else if(c>=70)
tel[i].scorse="中等";
else if(c>=60)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
else{//本科生修改成绩
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=85&&c<=100)
tel[i].scorse="优秀";
else if(c>=75)
tel[i].scorse="良好";
else if(c>=65)
tel[i].scorse="中等";
else if(c>=50)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
}
}
}
if(abc==2){//通过名字修改成绩
String nam=JOptionPane.showInputDialog("请输入名字");
for( i=0;i<m;i++){
boolean t=nam.equals(tel[i].name);//通过 name判断位置
if(t==true){
boolean k=tel[i].grade.equals("研究生");
if(k==true){//研究生
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=90&&c<=100)
tel[i].scorse="优秀";
else if(c>=80)
tel[i].scorse="良好";
else if(c>=70)
tel[i].scorse="中等";
else if(c>=60)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
else{//本科生
String scr=JOptionPane.showInputDialog("请输入成绩(0--100)");
int c=Integer.parseInt(scr);
if(c>=85&&c<=100)
tel[i].scorse="优秀";
else if(c>=75)
tel[i].scorse="良好";
else if(c>=65)
tel[i].scorse="中等";
else if(c>=50)
tel[i].scorse="合格";
else if(c>=0&&c<=60)
tel[i].scorse="不合格";
output2+=tel[i].number+"\t"+tel[i].name+"\t"+tel[i].grade+"\t"+tel[i].scorse+"\n";
outputArea.setText(output2);
JOptionPane.showMessageDialog(null,out,"你所修改的项",JOptionPane.PLAIN_MESSAGE);
}
}
}
}
if(abc==0){//退出成绩修改
JOptionPane.showMessageDialog(null,"你将退出成绩修改","重要提示",JOptionPane.WARNING_MESSAGE);
}
}
if(a==0){//退出修改
JOptionPane.showMessageDialog(null,"你将退出修改程序","重要提示",JOptionPane.WARNING_MESSAGE);
}
}

public void print(){//打印清单
String output="";
output+="学号"+"\t"+"姓名"+"\t"+"学位级别"+"\t"+"成绩\n";
JTextArea outputArea=new JTextArea(15,27);
JScrollPane out=new JScrollPane(outputArea);
for(int j=0;j<m;j++){
output+=tel[j].number+"\t"+tel[j].name+"\t"+ tel[j].grade+"\t"+tel[j].scorse+"\n";
}
outputArea.setText(output);
JOptionPane.showMessageDialog(null,out,"输出清单",JOptionPane.PLAIN_MESSAGE);
}
}

public class examResult{
public static void main(String[] args){
method pt=new method();//定义方法类对象pt
pt.init();//调用初始化函数
int i=pt.menu();//调用菜单
for(int k=0;;k++){
if(i==1){
pt.add();
i=pt.menu();
}
if(i==2){
pt.index();
i=pt.menu();
}
if(i==3){
pt.detele();
i=pt.menu();
}
if(i==4){
pt.repair();
i=pt.menu();
}
if(i==5){
pt.print();
i=pt.menu();
}
if(i==0){
JOptionPane.showMessageDialog(null,"谢谢使用!","实验结果",JOptionPane.PLAIN_MESSAGE);
break;
}
}
System.exit(0);
}
}


♂ 死后定当长眠,生前何须久睡。♀
2006-10-23 22:39
云中雾
Rank: 1
等 级:新手上路
威 望:1
帖 子:168
专家分:3
注 册:2005-12-30
收藏
得分:0 
什么意思啊???

白色的忧郁让我白色的思念从洁白到苍白,从苍白到空白,比空白更空白,变成深白的坦白!
2006-10-26 16:39
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
什么意思.这种简单的问题还是自己思考一下好

可惜不是你,陪我到最后
2006-10-26 17:24
云中雾
Rank: 1
等 级:新手上路
威 望:1
帖 子:168
专家分:3
注 册:2005-12-30
收藏
得分:0 

如果说我代码写的差就直接说,这样有什么意思呢?作为一个初学者,我不怕别人说我代码写的差,有哪个人开始学就可以把代码写的很标准的,我代码发上来是让人帮解决问题的,不是让你们拿来说笑的,如果不解决问题就不要说些莫名其妙的话。免得别人说素质的问题。


白色的忧郁让我白色的思念从洁白到苍白,从苍白到空白,比空白更空白,变成深白的坦白!
2006-10-26 17:33
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
以下是引用云中雾在2006-10-26 17:33:21的发言:

如果说我代码写的差就直接说,这样有什么意思呢?作为一个初学者,我不怕别人说我代码写的差,有哪个人开始学就可以把代码写的很标准的,我代码发上来是让人帮解决问题的,不是让你们拿来说笑的,如果不解决问题就不要说些莫名其妙的话。免得别人说素质的问题。

呵呵,你是说我吗?我可没有说你什么哦
我只是说,这些问题可以自己先思考一下,万一实在是想不出来,再发也不迟啊
是不是?
自己思想得到的东西比别人教的要记得深.记得牢


可惜不是你,陪我到最后
2006-10-26 17:36
云中雾
Rank: 1
等 级:新手上路
威 望:1
帖 子:168
专家分:3
注 册:2005-12-30
收藏
得分:0 
这个问题我是想了好长时间都没有想出来才问的,不过问题我自己已经解决了,任何事情都是要靠自己的。

白色的忧郁让我白色的思念从洁白到苍白,从苍白到空白,比空白更空白,变成深白的坦白!
2006-10-26 20:06
ysf0181
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:55
帖 子:914
专家分:2385
注 册:2006-10-4
收藏
得分:0 
那把你解决的问题发出来,我也是初学者,,,,,,,,,,,,

ASP讨论QQ群:251346273
2006-10-27 07:05
快速回复:向大家请教一个问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017056 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved