76 lines
2.0 KiB
C
76 lines
2.0 KiB
C
/*
|
|
* C Program to Find the Frequency of Every Word in a
|
|
* given String
|
|
*/
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
|
|
void main()
|
|
{
|
|
int count = 0, c = 0, i, j = 0, k, space = 0;
|
|
char str[100], p[50][100], str1[20], ptr1[50][100];
|
|
char *ptr;
|
|
printf("Enter the string\n");
|
|
scanf(" %[^\n]s", str);
|
|
printf("string length is %d\n", strlen(str));
|
|
for (i = 0; i<strlen(str); i++)
|
|
{
|
|
if ((str[i] == ' ')||(str[i] == ', ')||(str[i] == '.'))
|
|
{
|
|
space++;
|
|
}
|
|
}
|
|
for (i = 0, j = 0, k = 0; j < strlen(str); j++)
|
|
{
|
|
if ((str[j] == ' ')||(str[j] == 44)||(str[j] == 46))
|
|
{
|
|
p[i][k] = '\0';
|
|
i++;
|
|
k = 0;
|
|
}
|
|
else
|
|
p[i][k++] = str[j];
|
|
}
|
|
k = 0;
|
|
for (i = 0; i <= space; i++)
|
|
{
|
|
for (j = 0; j <= space; j++)
|
|
{
|
|
if (i == j)
|
|
{
|
|
strcpy(ptr1[k], p[i]);
|
|
k++;
|
|
count++;
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
if (strcmp(ptr1[j], p[i]) != 0)
|
|
continue;
|
|
else
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
for (i = 0; i < count; i++)
|
|
{
|
|
for (j = 0; j <= space; j++)
|
|
{
|
|
if (strcmp(ptr1[i], p[j]) == 0)
|
|
c++;
|
|
}
|
|
printf("%s -> %d times\n", ptr1[i], c);
|
|
c = 0;
|
|
}
|
|
}
|
|
/*
|
|
*OUTPUT:
|
|
Enter the string
|
|
welcome to sanfoundry's class, welcome to c class
|
|
string length is 48
|
|
welcome -> 2 times
|
|
to -> 2 times
|
|
sanfoundry's -> 1 times
|
|
class -> 2 times
|
|
c -> 1 times
|
|
*/ |