C语言一维数组输入不重复的数

 基础代码,C语言学的不好,多数功能不咋会用

第一种:

#include <stdio.h>

int main()
{
    int a[10];
    
    int i = 0;
    
    int m, m_copy;
    
    scanf("%d", &m);
    m_copy = m+1;
    
    while(1){
        
        if(m != m_copy){
            a[i]=m;
            i++;
            //m_copy保存上次m的值
            m_copy = m;
        }
        
        if(i==10)
            break;
            
        scanf("%d", &m);
        
    }
    
    for(int j=0; j<10; j++){
        printf("%d ", a[j]);
    }

}

第二种:来自百度知道     定义数组a[10],接收键盘输入的数,不管用户输入什么数,数组a只接收不重复的数(第一_百度知道 (baidu.com)

#include<stdio.h>
#define N 10

int main() { 
    int a[N], n, i, b;
    n=0;
    
    while( n < N ){
        
        scanf("%d",&a[n]);
        
        b=0; 
        for(i = 0; i < n; i++)
            if( a[i] == a[n] ){
                b = 1;
                break;
                
            }
            
        if(b==0)
            n++;
    }


    for(i=0;i<N;i++)
        printf("%d ",a[i]);
        
}

猜你喜欢

转载自blog.csdn.net/sdaujz/article/details/110723685