题解 | 提取不重复的整数

#include <stdio.h>
void swap(int *a,int *b){//交换函数
    int temp;
    temp = *a;
    *a = *b;
    *b = temp;
}
void reverse(int *a,int start,int end){//数组反转函数
    int i,j;
    i = start;j = end;
    while(i < j){
        swap(&a[i], &a[j]);
        i++;j--;
    }
}
void del_same_arr(int *a,int n){
    int i,j;
    int count ;
    int new = n;
    for(i = 0;i < new - 1;i++){
        count = 0;
        for(j = i + 1;j < new;j++){
            if(a[i] == a[j]){
                count++;
            }else{
                a[j - count] = a[j];
                }
        }
        new = new - count;
    }
    //printf("%d",num);
    for(i = 0;i < new;i++){
        printf("%d",a[i]);
    }
}
int  char_to_int(char *s,int *a){//字符数组转int数组
    
    int i;
    int len = 0;
    for(i = 0;s[i] != '\n';i++){
        len++;
        switch(s[i]){
            case '0':case '1':case '2':case '3':case '4':case '5':case '6': case '7':case '8':case '9': a[i] = s[i] - '0';break;
        };
    }
    return len;
}
int main() {
    char c[10] ;
    fgets(c,10,stdin);
    int a[10] ;
    int len = char_to_int(c,a);
    reverse(a, 0,len - 1);
    del_same_arr(a, len);
    //printf("%d",a[6]);
    return 0;
}

全部评论

相关推荐

2024-12-18 15:11
哈尔滨理工大学 golang
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务