Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #define N 100
- void swap(int *xp, int *yp)
- {
- int temp =*xp;
- *xp=*yp;
- *yp=temp;
- }
- void printarray(int a[],int size)
- {
- for(int i=0;i<size;i++)
- printf("%d ",a[i]);
- }
- }
- void bubblesort(int list[], int n)
- {
- int c,d;
- for(c=0;c<(n-1);c++)
- {
- for(d=0;d<n-c-1;d++)
- {
- if(list[d]>list[d+1])
- {
- swap(&list[d],&list[d+1]);
- }
- }
- }
- }
- int main()
- {
- int arr1[N],arr2[N],arr3[N],arr4[N];
- int opciq,razmer1=0,razmer2=0,razmer3=0,razmer4=0;
- FILE *f;
- printf("Izberete:\n1.Nov masiv\n2.Masiv ot fail\n");
- scanf("%d",&opciq);
- switch(opciq)
- {
- case 1: //ako e napisal 1
- printf("Razmer na masiva: ");
- scanf("%d",&razmer1);
- for(int i=0;i<razmer1;i++)
- {
- scanf("%d",&arr1[i]);
- }
- break;
- case 2: //ako e napisal 2
- f=fopen("masiv.txt","r"); //otwarqme faila masiv.txt w rejim chetene (r)
- if(f==0)
- {
- printf("\nNe moje da se otvori failut.\n");
- system("pause");
- return 0;
- }
- while(fscanf(f,"%d",&arr1[razmer1++])!=EOF);
- razmer1--;
- fclose(f); //zatwarqme faila f;
- break;
- default: // ako e napisal nsh drugo
- printf("Nevaliden izbor");
- system ("pause");
- return 0;
- case 3:
- String fail;
- printf("mestopolozhenieto na fai?la: ");
- scanf("%s", &fail);
- f=fopen(fail, "r");
- if(f==0)
- {
- printf("\nNe moje da se otvori failut.\n");
- system ("pause");
- return 0;
- }
- while(fscanf(f,"%d",&arr1[razmer1++])!=EOF);
- Razmer1--;
- fclose(f);
- break;
- default:
- printf("Nevaliden izbor");
- system ("pause");
- return 0;
- }
- printf("\nVuveden masiv:\n");
- printarray(arr1,razmer1);
- for(int i=0;i<razmer1;i++)
- {
- if(arr1[i]%2==1 && (i+1)%2==1)
- {
- arr2[razmer2++]=arr1[i];
- }
- if(arr1[i]%4==0) //ako se deli na 4
- {
- arr3[razmer3++]=arr1[i];
- }
- }
- printf("\nMasiv 1:\n");
- printarray(arr2,razmer2);
- printf("\nMasiv 2:\n");
- printarray(arr3,razmer3);
- bubblesort(arr2,razmer2);
- bubblesort(arr3,razmer3);
- for(int i=0;i<razmer2;i++)
- {
- arr4[razmer4++]=arr2[i];
- }
- for(int i=0;i<razmer3;i++)
- {
- arr4[razmer4++]=arr3[i];
- }
- printf("\nMasiv 3:\n");
- printarray(arr4,razmer4);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment