Professional Documents
Culture Documents
"*||+,##
!
""#$%#&'
#!(')'
|
||
|) "%'")
(
||
"%'"-''*.)
Ëa solución que se suele ofrecer consiste en agrupar cada uno
de esos conjuntos de sentencias destacándolos y asignándoles
un nombre, constituyendo así las llamadas RUTINAS o
subprogramas. Ëuego, basta con invocar su nombre en cualquier
sentencia para conseguir que se ejecute todo el conjunto.
,##")
FUNCIONES:
Ëas funciones en C permiten dividir grandes programas en pequeñas
tareas y permiten reutilizar tareas que funcionan bien en distintas
aplicaciones.
Ò
||
(. Declaración de funciones:
/#"#0/,#"%'*0-|#|1(#(121#.
3
'"#"%'*
#"# /"4#"*0
56
,)
/#"#0 +,&'$ %'*#"#$#)"""
7""$"$"$#)"""#1'8#1%1"#1#'-"%'
. $)
/,#"%'0+,#""%'*"9'$"'*",#""$#,"
")
|#|1(#(121#6 :""'#'*"#&"#
'"1"##')#&"#$"'"")
"#"%'*+"'""+
"'#'$#,"'"+;#,"#"%'*
""'+ ""''
#"#/"4#"0+'"$#7"#"#%'*-'. V
||
<"""#'#"%'*+
#"
:"#&"#
;#"$" î
||
%'*"$"$"1"","'#"4?'""'""
""#"#)""#"#"""#+1'8#1%1,"1
"##'-$"#""".)
<"+
int 4-41!.@@"$"$"
double "-,"4|1,"4(.@@"$"$","
float %'A-.@@"$"$"
char B%'|-.@@"$"$""#'8#
int B%'-.@@"$"$""#
double B%-4. @@"$"$""#,"
3
||
C'"/)80
C'"/,)80
char D( =3E|E1E(E56'8#,D( =3E E1EE56
char B%-char 4D 1char !D .
3
if -4DA ==!DA .
return 6
else
return ,6
5
int -.
3
printf-FG'G'F1B%-1,.1%-1,.D| .6
!"-F F.6
return A6
5
||
%'*"""$$"#9'$#)#"""#'
""'#"# '!4"""#+
#"# -"4#"*.6
#"# "4#"6
#"#6 ""$#"#"#"$
Obs)
""4#"*"""#"'7"#"4'"%'*##")
""""$$"#$#"9""$$""#"#'#
##")
$#"#"#",""##"7""'"##"
'*)
%'*""""#'7"#9"#"""'#"#):#"#7""
"<"'"1"$"$""'#""*)
:#H"'") B
||
#"<"'#"'<"#''"7"""'"#"#"%'*
"'#1%'*"","#I,#"!#"'
"'*""%'*1"##')
#6
):"%'*""#"'"#+
""')
"""%##"""4#"*1'%'*""
$#"#"#)
):#&"#"""#'"1$#,""4#"")
|A
<"+
int "J#-int .
3
int $#6
int #=|6
for -$#=(6$#/6$#>>.
if -G$#==A.
#=A6
return #6
56
int -.
3
int "#6
do
3
#%-F #"""#F.6
'%-FGF1K"#.6
5while -"#/=(.6
if -"J#-"#..
#%-F"#"#LF.6
else
#%-F"#"#LF.6
!"-F F.6
return A6
5
||
||
:"'#'*"%'*""#!#""""
""%'*"'"#"%'*1""'"""'7""
'##"7"#""#"%'*"""#-<">>.+
#6
#"'#%'*!##'%#'*%'""
'##$"#%'#7"%'*"&"'##"'""1'
#""'9"#!"#&"#!""$"#%'*)
,#"#!'%)
:#"9#""#'"##1""
"%'*"%'*
|(
||
Ejemplo.
|
||
Ë
Ë
ËËË Ë
Ë
!
"
#
! ËË $
#
ËË %&Ë
#'()
(#Ë
|V
int M =(A6int i1 j6
<"+;#,"'"!,"
int A -int i1int incrementa.
3 VA IABË Q V AA BËOQ
Bloque Variable escripción
int r=|6int s=A6
pal M ;#,",
int B -int 1int despedida. i,j ;#,","
3 A ,##"'#"
main ,##"'#"
int m =|6int n =A6
main z ;#,"'
if -despedida. M ;#,",
return -n.6 i,j ;#,","
A ,##"'#"
else main ,##"'#"
return -m.6 A i, incrementa #&"#" '"
56 r, s ;#,"'"
B ,##'
if -incrementa KKr MMs. j ;#,","'#"
return B - i1incrementa.6 B ,##"'#"
M ;#,",
else
B g, despedida #&"#'"O
return B - M1Nincrementa.6 m ,n ;#,"'"O
5 r, s ;#,""'#" ,""O
i, incrementa #&"#" ,""O
int main -. j ;#,","'#"
3 A ,##"'#"
z6j =|6i =(A>j6z = i6 B ,##"'#"
M ;#,","'#"
#%-FGLF1A-z1|..6
|î
5
||
|3
||
|B
||
u
(
)*$
u
(
)*$
'
6
+ (
&
&
(
7
6
&
/
6#
&
(
(
/
8
,
(|
, '
+&
-
.0
0
10
&+ |
/
/
-
/
./0 "#&"#
10 #$#):$#,"
'""%')
-
0
.|0 .0
.+&
0
9
.4 .4 .4:
9
0
+ |7
70
"#&"##
9
.4 .4:
9
0 #"%"#"')%'7""
9%90 %'$#,"
0 '")
1 ((
||
(
const =(1=V6 int -.
void "J#I-int #ID D 1int 1int . 3
3 int D D 6
int 1<6 "J#I-1(1V.6
for -=A6/6>>. #"J#I-11.6
for -<=A6</6<>>. !"-F F.6
#ID D< = B ><6 #"#A6
56 5
void #"J#I-#ID D 1int 1int .
3
int 1<6
for -=A6/6>>.
3
for -<=A6</6<>>.
#%-FGF1#ID D< .6
#%-FLF.6
56
56 (Ò
||
1(. Recursividad
Una función en C se puede llamar a si mismo tantas veces como se desee. Esto
se denomina llamadas recursivas. Ejemplo:
#include <stdio.h>
#include <stdlib.h>
double factorial (int numero)
{
if (numero > 1)
return numero * factorial(numero - 1);
else
return 1;
}
int main()
{
printf("+lf\n",factorial(5));
system("PAUSE");
return 0;
}
(V
||
1V. Argumentos de Main.
(î
||
1Ò. Argumentos de Main.
(3
||
,
$
(
;
<
& &
<=
(