当前位置:   article > 正文

华为:输入整数字符串,求最大数与最小数之和_】字符串中所有整数的最小和

】字符串中所有整数的最小和

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

int comp(const void *a,const void *b)
{
 return *(char *)b - *(char *)a;
}


int main()
{
 char in[200];
 char pos[51];
 char neg[51];
 int len1;
 int i,k1,k2;
 while(scanf("%s",in)!=EOF)
 {
  len1 = strlen(in);
 // printf("%s",in);
  k1 = 0;
  k2 = 0;
  for(i=0;i<len1;)
  {
   if(in[i] < '9' && in[i] >'0'){
    pos[k1] = in[i];
     k1 ++;
     i++;
   }
   else if(in[i] == ',')
   {
    i++;
   }else if(in[i] == '-')
   {
    neg[k2] = in[++i];
    k2++;
    i++;
   }
  }
  
  qsort(pos,k1,sizeof(pos[1]),comp);
  qsort(neg,k2,sizeof(neg[1]),comp);
    
  int min,max;
  min = 0;
  max = 0;
  int result;
  if(k1 == 0 && k2!=0) //全是负数
  {
   result = -((neg[0] - '0')+(neg[k2-1] - '0'));
  }
  else if(k1 != 0 && k2!=0)
  {
   result = (pos[0] - '0')-(neg[0] - '0');
  }else
  {
   result = (pos[k1-1] - '0')+(pos[0] - '0');
  }

  printf("输出:%d",result);
 
 }

 return 0;
}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/615452
推荐阅读
相关标签
  

闽ICP备14008679号