Вывести подстроку, расположенную между первой и последней точками исходной строки - C (СИ)
Формулировка задачи:
Дана строка.Вывести подстроку расположенную между первой и последней точками исходной строки.Если в строке менее двух точек,то вывести всю исходную строку.
Решение задачи: «Вывести подстроку, расположенную между первой и последней точками исходной строки»
textual
Листинг программы
#include <stdio.h>
#include <string.h>
int main(int argc, char **argv) {
char string[] = "I have . many good . 1nt3g3r!";
int count = get_count_occurrent_symbol(string, '.');
printf("COUNT: %d \n", count);
if (count <= 1) {
printf("STRING: %s\n", string);
} else {
char substring[] = "";
char* begin_dot = strchr(string, '.');
char* end_dot = strrchr(string, '.');
int begin_position_dot = (begin_dot - string + 1);
int end_position_dot = (end_dot - string + 1);
printf("POSITION BEGIN %li\n", (begin_dot - string + 1));
printf("POSITION END %li\n", (end_dot - string + 1));
strncpy(substring, string + begin_position_dot, end_position_dot - begin_position_dot - 1);
printf("RESULT STRING: %s", substring);
}
return 0;
}