知识点:strcmp()
strcmp()函数是根据ACSII码的值来比较两个字符串的;strcmp()函数首先将s1字符串的第一个字符值减去s2第一个字符,若差值为零则继续比较下去;若差值不为零,则返回差值。
(顺序比较,若不同返回)
【本来写了个循环,一个个比较的,但是忘了处理停止了,成了每一位都比一遍】
#include <stdio.h>
#include <string.h>
int main(){
char max[1001]="0";
char min[1001]="0";
char a[1001]="0";
char b[1001]="0";
int z=0;
while(gets(a)!=NULL){
//puts(b);
int f=0,j=0;
for(int i=0;i<=strlen(a);i++){
if(a[i]!='0'||f==1){
f=1;
b[j]=a[i];
j++;
}
}//去0
//puts(b);
if(strcmp(b,"\0")==0) strcpy(b,"0");
if(strlen(b)>strlen(max))
strcpy(max,b);
else if(strlen(b)==strlen(max)){
if(strcmp(&b[0],max)>0)
strcpy(max,&b[0]);
}//最大值
//puts(max);
if(z==0){
z=1;
strcpy(min,b);//给min赋值 ,使之参与
}
if(strlen(b)<strlen(min))
strcpy(min,b);
else if(strlen(b)==strlen(min))
if(strcmp(&b[0],min)<0){
strcpy(min,&b[0]);
}//最小值
// puts(min);
}
printf("The maximum value is : %s\n",&max);
printf("The minimum value is : %s\n",&min);
}