Une fonction récursive est une fonction qui s'appelle. Et ce processus s'appelle la récursion. Le passage par Value Pass par le type de retour de compilateur de prototype de Reference Functions a déclaré en utilisant la fonction appelante vide

Data Recovery PRO DATA DOCTOR

Home | Order Online | Downloads | Contact Us | Software Knowledgebase

it | es | pt | fr | de | jp | kr | cn | ru | nl | gr


Voyons un autre exemple. L'exemple suivant emploie une fonction appelée la place qui écrit la place des nombres entre 1 et 10.

#include <stdio.h>

int square(int x); /* Function prototype */

int main()
{
int counter;

for (counter=1; counter<=10; counter++)

printf("Square of %d is %d\n", counter, square(counter));
return 0;
}

/* Define the function 'square' */
int square(int x)
{
return x * x;
}

Le rendement de ce programme sera montré comme suit :

Square of 1 is 1
Square of 2 is 4
Square of 3 is 9
Square of 4 is 16
Square of 5 is 25
Square of 6 is 36
Square of 7 is 49
Square of 8 is 64
Square of 9 is 81
Square of 10 is 100

La place de prototype de fonction déclare une fonction qui prend un paramètre de nombre entier et renvoie un nombre entier. Quand le compilateur atteint l'appel de fonction à la place dans le programme principal, il peut vérifier l'appel de fonction contre la définition de la fonction.

Quand le programme atteint la ligne qui appelle la place de fonction, le programme saute à la fonction et exécute cette fonction avant de reprendre son chemin par le programme principal. Des programmes qui n'ont pas un type de retour devraient être déclarés en utilisant le vide. Ainsi les paramètres à la fonction peuvent être passage par Value ou passage par Reference.

Une fonction récursive est une fonction qui s'appelle. Et ce processus s'appelle la récursion.

Passer par Value Functions

Les paramètres de la fonction carrée dans l'exemple précédent sont passés par valeur. Ceci signifie que seulement une copie de la variable a été passée à la fonction. Aucun changement à la valeur ne sera reflété de nouveau à la fonction appelante.

L'exemple suivant emploie la passer-par-valeur et change la valeur du paramètre passé, qui n'a aucun effet sur la fonction appelante. Le count_down de fonction a été avoué aussi vide qu'il n'y a aucun type de retour.

#include <stdio.h>
void count_down(int x);

int main()
{
int counter;

for (counter=1; counter<=10; counter++)
count_down(counter);
return 0;
}
void count_down(int x)
{
int counter;
for (counter = x; counter > 0; counter--)
{
printf("%d ", x);
x--;
}
putchar('\n');
}

Le rendement du programme sera montré comme suit :

1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
6 5 4 3 2 1
7 6 5 4 3 2 1
8 7 6 5 4 3 2 1
9 8 7 6 5 4 3 2 1
10 9 8 7 6 5 4 3 2 1

 

Sample Chapters from book DATA RECOVERY WITH AND WITHOUT PROGRAMMING by Author Tarun Tyagi
Data Recovery with & without Programming


Publishers of the Book
Number of Pages
ISBN
Price of the Book


BPB Publications, New Delhi, India
540
81-7656-922-4
$69.00 (Including Shipping Charges, Cost of Book and Other expenses, Free Source Code CD included with the Book)





Buy Data recovery Book

Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20

 
 

page 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37

 
 

page 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54

 
 

page 55 | 56 | 57 | 58 | 59 | 60

Next page

© Copyright 2002-2005 DataDoctor.Biz

Home | Contact us | Downloads | Services | Resources | Terms and conditions | Site map

Website Data Recovery | recuperación de Datos | Récupération de données | Datenrettung | Recupero dati | データ復旧 | 데이터 복구 | 数据恢复 | Восстановление данных | De terugwinning van gegevens | Ανάκτηση δεδομένων
Sitemap Site map1 2 3 4 | Spanish1 2 3 | French1 2 3 | German1 2 3 | Italian1 2 3 | Portuguese1 2 3 | Japanese1 2 3 | Korean1 2 3 | Chinese1 2 3 | Russian1 2 3 | Dutch1 2 3 | Greek1 2 3
Data Recovery Book English | Spanish | French | German | Italian | Portuguese | Japanese | Korean | Chinese | Russian | Dutch | Greek