Exercise: Strings

Questions for: Strings

Which of the following function is used to find the first occurrence of a given string in another string?
A:
strchr()
B:
strrchr()
C:
strstr()
D:
strnset()
Answer: C

The function strstr() Finds the first occurrence of a substring in another string

Declaration: char *strstr(const char *s1, const char *s2);

Return Value:
On success, strstr returns a pointer to the element in s1 where s2 begins (points to s2 in s1).
On error (if s2 does not occur in s1), strstr returns null.

Example:

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

int main(void)
{
   char *str1 = "ExamAdept", *str2 = "ia", *ptr;

   ptr = strstr(str1, str2);
   printf("The substring is: %s\n", ptr);
   return 0;
}

Output: The substring is: iaBIX

The library function used to find the last occurrence of a character in a string is
A:
strnstr()
B:
laststr()
C:
strrchr()
D:
strstr()
Answer: C

Declaration: char *strrchr(const char *s, int c);

It scans a string s in the reverse direction, looking for a specific character c.

Example:

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

int main(void)
{
   char text[] = "I learn through ExamAdept.com";
   char *ptr, c = 'i';

   ptr = strrchr(text, c);
   if (ptr)
      printf("The position of '%c' is: %d\n", c, ptr-text);
   else
      printf("The character was not found\n");
   return 0;
}

Output:

The position of 'i' is: 19

How will you print \n on the screen?
A:
printf("\n");
B:
echo "\\n";
C:
printf('\n');
D:
printf("\\n");
Answer: D

The statement printf("\\n"); prints '\n' on the screen.

If the two strings are identical, then strcmp() function returns
A:
-1
B:
1
C:
0
D:
Yes
Answer: C

Declaration: strcmp(const char *s1, const char*s2);

The strcmp return an int value that is

if s1 < s2 returns a value < 0

if s1 == s2 returns 0

if s1 > s2 returns a value > 0

Which of the following function sets first n characters of a string to a given character?
A:
strinit()
B:
strnset()
C:
strset()
D:
strcset()
Answer: B

Declaration:

char *strnset(char *s, int ch, size_t n); Sets the first n characters of s to ch

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

int main(void)
{
   char *string = "abcdefghijklmnopqrstuvwxyz";
   char letter = 'x';

   printf("string before strnset: %s\n", string);
   strnset(string, letter, 13);
   printf("string after  strnset: %s\n", string);

   return 0;
}

Output:

string before strnset: abcdefghijklmnopqrstuvwxyz

string after strnset: xxxxxxxxxxxxxnopqrstuvwxyz

Ad Slot (Above Pagination)
Quiz