View Code of Problem 99

#include<stdio.h>
#include<string.h>

int main(){
	char a[10]={'\0'};
	while(gets(a)!=NULL){
		if(strcmp(a,"0")==0) break;
		else{
			int i,sum=0,j=0,b[5];
			for(i=0;i<=strlen(a);i++){
				if(a[i]!=' '&&a[i]!='\0'){
					sum=sum*10+(a[i]-'0');
				}
				else{
					b[j++]=sum;
					sum=0;
				}
			}
			if(j==1){//输入一个数 
				int k;
				for(k=1;k<=b[0];k++){
					printf("%d",k);
					if(k!=b[0]) printf(" ");
				}
			}
			else if(j==2){//输入两个数 
				if(b[0]>b[1]){
					int k;
					for(k=b[0];k>=b[1];k--){
						printf("%d",k);
						if(k!=b[1]) printf(" ");
					}
				}
				else if(b[0]==b[1]) printf("%d",b[0]);
				else if(b[0]<b[1]){
					int k;
					for(k=b[0];k<=b[1];k++){
						printf("%d",k);
						if(k!=b[1]) printf(" ");
					}
				}
			}
			else if(j==3){//输入三个数 
				if(b[0]>b[1]){
					int k;
					if(b[2]!=0){
						for(k=b[0];k>=b[1];k=k-1-b[2]){
						printf("%d",k);
						if(k-b[1]>=b[2]) printf(" ");						
						}
					}
					else if(b[2]==0){
						for(k=b[0];k>=b[1];k--){
							printf("%d",k);
							if(k!=b[1]) printf(" ");
						}
					}
				}
				else if(b[0]==b[1]) printf("%d",b[0]);
				else if(b[0]<b[1]){
					int k;
					if(b[2]!=0){
						for(k=b[0];k<=b[1];k=k+1+b[2]){
							printf("%d",k);
							if(b[1]-k>=b[2]) printf(" ");						
						}
					}
					else if(b[2]==0){
						for(k=b[0];k<=b[1];k++){
						printf("%d",k);
						if(k!=b[1]) printf(" ");
						}
					}
				}
			}
		}
		printf("\n");
	}
} 

Double click to view unformatted code.


Back to problem 99