Thanks, m trying a anagram code oso...can u pls advise why this code isnt working....it's printing 0 even for anagrams....
Code:
1 #include <stdio.h>
2 #include <string.h>
3
4 int isAnagram1(char *str1, char *str2);
5 int isAnagram2(const char *str1, char *str2);
6 int isAnagram3(const char *str1, const char *str2);
7 void sort (char *str, int length);
8 void swap (char *a, char*b);
9
10 int main ( )
11 {
12 int result=0;
13 //int check=0;
14 //int triplecheck=0;
15 char str1 [50];
16 char str2 [50];
17
18 scanf("%s %s", str1, str2);
19
20 result=isAnagram1(&str1, &str2);
21 //check=isAnagram2(&str1, &str2);
22 //triplecheck=isAnagram3 (&str1, &str2);
23
24 printf("%d\n", result);
25 //printf("%d\n", check);
26 //printf("%d\n", triplecheck);
27
28 return 0;
29 }
30
31 int isAnagram1(char *str1, char *str2)
32 {
33 int length1=0;
34 int length2=0;
35 int result=0;
36
37 length1=strlen(str1);
38 length2=strlen(str2);
39 sort(&str1, length1);
40 sort(&str2, length2);
41
42 if (strcmp(str1,str2)=='\0')
43 result=1;
44 else
45 result=0;
46
47 return result;
48 }
49
50 void sort (char *str, int length)
51 {
52 int i=0;int j=0;
53
54 for (j=0; j<length; j++)
55 for (i=j+1;i<length; i++)
56 if (str[j]>str[i])
57 swap( &str[i],&str[j]);
58 }
59
60 void swap (char *a, char*b)
61 {
62 char temp;
63 temp=a;
64 a=b;
65 b=temp;