Chinaunix首页 | 论坛 | 博客
  • 博客访问: 22324
  • 博文数量: 69
  • 博客积分: 1545
  • 博客等级: 上尉
  • 技术积分: 735
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-03 14:17
个人简介

fdsfdsfdsfds

文章分类

全部博文(69)

文章存档

2014年(8)

2012年(61)

我的朋友

分类: Java

2012-04-06 19:38:00

import java.util.*;
public class Main {
  public static void main(String args[]){
 Scanner cin=new Scanner(System.in);
 while(true){
String s1=cin.next();
String s2=cin.next();
if(s1.equals(0)&&s2.equals(0)) break;
char[] c1=s1.toCharArray();
char[] c2=s2.toCharArray();
 
if(c1[0]!='-'&&c2[0]!='-'){
if(c1.length>c2.length) System.out.println("a>b");
else if(c1.length
}else if(c1.length==c2.length){
for(int i=0;i
{
if(c1[i]>c2[i]) {System.out.println("a>b");break;}
else{
System.out.println("a
}
}
}
}else  if(c1[0]=='-'&&c1[0]==c2[0]){  //均为负的时候符号相等的时候
if(c1.length>c2.length) System.out.println("a
else if(c1.lengthb");
}else if(c1.length==c2.length){
for(int i=0;i
{
if(c1[i]>c2[i]) {System.out.println("a
else{
System.out.println("a>b");break;}
}
}
}
else if(c1[0]!='-'&&c2[0]=='-')System.out.println("a>b");  //符号不等的时候
else if(c1[0]=='-'&&c2[0]!='-')System.out.println("a
 }
  }
}

有几个问题:1、if(s1.equals(0)&&s2.equals(0)) break;
java对于数字的0和字符串的“0”不能等同
应该改为:if(s1.equals("0")&&s2.equals("0")) break;才可以退出
2、对于上程序,逻辑有误
 for(int i=0;i
 {
 if(c1[i]>c2[i]) {System.out.println("a
 else{
 System.out.println("a>b");break;}
 }
会每次循环都输出System.out.println ("a>b");

以上代码有几个问题改为如下--通过:
import java.util.*;
public class Main {
  public static void main(String args[]){
 Scanner cin=new Scanner(System.in);
 
 while(true){
String c1=cin.next();
String c2=cin.next();
boolean f=true;
if(c1.equals("0")&&c2.equals("0")) break;
         
          
if(c1.charAt(0)!='-'&&c2.charAt(0)!='-'){ //均为正
if(c1.length()>c2.length()) System.out.println("a>b");
else if(c1.length()
}else if(c1.length()==c2.length()){
for(int i=0;i
{
if(c1.charAt(i)>c2.charAt(i)) {System.out.println("a>b");f=false;break;}
else if(c1.charAt(i)
System.out.println("a
}
}
if(f)System.out.println("a==b");
}
}else  if(c1.charAt(0)=='-'&&c1.charAt(0)==c2.charAt(0)){  //均为负的时候符号相等的时候
if(c1.length()>c2.length()) System.out.println("a
else if(c1.length()b");
}else if(c1.length()==c2.length()){
for(int i=0;i
{
if(c1.charAt(i)>c2.charAt(i)) {System.out.println("a
else if(c1.charAt(i)
System.out.println("a>b");f=false;break;}
}
if(f) System.out.println("a==b");
}
}
else if(c1.charAt(0)!='-'&&c2.charAt(0)=='-')System.out.println("a>b");  //符号不等的时候
else if(c1.charAt(0)=='-'&&c2.charAt(0)!='-')System.out.println("a
 }
  }
}

c++:
 
#include
#include
using namespace std;

int main()
{
string a,b;
while(cin>>a>>b)
{
if(a=="0"&&b=="0")
return 0;
if(a==b)
cout<<"a==b"<
else if(a[0]=='-'&&b[0]=='-')
{
if(a.substr(1,string::npos)>b.substr(1,string::npos)||a.length()>b.length())
cout<<"a
else cout<<"a>b"<
}
else if(a>"0"&&b>"0"||a<"0"&&b<"0"&&a.length()>b.length()||a>b)
cout<<"a>b"<
else if(a<"0"&&b>"0"&&a.length()>b.length()||a>b)
cout<<"a
}
}        
阅读(177) | 评论(0) | 转发(0) |
0

上一篇:hdu 62 未果--后提交

下一篇:hdu77

给主人留下些什么吧!~~