write the function. if all the character in string B appear in
string A, return true, otherwise return false.
Answers were Sorted based on User's Feedback
Answer / patrick
//This works for strings of a fixed length(here 10)..Its
written in assumption that strings are given in same case
completely(ie,india,INdia will be false witout modifican..
#include<stdio.h>
#include<string.h>
main(){
char a1[10],a2[10],cn[10]={0,0,0,0,0,0,0,0,0,0};
int i,j,k,l,c=0;
printf("enter string B\n");
scanf("%s",a1);
printf("enter string A\n");
scanf("%s",a2);
for(i=0;i<strlen(a1);i++){
for(j=0;j<strlen(a2);j++){
if(a1[i]==a2[j]){
c++;
cn[i]=1;
}}}
for(k=0;k<strlen(a1);k++){
if(cn[k]==0){
printf("FALSE\n");exit(0);}}
printf("TRUE\n");}
| Is This Answer Correct ? | 5 Yes | 0 No |
Answer / sravanthi
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
int main()
{
char *a;
a=(char*)malloc(20*sizeof(char));
char *b;
b=(char*)malloc(20*sizeof(char));
int i,j,flag,count,n;
i=j=count=flag=0;
printf("enter the string 1");
gets(a);
printf("enter the string 2");
gets(b);
n=strlen(b);
while(b[j]!='\0')
{
i=0;
flag=0;
while(a[i]!='\0')
{
if(a[i]==b[j])
{
flag=1;
break;
}
else
{
i++;
}
}
if(flag==1)
{
count=count+1;
}
j++;
}
if(count==n)
{
printf("true");
}
else
{
printf("false");
}
getch();
}
| Is This Answer Correct ? | 2 Yes | 0 No |
#include<iostream.h>
#include<stdio.h>
#include<string.h>
int main()
{
char str1[100],str2[100];
int flag1=0,flag=0;
cout<<"\n\nenter 1st string:";
cin>>str1;
cout<<"\n\nenter 2nd string:";
cin>>str2;
int i=0,j=0;
for(i=0;i<strlen(str1);i++)
{ flag=0;
for(j=0;j<strlen(str2);j++)
{
if(str1[i]==str2[j])
{flag=1;
str2[j]=' ';
break;
}
}
if(flag==0)
{
flag1=1;
cout<<"\n\nnot anagrams";
break;
}
}
if(flag1!=1)
cout<<"\nanagrams";
return 0;
}
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / sam
private bool IsPartOf(string B, string A)
{
if(A==null || B==null) return false;
if(B.Length>A.Length) return false;
A = A.ToLower();
B = B.ToUpper();
for(int i=0; i<A.Length;i++)
{
if((i<B.Length)&&(A[i]==B[i]))
{
bool found = true;
for(int j=i;j<B.Length;j++)
{
if(A[j]!=B[j])
{
found = false;
break;
}
}
if(found) return true;
}
}
return false;
}
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / satish nerlekar
//assuming both the strings in same case
int main()
{
string A;
string B;
int count = 0;
char repeatChar='$';
cout<<"Enter string A";
cin>>A;
cout<<"Enter the string B";
cin>>B;
if(A.length()<B.length())
{
cout<<"Length of string A is small than B, so all the charaters of the B can't be there in A";
exit(0);
}
int A_length = A.length();
int B_length = B.length();
for(int i=0; i<B_length; i++)
{
for(int j=0; j<A_length; j++)
{
if(A[j] == B[i])
{
if(repeatChar == A[j])
;
else
{
count++;
repeatChar = A[j];
break;
}
}
}
}
if(count==B_length)
cout<<"string A has all the chars of string B";
else
cout<<"string A doesn't have all chars of string B";
return 0;
}
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / raghuram.a
#include<iostream.h>
#include<string.h>
int h(char letter)
{
return(letter-97);
}
int main()
{
char str1[100],str2[100];
int i=0,count[26];
for(i=0;i<26;i++)
count[i]=0;
clrscr();
cout<<"\n\nenter 1st string:";
cin>>str1;
cout<<"\n\nenter 2nd string:";
cin>>str2;
for(i=0;i<strlen(str1);i++)
{
count[h(str1[i])]++;
}
for(i=0;i<strlen(str2);i++)
{
count[h(str2[i])]--;
} int flag=0;
for(i=0;i<26;i++)
{if(count[i]!=0)
{cout<<"\n\nnot anagrams";
flag=1;
break;
}
}
if(flag==0)
cout<<"\n\nanagrams";
return 0;
}
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / defcon
#include<iostream.h>
void main()
{
char a,b;
cout<<"Entr the values of a & b";
cin>>a>>b;
if(strcmp(a,b))
cout<<"Both a & b are the same";
else
cout<<"A & b are different";
}
| Is This Answer Correct ? | 2 Yes | 2 No |
Answer / tushar
using namespace std;
#include<iostream>
#include<conio.h>
#include<string.h>
int main()
{
char str1[10],str2[10],temp[10];
char *p,*q;
int flag=1;
cout<<"enter the two strings"<<endl;
cin>>str1;
cout<<"and"<<endl;
cin>>str2;
p=str1;
//strcpy(str2,temp);
//cout<<temp;
if(strlen(str1)!=strlen(str2))
flag=0;
while(*p)
{
char ch=*p;
q=str2;
while(*q)
{
if(ch!=*q)
q++;
else
{
*q='*';
break;
}
}
if((*q)=='\0')
{flag=0;
break;
}
p++;
}
if(flag)
cout<<"anagrams"<<endl;
else
cout<<"not anagrams"<<endl;
getch();
return 0;
}
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / somisetty
char B_str[] = "aaaaaa";
char A_str[] = "a"
// For the above case, this function should return true
char B_str[] = "aB";
char A_str[] = "aaaaaBaaaaaa"
// For the above case, this function should return true
int B_chars[256]; //for all unique chars in B_str
/* Init B_chars[] */
for( int i = 0; i < 256; i++ )
B_chars[i] = 0;
/* Get characters in B_str */
for( int i = 0; i < strlen(B_str); i++ )
B_chars[(int) B_str[i]]++;
/* check if A_str has which of them */
for( int i = 0; i < strlen(A_str); i++ )
B_chars[(int) A_str[i]] = 0;
/* If any of the B_chars[] has non-zero entry */
for( int i = 0; i < 256; i++ )
{
if( B_chars[i] != 0 )
{
return (false);
}
}
/* Otherwise return true */
return (true);
| Is This Answer Correct ? | 0 Yes | 0 No |
main() { int i=5,j=10; i=i&=j&&10; printf("%d %d",i,j); }
main(int argc, char **argv) { printf("enter the character"); getchar(); sum(argv[1],argv[2]); } sum(num1,num2) int num1,num2; { return num1+num2; }
main() { int c=- -2; printf("c=%d",c); }
How do you verify if the two sentences/phrases input is an anagram using predefined functions in string.h and by using arrays?
#include<stdio.h> main() { int a[2][2][2] = { {10,2,3,4}, {5,6,7,8} }; int *p,*q; p=&a[2][2][2]; *q=***a; printf("%d----%d",*p,*q); }
main() { struct date; struct student { char name[30]; struct date dob; }stud; struct date { int day,month,year; }; scanf("%s%d%d%d", stud.rollno, &student.dob.day, &student.dob.month, &student.dob.year); }
main() { float f=5,g=10; enum{i=10,j=20,k=50}; printf("%d\n",++k); printf("%f\n",f<<2); printf("%lf\n",f%g); printf("%lf\n",fmod(f,g)); }
main() { char *p; int *q; long *r; p=q=r=0; p++; q++; r++; printf("%p...%p...%p",p,q,r); }
main() { char *cptr,c; void *vptr,v; c=10; v=0; cptr=&c; vptr=&v; printf("%c%v",c,v); }
How to read a directory in a C program?
void func1(int (*a)[10]) { printf("Ok it works"); } void func2(int a[][10]) { printf("Will this work?"); } main() { int a[10][10]; func1(a); func2(a); } a. Ok it works b. Will this work? c. Ok it worksWill this work? d. None of the above
main() { char *p; p="Hello"; printf("%c\n",*&*p); }