[Lenguaje C] Utilice un algoritmo recursivo para escribir un programa para encontrar el enésimo valor de la secuencia de Fibonacci
Código:
#includeamp;lt;iostreamamp;gt;
#includeamp;lt;vectoramp;gt;
usando el espacio de nombres std;
vectoramp;lt;intamp;gt;a,b,c;
void jisuan(int n){
if(namp;lt; =1)coutamp;lt;amp;lt;1amp;lt;amp;lt;endl;
else{
a.push_back(1);
b.push_back(1);
for(int i=2;iamp;lt;=n; i){
c=b; //Guardar el valor de b
for(int j=b.size()-1, k=a.size()-1;kamp;gt;=0;k--,j--){
b[j] =a[k];
if(b[j]amp;gt;=10){
if(k==0amp;amp; j==0){
b.insert(b.begin(), 1);
j //El número que necesita 10 después de la inserción se mueve hacia atrás un lugar
}
else{
b[j-1]; //Si hay un número antes de b, el número anterior es 1
}
b[j]=10; //Cambia el número 10 por un número menor que 10 porque ha habido un acarreo
}
}
a=c;
}
for(int i=0;iamp;lt;b.size();i){
coutamp ;lt;amp;lt;bamp;lt;iamp;gt;;
}
coutamp;lt;amp;lt;endl;
}
}
int main(){
int n;
cinamp;gt;amp;gt;n ;
jisuan(n);
return 0;
}
Información ampliada:
Haciendo c Programación /c Todo el mundo está familiarizado con la directiva #include y la mayoría sabe cómo usarla. Creo que todavía hay personas que sólo tienen un conocimiento superficial de ella.
C:
#includeamp;lt;stdio .hamp;gt;
C:
#includeamp;lt;iostreamamp;gt;
Indica que C/C Se incluyen archivos de encabezado de entrada y salida estándar. La directiva de inclusión no se limita a archivos de encabezado .h, sino que puede incluir cualquier archivo de código C/C reconocido por el compilador, incluidos .c, .hpp, .cpp, .hxx, .cxx, etc., e incluso .txt. .abc, etc.
Después de que el preprocesador encuentre la directiva #include, buscará el nombre del archivo en amp;lt;amp;gt; después de la directiva e incluirá el contenido de este archivo en el archivo actual. El texto del archivo incluido reemplaza la directiva #include en el archivo fuente, como si hubiera escrito todo el contenido del archivo incluido en esa ubicación en el archivo fuente.
Materiales de referencia:
Enciclopedia Baidu: incluye (terminología informática)