Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <stdio.h>
- #include <locale.h>
- int interface(int *arr, int amount)
- {
- int numb;
- int *chetn, *nechetn;
- int j=0,k=0;
- printf(" 1 - все четные числа \n 2 - все нечетные числа \n 3 - выйти из массива \n Введите:");
- scanf("%d",&numb);
- for (int i=0; i<amount; ++i)
- {
- if (arr[i] % 2)
- {
- ++j;
- }
- else
- {
- ++k;
- }
- }
- chetn = (int *) malloc(j * sizeof (int));
- nechetn = (int *) malloc(k * sizeof (int));
- j=0;k=0;
- for (int i=0; i<amount; ++i)
- {
- if (arr[i] % 2)
- {
- nechetn[j]=arr[i];
- ++j;
- }
- else
- {
- chetn[k]=arr[i];
- ++k;
- }
- }
- switch(numb)
- {
- case 1:
- for (int i=0;i<k;++i)
- printf("%d",chetn[i]);
- break;
- case 2:
- for (int i=0;i!=j;++i)
- printf("%d",nechetn[i]);
- break;
- case 3: break;
- }
- free(chetn);
- free(nechetn);
- chetn = NULL;
- nechetn=NULL;
- }
- int main(void)
- {
- setlocale(LC_ALL, "Russian");
- int *arr;
- int amount;
- printf("Количество элементов массива:");
- scanf("%d",&amount);
- arr = (int *) malloc(amount * sizeof (int));
- for (int i=0; i<amount; ++i)
- {
- printf("%d элемент массива равен ",i );
- scanf("%d",&arr[i]);
- }
- interface(arr,amount);
- free(arr);
- arr = NULL;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement