w3resource

C Programming: Find the repeated character in a given string

C String: Exercise-32 with Solution

Write a C programming to find the repeated character in a given string.

Sample Solution:

C Code:

#include<stdio.h>
#include
int ifexists(char p, char q[],  int v)
{
	int i;
	for (i=0; i<v;i++)
		if (q[i]==p) return (1);
	return (0);
}
int main()
{
	char string1[80],string2[80];
	int n,i,x;
	printf("Input a string: ");
	scanf("%s",string1);
	n=strlen(string1);
	string2[0]=string1[0];
	x=1;
	for(i=1;i < n;  i++)
	{
		if(ifexists(string1[i], string2, x))
		{
			printf("The first repetitive character in %s is: %c ", string1, string1[i]);
			break;
		}
		else
		{
			string2[x]=string1[i];
			x++;
		}
	}
	if(i==n)
		printf("There is no repetitve character in the string %s.", string1);
}

Sample Output:

 Input a string: The first repetitive character in w3resource is: r 

Flowchart :

Flowchart: Find the repeated character in a given string

C Programming Code Editor:

Improve this sample solution and post your code through Disqus.

Previous: Write a program in C to split string by space into words.
Next: Write a C programming to count of each character in a given string.

What is the difficulty level of this exercise?



C Programming: Tips of the Day

Is there a way to specify how many characters of a string to print out using printf()?

The basic way is:

printf ("Here are the first 8 chars: %.8s\n", "A string that is more than 8 chars"); 

The other, often more useful, way is:

printf ("Here are the first %d chars: %.*s\n", 8, 8, "A string that is more than 8 chars"); 

Here, you specify the length as an int argument to printf(), which treats the '*' in the format as a request to get the length from an argument.

You can also use the notation:

printf ("Here are the first 8 chars: %*.*s\n",
        8, 8, "A string that is more than 8 chars"); 

This is also analogous to the "%8.8s" notation, but again allows you to specify the minimum and maximum lengths at runtime - more realistically in a scenario like:

printf("Data: %*.*s Other info: %d\n", minlen, maxlen, string, info); 

The POSIX specification for printf() defines these mechanisms.

Ref: https://bit.ly/395Zj2j