← cproj

few mixups

98e069ec691f1243b3ca54af1081c38b28fe0c38 · ovidiucs · Nov 30, 2019 22:23

+29 −19 · 1 file changed

  • graph/ds/ds2.c +29 −19
diff --git a/graph/ds/ds2.c b/graph/ds/ds2.c
index d16b876..0e89618 100644
--- a/graph/ds/ds2.c
+++ b/graph/ds/ds2.c
@@ -2,46 +2,56 @@
 #include <stdlib.h>
 
 #define STRSIZE 80
-char string[STRSIZE];
-//string = "test__";
-char s1[] = "test1";
-//char s2[] = "test2";
+char string[STRSIZE] = "test__";
+char s1[STRSIZE] = "100 test1";
+char s2[STRSIZE] = "200 test2";
 
-int strln(char *string);
-int strpos(char s1[],char s2[]);
+int strln(char str[]);
+int strpos(char str1[],char str2[]);
+
+int
+strln(char str[]) {
+/*****
+*	Takes a pointer to char string[] and
+* calculates size of string without newline character
+*****/
 
-int strln(char *string) {
-//  char *string;
   int i = 0;
-  while(string[i] != '\0'){
+  while(str[i] != '\0'){
     i++;
   }
   return i;
 }
-int strpos(char s1[],char s2[]) {
+
+int
+strpos(char str1[],char str2[]) {
+  /*****
+  * Param: two strings
+  *	Return: integer, starting location of second string
+  *****/
+
   int len1;
   int len2;
   int i;
   int j1;
   int j2;
 
-  len1 = strln(s1);
-  len2 = strln(s2);
-  for ( i=0;i+len2 <= len1;i++ ) {
-      for ( j1=i,j2=0;j2 <= len2 && s1[j1] == s2[j2] ; j1++, j2++ ) {
+  len1 = strln(str1);
+  len2 = strln(str2);
 
+  for ( i=0; i+len2 <= len1; i++ ) {
+      for ( j1=i,j2=0;j2 <= len2 && s1[j1] == s2[j2] ; j1++, j2++ ) {
         if ( j2 == len2 ) {
             return(i);
         }
-        return(-1);
-
       }
-  }
+    }
+    return(-1);
 
 }
 
 int main () {
-   fprintf(stdout,"String length is: %d\n",strln("abracadabrdaasda"));
-
+   fprintf(stdout,"String length is: %d\n",strln(string));
+   fprintf(stdout,"String position is: %d\n",strpos(s1,s2));
    return EXIT_SUCCESS;
 }