Eine rekursive Funktion ist eine Funktion, die sich benennt. Und dieser Prozeß wird Rekursion genannt. Durchlauf durch Value Pass durch Referencefunctions Prototypcompiler-Rückkehrart erklärte mit leerer benennender Funktion

Data Recovery PRO DATA DOCTOR

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

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


Uns ein anderes Beispiel sehen lassen. Das folgende Beispiel verwendet eine Funktion, die Quadrat genannt wird, das das Quadrat der Zahlen zwischen 1 und 10 schreibt.

#include <stdio.h>

int square(int x); /* Funktion Prototyp */

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;
}

Der Ausgang dieses Programms wird angezeigt, wie folgt:

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

Das Funktion Prototypquadrat erklärt eine Funktion, die einen Ganzzahl Parameter nimmt und eine Ganzzahl zurückbringt. Wenn der Compiler den Funktion Anruf zum Quadrat im Hauptprogramm erreicht, ist es in der Lage, den Funktion Anruf gegen die Definition der Funktion zu überprüfen.

Wenn das Programm die Linie erreicht, die das Funktion Quadrat benennt, springt das Programm zur Funktion und führt diese Funktion durch, bevor es seinen Weg durch das Hauptprogramm wieder aufnimmt. Programme, die nicht eine Rückholart haben, sollten mit Lücke erklärt werden. So können Parameter zur Funktion Durchlauf durch Value oder Durchlauf sein durch Reference.

Eine rekursive Funktion ist eine Funktion, die sich benennt. Und dieser Prozeß wird Rekursion genannt.

Durch Value Functions überschreiten

Die quadratischen Parameter der Funktion im vorhergehenden Beispiel werden durch Wert geführt. Dies heißt, daß nur eine Kopie der Variable zur Funktion geführt worden ist. Keine änderungen am Wert werden nicht zurück zu der benennenden Funktion reflektiert.

Das folgende Beispiel verwendet Überschreiten-durchwert und ändert den Wert des geführten Parameters, der keinen Effekt auf der benennenden Funktion hat. Das Funktion count_down ist erklärte so Lücke gewesen, da es keine Rückholart gibt.

#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');
}

Der Ausgang des Programms wird angezeigt, wie folgt:

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 | 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