Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...


Write a program to print distinct words in an input
along with their count in input in decreasing order of their
count..



Write a program to print distinct words in an input along with their count in input in decreasing o..

Answer / gururaj l j

Solution

/* This Program counts the distinct words in the input
string preceded each word by its count */


#include <stdio.h>
#include <string.h>

void DistinctWords(char s[ ]);


void main()
{
char s[100];

printf("Enter the String ");
gets(s);

if(strlen(s) <= 0)
printf("Please provide the input
string\n");
else
DistinctWords(s);
}

/* Purpose: This function counts the distinct words in the
input string preceded each word by its count
Input : String
Output : distinct words with its count
*/

void DistinctWords(char s[])
{
char words[50][50];
char distinct[50];
int i, j, l, k = 0, start, end, f = 1, m = 0, n =
0;
int count;
int countindex[20],cindex = 0;


for(l = 0,i = 0; s[i] != ' '; i++, l++)
words[k][i] = s[i];

words[k][i] = '\0';
k++;
start = i+1;


for(i = i+1; s[i]; i++)
{
if(s[i] == ' ')
{
end = i-1;
f = i+1;

for(j = 0, l = start; l <= end;
l++, j++)
words[k][j] = s[l];


words[k][j] = '\0';

k++;
start = i+1;
}
}


for(l = f, i = 0; s[l]; i++, l++)
words[k][i] = s[l];

words[k][i] = '\0';


for(i = 0;i <= k; i++)
{
count = 0;

for(j = i; j <= k; j++)
{
if((stricmp(words[i], words[j])) == 0)

count++;
}

f = 1;

for(j = 0; j < i; j++)
{
if(strcmp(words[i], words[j]) == 0)
{
f = 0;
break;
}
}


if(f == 1)
printf("\n\t%s Occur %d Times\n", words[i],
count);
}
}

Is This Answer Correct ?    18 Yes 7 No

Post New Answer

More C Interview Questions

printf(), scanf() these are a) library functions b) userdefined functions c) system functions d) they are not functions

0 Answers  


Explain how can you be sure that a program follows the ansi c standard?

0 Answers  


what is the most appropriate way to write a multi-statement macro?

1 Answers  


Give the Output : * * * * * * * * * *

2 Answers  


what is structuer?

4 Answers   LG Soft, Wipro,


what is the Output? int a=4 b=3; printf("%d%d%d%d%d%d",a++,++a,a++,a++,++a,a++); printf("%d%d%d%d%d%d",b--,b--,--b,b--,--b,--b);

10 Answers   IBM,


can we declare a function in side the structure?

2 Answers   HCL,


A banker has a seif with a cipher. Not to forget the cipher, he wants to write it coded as following: each digit to be replaced with the difference of 9 with the current digit. The banker chose a cipher. Decipher it knowing the cipher starts with a digit different than 9. I need to write a program that takes the cipher from the keyboard and prints the new cipher. I thought of the following: Take the input from the keyboard and put it into a string or an array. Go through the object with a for and for each digit other than the first, substract it from 9 and add it to another variable. Print the new variable. Theoretically I thought of it but I don't know much C. Could you give me any kind of hint, whether I am on the right track or not?

0 Answers  


write a program to generate address labels using structures?

0 Answers   SJC,


Given an array of length N containing integers between 1 and N, determine if it contains any duplicates.

3 Answers   SilverKey,


How to implement a packet in C

0 Answers   Aricent,


What is the meaning When we write "#include" what is # and what does include does there???

22 Answers   HCL, Wipro,


Categories