Advertisement
jovanovski

КРС Лаб.6

Dec 18th, 2011
356
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.43 KB | None | 0 0
  1. //Задача 1:
  2.  
  3. # include <stdio.h>
  4. # include <string.h>
  5. # define MAX 100
  6. int poz=0;
  7.  
  8. int podniza ( char *rmv , char *str) {
  9. int i;
  10. int d1 = strlen (rmv);
  11. int d2 = strlen (str);
  12. if (d1 > d2)
  13. return 0;
  14. for (i = 0; i < d2 - d1+1; i++)
  15. if ( strncmp (rmv , str + i, d1) == 0){
  16.     poz=i;
  17. return i;}
  18. return 0;
  19. }
  20.  
  21. void izbrisi (char *str, char *rmv){
  22. int i, dolz, dolz2;
  23. char niza1[100], niza2[100];
  24. dolz = strlen(rmv);
  25. dolz2 = strlen(str);
  26. strncpy (niza1 , str , poz);
  27. niza1[poz] = '\0';
  28. strncpy (niza2 , str+poz+dolz, dolz2 - poz+dolz);
  29. niza2[dolz2-poz+dolz] = '\0';
  30. strcat(niza1,niza2);
  31. printf("%s e transformiranata niza", niza1);
  32. }
  33.  
  34. int main () {
  35. char rmv[MAX], str[MAX];
  36. printf ("Vnesi niza:\n");
  37. gets (str);
  38. printf ("Vnesi podniza:\n");
  39. gets (rmv);
  40.  
  41. if(podniza (rmv , str)){izbrisi (str, rmv);}
  42. else{printf("Ne e podniza!");}
  43. return 0;
  44. }
  45.  
  46.  
  47. //Задача 2:
  48.  
  49. # include <stdio.h>
  50. # include <string.h>
  51. # define MAX 100
  52. int poz=0;
  53.  
  54.  
  55. int isAnagram (char *niza2 , char *niza1) {
  56. int i, j,ok=0;
  57. int d1 = strlen (niza2);
  58. int d2 = strlen (niza1);
  59. for (i = 0; i < d1; i++){
  60.     if(!isspace(niza2[i])){
  61.         for(j=0;j<d2;j++){
  62.             if (niza2[i]==niza1[j] && !isspace(niza1[j])){ok=1;niza1[j]='♥';break;}
  63.     }
  64.     }
  65.     if (!ok){return 0;}
  66.     ok=0;
  67.     }
  68. return 1;
  69. }
  70.  
  71.  
  72.  
  73. int main () {
  74. char niza2[MAX], niza1[MAX];
  75. printf ("Vnesi niza1:\n");
  76. gets (niza1);
  77. printf ("Vnesi niza2:\n");
  78. gets (niza2);
  79. if(isAnagram (niza2 , niza1)){printf("E anagram!");}
  80. else{printf("ne e anagram");}
  81. return 0;
  82. }
  83.  
  84.  
  85.  
  86. //Задача 3:
  87.  
  88. #include <stdio.h>
  89. #include <stdlib.h>
  90.  
  91. int palindrom(char s[], int duz){
  92.     int j,i;
  93.     for(j=0,i=duz-1;i>=0;j++,i--){
  94.         if (s[i]!=s[j])
  95.         return 0;
  96.     }
  97.     printf("palindrom!");
  98.     return 1;
  99. }
  100.  
  101.  
  102. int main(int argc, char *argv[])
  103. {
  104.    FILE * pFile;
  105.   int c;
  106.     if(argc==2) {printf("Upotrebaa: %s\n", argv[1]);}
  107.     else{
  108.     printf("Premnogu argumenti: %d", argc); return -1;}
  109.  
  110.   pFile=fopen (argv[1],"r");
  111.   if (pFile==NULL) perror ("Ne se otvara voa gomnovo");
  112.  
  113.     else{
  114.         int duz=0;
  115.         char s[20];
  116.        do {
  117.       c = fgetc(pFile);
  118.       if (isalpha(c)) {
  119.           s[duz] = c;
  120.           duz++;
  121.       }
  122.       else
  123.       {
  124.                 palindrom(s,duz);
  125.                 duz=0;
  126.       }
  127.  
  128.  
  129.  
  130.     } while (c != EOF);
  131.     fclose (pFile);
  132.         }
  133.  
  134.  
  135. return(0);
  136. }
  137.  
  138.  
  139. //Задача 4:
  140.  
  141. #include<stdio.h>
  142. #include<ctype.h>
  143. #include<string.h>
  144. // ovdeka treba da stoi funkcija: void promena(drn drn)...mi se spie :*
  145. }
  146. int main(int argc, char *argv[]){
  147.     FILE *ptr,*ptr2,*ptr3,*ptr4;
  148.     char c,d,x,s[100];
  149.     int i=0;
  150.  
  151.     int c;
  152.     if(argc!=5) {
  153.     printf("Premnogu argumenti: %d", argc); return -1;}
  154.     ptr=ptr2=fopen(argv[1], "r");
  155.     ptr3=ptr4=fopen(argv[2], "w");
  156.     while(1){                   //     *proverka za citanje
  157.         if((c =fgetc(ptr))==EOF)
  158.             break;
  159.         putchar(c);
  160.         }
  161.  
  162.     puts(ptr);
  163.  
  164.     if((ptr=fopen(argv[1],"r"))==NULL){puts("Ne moze da se otvori datotekata");
  165.     return -1;}
  166.     if((ptr3=fopen(argv[2],"w"))==NULL){puts("Ne moze da se otvori datotekata");
  167.     return -2;}
  168.     c=argv[3];
  169.     d=argv[4];
  170.  
  171.     // ova e kodot -.-
  172.     while((x=fgetc(ptr))!=EOF){
  173.         //fputc(x,ptr3);
  174.         if(c==x){
  175.             fputc(d,ptr3);
  176.         } else fputc(x,ptr3);
  177.     }
  178.     puts(ptr3);
  179.     fclose(ptr);
  180.     fclose(ptr3);
  181.     return 0;
  182. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement