Программа не печатает первый символ строки при использовании функции рекурсии.
//Реверсирование строки с помощью рекурсии
#включить<stdio.h>
#include<string.h>
пустота удовольствие(ул. гольца *);
пустота главная()
{
char str[30];
статический int i;
printf("введите строку:");
получает(str);
fun(&str[0]);
}
пустота удовольствие(ул. гольца *)
{
инт лен;
len=strlen(str);
если(лен)
{
ул. Веселой(++);
}
printf("\n %c",*str);
}
В соответствии с выводом printf() печатает значения после ++str, следовательно, опуская первый символ строки. Экс- "помоги мне" является строкой, то выход такой: эм апельсин.
Что я уже пробовал:
Но если я буду следовать этой простой программе, то выход будет 0123, и он не будет пропускать первое целое число.
пустота главная()
{
abc(3);
}
void abc(int a)
{
Если(а)
{
abc(a-1);
}
printf("%d",a);
}
Предложения, пожалуйста. Заранее спасибо.