Написать функцию, которая ищет в заданной строке первое вхождение заданного символа - C (СИ)
Формулировка задачи:
Помогите пожалуйста с указателями...
Написать функцию, которая ищет в заданной строке первое вхождение заданного символа (char *strchr(char *s, char c).
Написал, но выдает ошибку
Конечно бредово как то, но мне сперва главное программу запустить, подскажите почему она не запускается?
Конечно бредово как то, но мне сперва главное программу запустить, подскажите почему она не запускается?
#include<stdio.h> #include<conio.h> #include<string.h> #define max 10 char *mtrspn(char *s, char c){ static char resultStr[max]; int i, j, cnt=0 ,n,a; for (i=0; i<strlen(s); i++) { if(s[i]==c) for(n=0;n<i;n++) resultStr[cnt]=a[i]; } resultStr[cnt]='\0'; return resultStr; } int main() { char str1[80]; puts("Vvedite stroki:\n"); puts("1 stroka:\n") ; gets(str1); puts("Rezultat:\n"); printf(" %s",mtrspn(str1)); printf("\n"); getch(); return 0; }
только там правильнее будет
resultStr[cnt]=a[i];
только там правильнее будет
resultStr[cnt]=a[i];
Решение задачи: «Написать функцию, которая ищет в заданной строке первое вхождение заданного символа»
textual
Листинг программы
#include <stdio.h> #include <string.h> char *strchr(char *s, char c){ int a=strlen(s); while (a>0) if ( *(s+(--a)) == c ) return s+a; return NULL; } int main(void){ char *str = "abecdefgh", c = 'e'; printf("All string: %s\n", str); printf("Starting from %c: %s\n", c, strchr(str, c)); return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Определяем функцию strchr, которая принимает два аргумента: s — строка, в которой нужно найти символ, и c — символ, который нужно найти
- Инициализируем переменную a значением strlen(s)
- Запускаем цикл while, который выполняется, пока значение a больше 0
- Внутри цикла проверяем, равен ли символ, на который указывает s+(--a), заданному символу c
- Если условие выполняется, то возвращаем s+a
- Если цикл закончился и символ не найден, то возвращаем NULL
- В функции main инициализируем строку str значением
abecdefgh
и символ c значением 'e' - Выводим на экран исходную строку с помощью printf
- Выводим на экран подстроку, начиная с символа 'e', с помощью printf
- Завершаем функцию main возвратом 0
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д