数组中各数位数和比较大小并输出

一个正整数的复杂度定义为每一位数字求和,如134的复杂度为8,4330的复杂度为10。
现输入一组正整数(以空格隔开各数,一组正数据有5个数,按回车键结束该组数字输入),请输出其中最大的复杂度以及对应的数;如复杂度相同,则输出数值最大的。程序应能多次输入数字组,输入任意非数字键后程序退出。

一个有点复杂的实现,供参考:


#include  <stdio.h>

//计算复杂度 
int calculateComplex(int num){
    

    int complex=0;
    int position;
    
    while(num!=0){
        position=num%10;//用求10的余获取num各位的值 
        complex+=position; //累积每个数位的值到复杂度变量 
        num=num/10;  //num除以10,以便下一次获取下个数位的值 
    }  
    
    return complex;
    
}

int main(void){
    
    int num[6];
    int i=0,j,k;

    int get=0; //每轮输入获取到了几个数字 
    int over=0;  //循环退出标记 
    int result;  //复杂度最高并且值最大的数 
    int maxcomplex=0;  //最高的复杂度变量 

    
//    scanf("%d",&i);
//    printf("%d\n",calculateComplex(i));    
//    
    printf("请输入5个正整数:\n");
    while(over==0){  //如果达到不到退出要求,则一直循环 
        
        
        while(get!=5){  //如果没有获取到5个整数,就一直获取 
        //    printf("get=%d,i=%d\n",get,i);
            j = scanf("%d",&num[i]);
            if(j==1){ //如果获取到一个整数,则get+1 
                get++;
                i++;  //开始获取下一个整数 
            }
            
        }
        
        for(k=0;k<5;k++){
        //    printf("2\n");
            //如果和复杂度最高一样,则获取值最大的数 
            int tempcomplex=calculateComplex(num[k]);            
            if(tempcomplex==maxcomplex){
                
                if(result<num[k]){
                    result=num[k];
                }                 
                continue; //开始下一轮判断                
            } 
                
            //求复杂度更高的数        
            if(tempcomplex>maxcomplex){
                maxcomplex=tempcomplex;
                result=num[k];    
                            
            }
            

                        
        }
        //打印此轮比较结果 
        printf("复杂度最大的数是:%d, 它的复杂度是:%d.\n",result,maxcomplex) ;
        
        //开始下一轮五个数的复杂度判断,标记和小标再次初始化 
        maxcomplex=0; 
        i=0;
        printf("请输入5个正整数:\n");
        j=scanf("%d",&num[i]);
        i++;
    //    printf("3\n");
        if(j==0){ //如果输入了非数字字符,退出 
            over=1;
        }else{
            get=1;
        } 
        
    }
     
     printf("程序退出!\n"); 
} 

img