To Write a C program to remove the repeated characters in
the entered expression or in entered characters(i.e)
removing duplicates.
Answers were Sorted based on User's Feedback
Answer / adarsh
#include<stdio.h>
#include<string.h>
main()
{
char a[100],b[100]={0};
printf("Enter the string\n");
scanf("%s",a);
int f=strlen(a);
int i,j,k=0,count=0;
for(i=0;i<f;i++)
{
for(j=0;j<i;j++)
{
if(a[i]==b[j])
{
count=1;
}
}
if(count==0)
{
b[k++]=a[i];
}
count=0;
}
for(j=0;j<strlen(b);j++)
{
printf("%c",b[j]);
}
}
Is This Answer Correct ? | 154 Yes | 89 No |
Answer / ashish
#include<stdio.h>
#include<string.h>
void main()
{
int tail=1;
char str[200];
int d=0,i;
clrscr();
printf("\nenter the string:");
scanf("%s",&str);
d=strlen(str);
for(i=1;i<d;++i)
{
int j;
for(j=0;j<tail;++j)
{
if(str[i]==str[j])
break;
}
if(j==tail)
{
str[tail]=str[i];
++tail;
}
}
str[tail]=0;
printf("the string is:%s",str);
getch();
}
Is This Answer Correct ? | 30 Yes | 16 No |
Answer / tls
int remove_duplicates(char *str)
{
int char_check=0;
int i,j;
char ch;
if(str == NULL)
return 0;
/* check from 1st character in the string */
while(str[char_check]) {
ch = str[char_check];
i = j = char_check + 1;
/* logic to remove the repeated character */
while(str[i]) {
if(str[i] != ch) {
str[j] = str[i];
j++;
}
i++;
}
str[j]='\0';
char_check++;
}
printf("String after removing duplicates : %s\n",str);
return 1;
}
Is This Answer Correct ? | 63 Yes | 52 No |
Answer / srikanth
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
char *input_str,*output_str;
int str_len,i,j,duplicate_count;
clrscr();
printf("\n Enter your String : ");
scanf("%s",input_str);
str_len=strlen(input_str);
output_str[0]=input_str[0];
output_str[1]='\0';
for(i=1;i<str_len;i++)
{
duplicate_count=0;
for(j=0;output_str[j]!='\0';j++)
{
if(output_str[j]==input_str[i])
{
duplicate_count=1;
}
}
if(duplicate_count==0)
{
output_str[j]=input_str[i];
output_str[j+1]='\0';
}
}
printf("The Resultent out put string is : %s",output_str);
getch();
}
Is This Answer Correct ? | 21 Yes | 15 No |
Answer / munesh sharma
char* removeDuplicate(char str[])//remove duplicate characters from a string,so that each character in a string is not repeating
{
int i = 0,j;
char ch;
printf("\nstr is %s",str);
while((ch = str[i++] )!= '\0')
{
j = i;
printf("\n----ch = %c----",ch);
while(str[j] != '\0')
{
printf("\n--------Checking whether %c = %c \n",str[j],ch);
if(ch == str[j])
{
printf("\n------------Yes");
while(str[j]!='\0')
{
printf("\nRemoving %c %d -- \n",str[j]);
str[j] = str[++j];
--i;
}
break;
}
printf("\n------------No");
//printf("\njj");
j++;
}
}
return str;
}
Is This Answer Correct ? | 6 Yes | 0 No |
Answer / utsav kumar
#include<stdio.h>
main()
{
char s[50];
int i=0,j;
printf("enter character string:");
while((s[i]=getchar())!='\n')
{
for(j=0;j<i;j++)
if(s[j]==s[i])
i--;
i++;
}
printf("after removing the duplicates the string is:");
for(j=0;j<i;j++)
printf("%c",s[j]);
}
Is This Answer Correct ? | 17 Yes | 11 No |
Answer / anbu
/Made few corrections...
int remove_duplicates(char *str)
{
int char_check=0;
int i,j;
char ch;
char filterstr[256]; // new
if(str == NULL)
return 0;
/* check from 1st character in the string */
while(str[char_check]) {
ch = str[char_check];
i = j = char_check+1;
filterstr[0] = str[0]; // added
/* logic to remove the repeated character */
while(str[i]) {
if(str[i] != ch) {
filterstr[j] = str[i]; //modifid
j++;
}
i++;
}
filterstr[j]='\0'; //modified
str = filterstr; //added
char_check++;
}
printf("String after removing duplicates : %
s\n",filterstr);
return 1;
}
Is This Answer Correct ? | 13 Yes | 9 No |
Answer / mbm
char *remove_duplicates(char *str)
{
char *str1, *str2;
if(!str)
return str;
str1 = str2 = str;
while(*str2)
{
if(strchr(str, *str2)<str2)
{
str2++;
continue;
}
*str1++ = *str2++;
}
*str1 = '\0';
return str;
}
Is This Answer Correct ? | 15 Yes | 12 No |
Answer / migf1
char *s_stripdups( char *s )
{
register char *cp1 = NULL; /* for parsing the whole s */
register char *cp2 = NULL; /* for keeping desired *cp1's */
int used[256] = {0}; /* ascii boolean map, for used chars */
/* sanity checks */
if ( !s ) {
errno = EFAULT;
return NULL;
}
if ( !*s ) {
errno = EINVAL;
return s;
}
for (cp1=cp2=s; *cp1; cp1++ )
{
if ( 0 == used[(int)(*cp1)] ) { /* 1st occurence of *cp1 */
*cp2++ = *cp1; /* copy it to start of s, via cp2 */
used[(int)(*cp1)] = 1; /* mark it as used */
}
}
*cp2 = 0; /* null terminate the trimmed s */
return s;
}
Is This Answer Correct ? | 1 Yes | 1 No |
Answer / surya
Please send some important programming asked by product companies
to this mail id suryabharathi8@gmail.com
by
Surya
Is This Answer Correct ? | 0 Yes | 0 No |
main() { int i; clrscr(); printf("%d", &i)+1; scanf("%d", i)-1; } a. Runtime error. b. Runtime error. Access violation. c. Compile error. Illegal syntax d. None of the above
Which one is taking more time and why ? :/home/amaresh/Testing# cat time.c //#include <stdio.h> #define EOF -1 int main() { register int c; while ((c = getchar()) != EOF) { putchar(c); } return 0; } ------------------- WIth stdio.h:- :/home/amaresh/Testing# time ./time_header hi hi hru? hru? real 0 m4.202s user 0 m0.000s sys 0 m0.004s ------------------ Witout stdio.h and with #define EOF -1 =================== /home/amaresh/Testing# time ./time_EOF hi hi hru? hru? real 0 m4.805s user 0 m0.004s sys 0 m0.004s -- From above two case , why 2nd case is taking more time ?
main() { int i=10,j=20; j = i, j?(i,j)?i:j:j; printf("%d %d",i,j); }
x=2 y=3 z=2 x++ + y++; printf("%d%d" x,y);
Is the following code legal? typedef struct a { int x; aType *b; }aType
Finding a number which was log of base 2
main() { int k=1; printf("%d==1 is ""%s",k,k==1?"TRUE":"FALSE"); }
main() { clrscr(); } clrscr();
void main () { int x = 10; printf ("x = %d, y = %d", x,--x++); } a. 10, 10 b. 10, 9 c. 10, 11 d. none of the above
Write a program that produces these three columns sequence nos. using loop statement Sequence nos. Squared Squared + 5 1 1 6 2 4 9 3 9 14 4 16 21 5 25 30
main() { int i=5,j=6,z; printf("%d",i+++j); }
Write a Program in 'C' To Insert a Unique Number Only. (Hint: Just Like a Primary Key Numbers In Database.) Please Some One Suggest Me a Better Solution for This question ??