#include <stdio.h>
#include <string.h>
#define SIZE 300
int main(void)
{
char sentence[SIZE];
char searchString[SIZE];
printf("Enter a line of text:\n"); fgets(sentence
, SIZE
, stdin
);
printf("Enter the search string:\n"); fgets(searchString
, SIZE
, stdin
);
sentence
[strcspn(sentence
, "\n")] = '\0'; searchString
[strcspn(searchString
, "\n")] = '\0';
char *searchPtr =
strstr(sentence
, searchString
);
if (searchPtr == NULL)
{
printf("The search string was not found.\n"); }
else
{
printf("\nThe first occurrence is:\n");
searchPtr =
strstr(searchPtr
+ 1, searchString
);
if (searchPtr != NULL)
{
printf("\nThe second occurrence is:\n"); }
else
{
printf("\nThere is no second occurrence.\n"); }
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KCiNkZWZpbmUgU0laRSAzMDAKCmludCBtYWluKHZvaWQpCnsKICAgIGNoYXIgc2VudGVuY2VbU0laRV07CiAgICBjaGFyIHNlYXJjaFN0cmluZ1tTSVpFXTsKCiAgICBwcmludGYoIkVudGVyIGEgbGluZSBvZiB0ZXh0OlxuIik7CiAgICBmZ2V0cyhzZW50ZW5jZSwgU0laRSwgc3RkaW4pOwoKICAgIHByaW50ZigiRW50ZXIgdGhlIHNlYXJjaCBzdHJpbmc6XG4iKTsKICAgIGZnZXRzKHNlYXJjaFN0cmluZywgU0laRSwgc3RkaW4pOwoKICAgIHNlbnRlbmNlW3N0cmNzcG4oc2VudGVuY2UsICJcbiIpXSA9ICdcMCc7CiAgICBzZWFyY2hTdHJpbmdbc3RyY3NwbihzZWFyY2hTdHJpbmcsICJcbiIpXSA9ICdcMCc7CgogICAgY2hhciAqc2VhcmNoUHRyID0KICAgICAgICBzdHJzdHIoc2VudGVuY2UsIHNlYXJjaFN0cmluZyk7CgogICAgaWYgKHNlYXJjaFB0ciA9PSBOVUxMKQogICAgewogICAgICAgIHByaW50ZigiVGhlIHNlYXJjaCBzdHJpbmcgd2FzIG5vdCBmb3VuZC5cbiIpOwogICAgfQogICAgZWxzZQogICAgewogICAgICAgIHByaW50ZigiXG5UaGUgZmlyc3Qgb2NjdXJyZW5jZSBpczpcbiIpOwogICAgICAgIHByaW50ZigiJXNcbiIsIHNlYXJjaFB0cik7CgogICAgICAgIHNlYXJjaFB0ciA9CiAgICAgICAgICAgIHN0cnN0cihzZWFyY2hQdHIgKyAxLCBzZWFyY2hTdHJpbmcpOwoKICAgICAgICBpZiAoc2VhcmNoUHRyICE9IE5VTEwpCiAgICAgICAgewogICAgICAgICAgICBwcmludGYoIlxuVGhlIHNlY29uZCBvY2N1cnJlbmNlIGlzOlxuIik7CiAgICAgICAgICAgIHByaW50ZigiJXNcbiIsIHNlYXJjaFB0cik7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIHByaW50ZigiXG5UaGVyZSBpcyBubyBzZWNvbmQgb2NjdXJyZW5jZS5cbiIpOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gMDsKfQ==