NYOJ 73 比大小

原题链接

这题不需要考虑+123 +456的情况,所以就简单了一些。


附ac代码:

#include <stdio.h>
#include <string.h>
#define MAX 1000 + 1
char a[MAX], b[MAX];

int main(){
	int x, y;
	while(scanf("%s%s", a, b) == 2){
		if(a[0] == b[0] && a[0] == '0') break;
		x = strlen(a); y = strlen(b);
		if(a[0] != '-' && b[0] != '-'){
			if(x > y) printf("a>b\n");
			else if(x == y){
				int i = 0;
				for(; i != x; ++i)
					if(a[i] == b[i]) continue;
					else if(a[i] > b[i]) {printf("a>b\n"); break;}
					else {printf("a<b\n"); break;}
				if(i == x) printf("a==b\n");
			}			
			else printf("a<b\n");
		}
		else if(a[0] != '-' && b[0] == '-')
			printf("a>b\n");
		else if(a[0] == '-' && b[0] != '-')
			printf("a<b\n");
		else{
			if(x > y) printf("a<b\n");
			else if(x == y){
				int i = 0;
				for(; i != x; ++i)
					if(a[i] == b[i]) continue;
					else if(a[i] > b[i]) {printf("a<b\n"); break;}
					else {printf("a>b\n"); break;}
				if(i == x) printf("a==b\n");
			}			
			else printf("a<b\n");
		}
	}
	return 0;
}


posted on 2014-02-12 01:08  长木Qiu  阅读(126)  评论(0编辑  收藏  举报