Упражнения на C: печать всех уникальных элементов массива
C Array: Упражнение 6 с решением
Напишите программу на C для печати всех уникальных элементов в массиве.
Иллюстрированная презентация:
Пример решения:
Код C:
#include <stdio.h>
void main()
{
int arr1[100], n,ctr=0;
int i, j, k;
printf("\n\nPrint all unique elements of an array:\n");
printf("------------------------------------------\n");
printf("Input the number of elements to be stored in the array :");
scanf("%d",&n);
printf("Input %d elements in the array :\n",n);
for(i=0;i<n;i++)
{
printf("element - %d : ",i);
scanf("%d",&arr1[i]);
}
/*Checking duplicate elements in the array */
printf("\nThe unique elements found in the array are : \n");
for(i=0; i<n; i++)
{
ctr=0;
/*Check duplicate bifore the current position and
increase counter by 1 if found.*/
for(j=0; j<i-1; j++)
{
/*Increment the counter when the seaarch value is duplicate.*/
if(arr1[i]==arr1[j])
{
ctr++;
}
}
/*Check duplicate after the current position and
increase counter by 1 if found.*/
for(k=i+1; k<n; k++)
{
/*Increment the counter when the seaarch value is duplicate.*/
if(arr1[i]==arr1[k])
{
ctr++;
}
}
/*Print the value of the current position of the array as unique value
when counter remain contains its initial value.*/
if(ctr==0)
{
printf("%d ",arr1[i]);
}
}
printf("\n\n");
}
Пример вывода:
Распечатать все уникальные элементы массива: ------------------------------------------ Введите количество элементов, которые будут сохранены в массиве: 3 Введите 3 элемента в массиве: элемент - 0: 1 стихия - 1: 5 стихия - 2: 1 Уникальные элементы, найденные в массиве: 5
Блок - схема:
Редактор кода программирования C:
Улучшите этот пример решения и опубликуйте свой код через Disqus.
Previous: написать программу на C для подсчета общего количества дублирующихся элементов в массиве.
Далее: Запишите программу на C для объединения двух массивов одинакового размера, отсортированных в порядке убывания.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code