write a C program : To find out the number of identical
words in two files . the file name should be taken as
command line argument .
Answer Posted / mohammed asif
//Email: mohdasif_2688@rocketmail.com
//Hello friends This program sure contains some errors which need to be rectified
//If any problem feel free to contact me at my email address i am a fresher (2012 passed out) too looking for a job.
#include<stdio.h>
#include<conio.h>
#include<process.h>
#include<string.h>
#include<ctype.h>
int main(int argc,char *argv[])
{
char word[15]="\0",ch='\0',s[80]="\0";
FILE *fp,*fp1;
int init,count=0,l,i=0,j=0,k1;
fp=fopen("src.txt","r");
if(fp==NULL)
{
printf("Invalid File name");
exit(0);
}
while(ch!=-1)
{
init=0;
strset(word,'\0');
while((ch=fgetc(fp))!=' ')
{
if(ch!=-1)
{
if(ch!='\t')
{
if(ch!='\n')
{
word[init]=ch;
init++;
}
else
break;
}
else
break;
}
else
break;
}
word[init]='\0';
fp1=fopen("dest.txt","r");
if(fp1==NULL)
{
printf("Invalid file name");
exit(0);
}
if(fgets(s,79,fp1)!=NULL)
{
//Variables for the logic initializing
i=0;
j=0;k1=0;
//Possible ERROR Location
//here you get two array of chars word[] and s[]
//If finding error then work on these arrays to just find the substring in the main s[] string
l=strlen(word);
while (word[i]!=EOF)
{
if (s[i]==word[j])
{
i++;
j++;
k1=1;
if (j==l)
{
j=0;
count++;
}
}
else
{
if (k1==1)
{
j=0;
k1=0;
}
else
i++;
}
}
// end of Possible Error Location
}
fclose(fp1);
}
printf("\nNumber of Identical words is : %d",count);
fclose(fp);
system("pause");
}
//Note: This program does not take arguments from CMD. If you wish to then just use
// argv[1] in place of "src.txt" : i.e source file
// argv[2] in place of "dest.txt" : i.e destination file
//argc[1] & argv[2] are two text files with multiple words in the solutions directory
//Program written using MSVisual c++
Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
What does emoji p mean?
What is the difference between void main and main in c?
Which is better malloc or calloc?
What do you know about the use of bit field?
What is #line?
What are global variables?
HOW TO SOLVE A NUMERICAL OF LRU IN OS ??????
.find the output of the following program? char*myfunc(char*ptr) { ptr +=3; return (ptr); } int main() { char*x,*y; x="HELLO"; y=myfunc(x); printf("y = %s ",y); return 0; }
What is dynamic variable in c?
What is property type c?
Why c language is called c?
How can I read in an object file and jump to locations in it?
What is extern c used for?
What are the 5 types of inheritance in c ++?
How do we declare variables in c?