c语言 查找仅出现一次的数

不知道问题出在哪
查找10个数中仅出现一次的数

#include<stdio.h>

int main()
{
    int i,j;
    int c=0;
    int f=0;
    int a[10];
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);

    for(i=0;i<10;i++)
    {
        for(j=0;j<10;j++)
            {   if(j==i)
                continue;
                if(a[j]==a[i])
                {
                c=1;
                break;
                }
            }

         if (c==0)
           {

            printf("%d ",a[i]);

            f=1;
            }

    }

    if(f==0)
    printf("None");
}
```求教

你每次的大循环都需要把判断标志c置零,下面是修改后的程序和运行结果。(只修改了一处,并且已经标记)(着急用C币,还请采纳)

#include

int main()
{
int i,j;
int c=0;
int f=0;
int a[10];
for(i=0;i<10;i++)
scanf("%d",&a[i]);

for(i=0;i<10;i++)
{
    c=0;  //每次最外层循环需要把判断标志c置0; 
    for(j=0;j<10;j++)
        {   if(j==i)
            continue;
            if(a[j]==a[i])
            {
            c=1;
            break;
            }
        }

     if (c==0)
       {

        printf("%d ",a[i]);

        f=1;
        }

}

if(f==0)
printf("None");

return 0;

}

图片说明

#include <stdio.h>

int main()
{
   int i, j;
    int flag = 1, f = 0;
    int a[5];
    for (i = 0; i<5; i++)
        scanf("%d", &a[i]);
    for (i = 0; i < 5; i++){
        flag = 1;
        for (j = 4; j>-1; j--){
            if (a[i] == a[j]&&i!=j){
                flag = 0;
            }   
        }
        if (flag != 0 ){
            printf("%d ", a[i]);
            f = 1;
        }
    }
    if (f == 0)
        printf("NONE");
    return 0;
}