Вывести длину строки - C (СИ)
Формулировка задачи:
#include <stdio.h>
char * mystrlen(char*);
int main()
{
char a[100]="123";
int c;
c=mystrlen(a);
printf("%d\n",c;
return 0;
}
char * mystrlen(char* str)
{
int len = 0;
while(1) {
if (str[len]=='\0')
break;
len++;
}
return len;
}Решение задачи: «Вывести длину строки»
textual
Листинг программы
#include <stdio.h>
int mystrlen( char * str);
int main()
{
char a[100]="123";
int c;
c = mystrlen( a );
printf("%d\n", c);
return 0;
}
int mystrlen(char * str)
{
int len = 0;
while( 1 ) {
if ( !str[len] )
break;
len++;
}
return len;
}
Объяснение кода листинга программы
- Включаем стандартную библиотеку ввода-вывода
- Объявляем функцию
mystrlen, которая принимает указатель на строку символов и возвращает целочисленное значение, равное длине строки - В функции
mainсоздаем массив символовaтипаcharс длиной 100 и присваиваем ему строку123 - Создаем переменную
cтипаint - Присваиваем переменной
cрезультат вызова функцииmystrlenс аргументомa - Выводим значение переменной
cна экран с помощью функцииprintf - Возвращаем 0 из функции
main, что означает успешный конец работы программы - В функции
mystrlenсоздаем переменнуюlenтипаintи инициализируем её значением 0 - Запускаем бесконечный цикл
while(1), который будет выполняться до тех пор, пока не встретит условиеif ( !str[len] ), что означает достижение конца строки - Внутри цикла увеличиваем значение переменной
lenна единицу - Выходим из цикла с помощью оператора
break, если встретили условиеif ( !str[len] ) - Возвращаем значение переменной
lenиз функцииmystrlen