Tem a 3 : Program ación en C : Conceptos Básicos

Anuncio
Tem a 3 :Program ación en C :C onceptos B ásicos
3.1 - O rígenes delC :ElestándarAN SI.Portabilidad
3.2 - Identificadores y palabras reservadas
3.3 - Tipos de datos
3.4 - C onstantes
3.5 - Variables
3.6 - Expresiones
3.7 - O peradores
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 1
Tem a 3 :Program ación en C :C onceptos B ásicos
3.8 - Sentencias
3.9 - C om entarios
3.10 - Program ación elem entalen C
3.10.1-Estructura de un program a
3.10.2-Archivos de cabecera
3.10.3-Entrada y salida de datos
3.10.4-Sentencias de controlde program a
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 2
3.1 - O rígenes delC :Elestándar A N SI.Portabilidad
1978 “The C Program m ing Language”, Brian Kernighan y D ennis R itchie
D écada 80’Expansión rápida delC ,gracias a que se diseñaron
com piladores e intérpretes para m ultitud de plataform as
Aparecen versiones distintas -> poca portabilidad
Instituto Am ericano de Estándares (AN SI)propone unas norm as m ínim as
que deben cum plirlos com piladores e intérpretes.
Ventajas dellenguaje C :
Ö Lenguaje de propósito general.U tilpara diseñarsistem as operativos
hasta softw are de gestión.
Ö Favorece la program ación estructurada y eldiseño m odular
Ö Perm ite program artanto a bajo nivelcom o a alto nivel
Ö R epertorio de instrucciones pequeño.Su potencia se am plía con las
funciones de biblioteca y las propias delusuario
Ö Portabilidad.Program a utilizable en varias plataform as.
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 3
3.2 - Identificadores y palabras reservadas
Identificador:nom bre con elque elU SU AR IO designa un dato u objeto
– Secuencia de caracteres.Siem pre com ienza porletra o “_”
– ElestándarAN SIreconoce hasta 31 caracteres en los identificadores
Palabra reservada :definidas porellenguaje (estándarAN SI).En ocasiones
elcom piladorañade alguna palabra propia.
auto
double
int
struct
break
else
long
sw itch
case
enum
register
typedef
char
extern
return
union
const
float
short
unsigned
continue
for
signed
void
default
goto
sizeof
volatile
do
if
static
w hile
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 4
3.3 - Tipos de datos
5 tipos :
int
char
float
entero
2 bytes de m em oria
carácter
1 byte
double
com a flotante
2 palabras
doble precisión (2xfloat)
void
vacío
no ocupa m em oria
» void función()...D eclara que una función no devuelve
ningún valor
» double función(void )...La función no tiene
argum entos
» void *puntero ...Elpuntero señala a objeto de tipo no
especificado
“
com a flotante
1 palabra
“
m antisa (real),exponente (entero): m an 10 Exp
Tem a 3 :Program ación en C .C onceptos básicos
“
Fundam entos de Program ación 5
M odificadores de Tipo
T IPO
B its
R AN G O
char
8
ASC II
unsigned char
8
0 .. 255
signed char
8
-128 .. 127
int
16
-32768 .. 32767
unsigned int
16
0 .. 65535
signed int
16
-32768 .. 32767
short int
8
-128 .. 127
unsigned short int
8
0 .. 255
signed short int
8
-128 .. 127
long int
32
-2147483648 .. 2147483649
signed long int
32
-2147483648 .. 2147483649
unsigned long int
32
0 .. 4294967296
float
32
6 dígitos precisión aprox.
double
64
12 dígitos precisión aprox.
128
24 dígitos precisión aprox.
long double
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 6
C onversiones de Tipo
En operaciones donde aparecen dos o m ás tipos de datos diferentes,los de
m enorrango se igualan altipo de m ayorrango
En operaciones de asignación “Y=X “,la variable origen X se convierte al
tipo de la variable destino Y.En ocasiones se produce pérdida de
inform ación:
T IPO D ES T IN O
T IPO O R IG EN
signed char
char
char
short int
char
int
char
long int
short int
int
short int
long int
2 4 bits m as significativos
int
long int
1 6 bits m as significativos
int
float
Parte fraccionaria, com o m ínim o
float
double
Precisión, resultado redondeado
double
long double
Tem a 3 :Program ación en C .C onceptos básicos
PÉR D ID A D E IN FO R M A C IÓ N
D estino negativo si valor > 1 2 7
S igno
8
bits m as significativos
2 4 bits m as significativos
8
bits m as significativos
Precisión, resultado redondeado
Fundam entos de Program ación 7
3.4 -C onstantes
C O N STAN TE :dato que no varia durante la ejecución delprogram a
3 tipos :C arácter/C adena de caracteres /N um éricas
Ö C AR ÁC TER
– x = ‘A’ ... C om illas SIM PLES
– x = 65 (código ASC II65 es ‘A’)
Ö C AD EN A D E C AR AC TER ES
– y = “PEPE” ... C om illas D O BLES
Equivale a un AR R AY de caractéres ... P E P E \0
SEC U EN C IAS D E ESC APE :caracteres ASC IIno im prim ibles que
realizan determ inadas acciones.
A S C II S ecuencia C arácter
A S C II S ec u e n cia C arácter
0
\O
nulo
12
\f
F ro m fe ed
7
\a
sonido B ELL
13
\r
R eto rn o d e c a rro
8
\b
B ackspace
34
\”
C o m illas ( “ )
9
\t
tab.horizontal
39
\’
C o m illas ( ‘ )
10
\n
nueva linea
63
\?
In terro g a ció n ( ? )
11
\v
tab.vertical
92
\\
B ac ksla sh ( \ )
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 8
3.4 -C onstantes (cont)
Ö N U M ÉR IC AS
– 2 tipos :Enteras y C om a Flotante
– 3 Sistem as de num eración :
• D ecim al(base 10)
• O ctal(base 8)com ienzan por‘O ’.Ej:O 73
• H exadecim al(base 16)com ienzan por‘O X’.Ej:O X1E
– Se utilizan unos caracteres para m odificarelTipo :
• U ,u -unsigned int:
564U
• L ,l -long int:
453234L
• U L ,ul-unsigned long int: 6734U L
– N úm eros en com a flotante :elcarácter‘e’,‘E’separa la m antisa del
exponente. Ej -564E31
Sino se indica lo contrario,se consideran núm ero en D oble
Precisión (double)
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 9
3.5 -Variables
Identificadorcon capacidad de cam biarsu valordurante la ejecución del
program a
Elnom bre de la variable com ienza con letra m inúscula y no adm ite ‘_’
Ö D EC LAR AC IÓ N :la sentencia de declaración crea la variable alprincipio
delprogram a.
– Form ato : tipo identificador [,identificador]...;
int radio,diám etro;
– Ejem plo :
char letra;
Ö IN IC IALIZAC IÓ N :Asignar un valoriniciala la variable
– Form ato : tipo identificador = constante;
int sem estre=6;
– Ejem plo :
int cuatrim estre=4,trim estre=3;
int m es,year=12;
la variable m es no está inicalizada.C onviene separarlas
variables inicializadas de las que no lo están.
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 10
3.6 -Expresiones
Secuencia de datos sim ples,operandos (constantes,variables..)unidos en
su caso,porm edio de uno o varios operadores.
14 ,-12>b ,3+7 ,a*(b+7/d)/8-c)...
– Ejem plo :
Elvalorde la expresión se obtiene realizando la operación necesaria
3.7 -O peradores
Sím bolo que indica una operación o transform ación de uno o varios
operandos
4 tipo de operadores :
– O peradorde ASIG N AC IÓ N
– O peradores AR ITM ÉTIC O S
– O peradores R ELAC IO N ALES
– O peradores LÓ G IC O S
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 11
3.7 -O perandos (cont)
Ö O PER AD O R D E ASIG N AC IÓ N
=
Asigna elvalorfinalde una expresión a un identificador
identificador= expresión ;
Adm ite asignaciones m últiples
identificador1 = identificador2 = ...= expresión ;
Ö O PER AD O R ES AR ITM ÉTIC O S :Binarios /U narios
– O peradores BIN AR IO S (2 operandos)
+ (sum a)-(resta)* (m ult)/(div)%
(m ódulo,resto división)
% solo aplicable división entre enteros
C on operandos de distinto tipo,elde m enorrango se convierte al
tipo de m ayorrango (antes de la operación).R esultado tipo de
m ayorrango
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 12
3.7 -O perandos (cont)
Ö O PER AD O R ES AR ITM ÉTIC O S :Binarios /U narios
– O peradores U N AR IO S (1 operando):
++
(m enos unario)cam bia elsigno deloperando.Ej:-3
(increm ento +1).Ej:
y=5*++x equivale y=5*(x+1)
y=5*x++ equivale y=(5*x)+1
--
(decrem ento -1).Ej:y=5*--x equivale Y=5*(x-1)
sizeof (tam año de)calcula eltam año (bytes)de un objeto
Ej:intx ;y=sizeofx ...y tom a elvalor1
z=sizeof1000 ...z tom a elvalor2
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 13
3.7 -O perandos (cont)
Ö O PER AD O R ES R ELAC IO N ALES
< <= > >= ==(igualque) !=(distinto de)
D evuelve un valorC IER TO (internam ente núm ero distinto de 0) o
FALSO (internam ente núm ero 0)
Ö O PER AD O R ES LÓ G IC O S
&&
(and)
||(or) !(not)
D evuelve un valorC IER TO (1 ó !=0)o FALSO (0)
O P ER A D O R
PR EC ED EN C IA D E
O PER AD O R ES
(),[]
-,+ +
, ! , sizeof
S e evalúan d e d erecha a izquierda
* ,/,%
+
<
,-
< =
>
= =
, !=
> =
&&
||
?:
= ,+ = ,-= ,* = ,/= ,% =
Tem a 3 :Program ación en C .C onceptos básicos
S e evalúan d e d erecha a izquierda
Fundam entos de Program ación 14
3.8 -Sentencias
“instrucción com pleta para que elordenadorrealice una acción “
Pueden serde tres tipos :
Ö Sentencias SIM PLES :
N orm alm ente variable + asignación + expresión.Ej:x=3 ;++x ;
Siem pre acaban en ;
Ö Sentencias C O M PU ESTAS :conjunto de sentencias encerradas entre
llaves { }.N unca acaban en ;
Ö Sentencias de C O N TR O L :deciden elflujo de ejecución
– SELEC C IÓ N /ITER AC IÓ N /BIFU R C AC IÓ N IN C O N D IC IO N AL
3.9 -C om entarios
Texto aclaratorio encerrado entre
/*(texto)*/
Ignorado porelcom pilador.
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 15
Tem a 3 :Program ación en C :C onceptos B ásicos
3.10 -Program ación elem entalen C
3.10.1 -Estructura de un program a escrito en C
3.10.2 -Archivos de cabecera
3.10.3 -Entrada y salida de datos
3.10.4 -Sentencias de controlde program a
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 16
3.10.1 -Estructura de un program a en C
/* C O M EN TAR IO S */
Inform a alcom piladorde los archivos externos que va a
#IN C LU D Es
utilizarelprogram a
#D EFIN Es
TYPED EFs
D EC LAR AC IÓ N de variables globales
FU N C IO N ES
m ain()
{
(cuerpo delprogram a)
}
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 17
3.10.2 -A rchivos de cabecera
Archivos que utiliza elcom piladorpara reconocerlas constantes y funciones
externas que va a utilizarelprogram a.
Se definen :
Ö N om bre y valorde las C O N STAN TES
Ö N om bre,parám etros que necesita y tipo de resultado que devuelven las
FU N C IÓ N ES
Sintaxis :
– #include <nom breArchivoC abecera.h>
Archivo de cabecera de la librería estándarsum inistrada porel
com pilador.Los m ás utilizados son :
stdio.h ..Funciones de entrada/salida de los ficheros estándar
y de m anejo de archivos
m ath.h ..Funciones m atem áticas (trigonom ét,potencias,..)
stdlib.h ..Funciones de caráctergeneral
– #include “c:\..path..\nom breArchivoC abecera.h”
Archivo de cabecera definido porelprogram ador
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 18
3.10.3 -Entrada y salida de datos
Funciones que perm iten introducirdatos desde elTEC LAD O y m ostrar
inform ación en la PAN TALLA delordenador:
Ö intgetchar()
librería stdio.h
– Lectura delsiguiente carácterdeldispositivo estándarde entrada de
datos (teclado)
– D evuelve elcarácterleído en form a de entero
Ö intputchar(intc)
librería stdio.h
– Escribe en eldispositivo estándarde salida (m onitor)elcarácter
alm acenado en la variable entera “c”
– D evuelve elcarácterescrito.
#include <stdio.h>
m ain()
{
charc;
c=getchar();
putcha(c);
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 19
}
3.10.3 -Entrada y salida de datos
Ö intscanf(char *form ato,listaVariables)
librería stdio.h
– Lectura de diferentes tipos de datos desde teclado
– char*form ato ..Indica eltipo de variable y form ato de lectura
• C adena de caracteres donde elcódigo de tipo está precedido del
sím bolo % : c
C arácter
d
e
f
g
h
i
o
s
u
x
Entero decim al
C om a flotante con exponente
C om a flotante
C om a flotante (e ó f)
Entero corto
Entero decim al,octaló hexadecim al
Entero octal
C adena de caracteres
Entero decim alsin signo
Entero hexadecim al
• (opcional)N úm ero entre % y elcódigo de tipo ..indica elnúm ero
m áxim o de caracteres que acepta delteclado para esa variable
(incluyendo puntos decim ales,”e”de float,etc)
– listaVariables ..Variables a leerprecedidas porelsím bolo &
• Los separadores de los datos podrán serespacios o “\n”(enter)
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 20
3.10.3 -Entrada y salida de datos
Ö intscanf(char *form ato,listaVariables)
Ö -EJEM PLO S
intcoste;
floatinteres;
chartipo;
scanf(“% d% f% c”,&coste,&interes,&tipo);
entrada "23 45.3 pepe[enter]" >> coste=23,interes=45.3,tipo='p'
entrada "43[enter]1.1[enter]julio[enter]" >> coste=43,interes=1.1,tipo='j'
scanf(“% 2d% 4f% c”,&coste,&interes,&tipo);
entrada "123 12.345 k" >> coste=12,interes=12.3,tipo='k'
scanf(“% 3d@ hola% 5e% c”,&coste,&interes,&tipo);
entrada "1234@ hola45e321 g" >> coste=123,interes=45e32,tipo='g'
entrada "1234 45e321 g" >> error
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 21
3.10.3 -Entrada y salida de datos
Ö intprintf(char *form ato,listaVariables)
librería stdio.h
– M uestra en pantalla listaVariables con un form ato determ inado
– char*form ato ..Tipo de cada variable y form ato visualización
• Se pueden incluircadenas de texto y secuencias de escape
• Elcódigo de tipo está precedido delsím bolo % y coinciden con los
enum erados en la función scanf(excepto tipo h)
• Sieltipo no coincide con elde la variable,se visualizará en el
form ato nuevo sin m odificarla variable.
• Se puede especificarelnúm ero de caracteres a representar.
– listaVariables ..Variables a visualizar(N O están precedidas de & )
EJEM PLO S :sidefinim os ...floatx=6.123
se visualiza
printf("R esultado :% d",x)
printf("R esultado :% 3d",x)
"
printf("R esultado :% 3.1f",x)
"
printf("R esultado :% 3.1f",(int)x)
"
Tem a 3 :Program ación en C .C onceptos básicos
R esultado :
R esultado :
R esultado :
R esultado :
XX
XX
6.1
6.0
Fundam entos de Program ación 22
3.10.4 -Sentencias de controlde program a
Ö SELEC C IÓ N SIM PLE
:
if (expresión) sentencia1;
else sentencia2;
Siexpresión=cierta<>0 se ejecuta la sentencia 1,en caso contrario 2
Sideseam os que sentencia1 ó sentencia2 contenga m as de una
sentencia,deberem os encerrarlas entre llaves { }
Ejem plo :
if (n!=0)
{
printf("Introduce tu edad :");
scanf("% d",edad));
}
else printf("ER R O R :\" n \" no puede sercero\n");
O bservarque sideseo escribirun m ensaje utilizando las com illas ("n"),debo
colocarlas com o secuencias de escape para distinguirlas de las com illas que
delim itan eltexto.
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 23
3.10.4 -Sentencias de controlde program a
ÖSELEC C IÓ N M Ú LTIPLE
sw itch (expresion)
{
case kVALO R 1:
sentencias-1
[break;]
case kVALO R 2:
sentencias-2
[break;]
[default:
sentencias-N ]
}
#include <stdio.h>
void m ain()
{
intx,y,n;
scanf("% d% d",& x,& y);
sw itch (n= unsigned int(x/y))
{
case 0:
printf("Elresultado es nulo");
break;
case 1:
printf("Elresultado es la unidad");
break;
default:
printf("Elresultado es > unidad");
}
}
Según elvalor de una "expresión" ,se ejecuta un conjunto de
sentencias
Si"expresión" no tom a ningún valor contem plado,se ejecutan las
sentencias-N (por defecto)
"break" efectúa una salida incondicionalde la estructura de control
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 24
Ejem plo :Sentencia SW ITC H
#include <stdio.h>
void m ain()
{
intcodigo;
char color,talla;
printf("\nEscribe elcodigo delarticulo (nnnct): ");
scanf("% 3d% c% c",& codigo,& color,& talla);
printf("\nA rticulo N um ero % d",codigo);
printf("\nC olor :");
sw itch (color)
{
case 'A ':
printf("A ZU L");
break;
case 'R ':
printf("R O JO ");
break;
default:
printf("N O C O D IFIC A D O ");
}
Tem a 3 :Program ación en C .C onceptos básicos
printf("\nTalla :");
sw itch (talla)
{
case 'P':
printf("PEQ U EN A ");
break;
case 'G ':
printf("G R A N D E");
break;
case 'X':
printf("EXTR A G R A N D E");
break;
default:
printf("N O
C odificado");
}
}
Fundam entos de Program ación 25
3.10.4 -Sentencias de controlde program a
Ö R EPETIC IÓ N C O N C O N D IC IÓ N IN IC IAL
w hile (expresión)
{
sentencias
}
Ö R EPETIC IÓ N C O N C O N D IC IÓ N FIN AL
do
{
sentencias
} w hile (expresión)
Tem a 3 :Program ación en C .C onceptos básicos
#include <stdio.h>
void m ain()
{
char c=' ';
w hile (c != '\n')
{
c=getchar();
putchar(c);
}
}
#include <stdio.h>
void m ain()
{
char c=' ';
do
{
c=getchar();
putchar(c);
} w hile (c != '\n');
}
Fundam entos de Program ación 26
3.10.4 -Sentencias de controlde program a
Ö R EPETIC IÓ N C O N C O N TAD O R
for (inicial;expresión ;cuenta )
{
sentencias
}
#include <stdio.h>
void m ain()
{
intdato,veces,j;
printf("\nR ealizar para elentero :");
scanf("% d",& dato );
for (j=1 ;j<=dato ;j++)
for (veces=0 ;veces<j;veces++)
printf("% d",j);
printf("\n");
}
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 27
3.10.4 -Sentencias de controlde program a
Ö R U PTU R A: break;
Perm ite salida incondicionaldelbucle m ás interno en que se encuentre
(term inarbucle o sw itch)
Ö C O N TIN U AR : continue;
Se em plea para saltarse elresto de la pasada actual delbucle.Elbucle no
term ina,sólo no se ejecutan las instrucciones a continuación en él
saltando a la siguiente pasada.
Ö SALTO IN C O N D IC IO N AL: goto etiqueta;
Salta de form a incondicionala la instrucción asociada con la etiqueta.
Ejem plo:
if(x<0)
goto etiqueta;
else
.....
etiqueta:printf(“Bla bla y bla”);
Ö O PER AD O R C O N D IC IO N AL: expresion1 ? expresion2 :expresion3;
Siexpresion1 es cierta,se evalúa expresion2 adquiriendo este valorla
expresión condicional.Sies falsa (0)se evalúa expresion3 adquiriendo
ese valorla expresión condicional.
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 28
EJEM PLO S.
Identificadores :
z juan84 program a_1
9 5hojas
program a’1
tierraVerde
O LE! M ío
_vale VO LTAJE
kw *hora no-vale
C onstantes:
enteras decim ales.
127 -23 9999
1,00 9.0 1 2 3 093
enteras octales.
07 0 07745
125
082
01.11 05,0
enteras hexadecim ales.
0x3 0xf 0xaFd18
0xeg 0xA.00 0fbbb
com a flotante.
0. 1.0 8.43 6E-3 -2E-2 0.32e14 4.3e2
2 2,9223 9e3.3 5e 11
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 29
EJEM PLO S.(C O N T.)
C onstantes:
C arácter.
‘a’ ‘H ’ ‘\n’ ‘‘
“A” ‘ab’
C adena de caracteres.
“vale” “N om bre\nApellidos” “ 1 “
“#200 Euros#” “C :\\D O S\\*.*”
“\”elm ejor\””
‘no vale’ “tam poco vale’
Sim bólicas.
#define R AD IO 3.1 #define PI 3,1416 #define N O M BR E “Pepe”
Variables:
shortinta,b;
floatx = 10e-3,y = 1.0;
Tem a 3 :Program ación en C .C onceptos básicos
charfincadena = ‘\0’;
Fundam entos de Program ación 30
EJEM PLO S.(C O N T.)
Expresiones:
Asignación.
y = 3; c = “N om bre”; x = y = 8.0;
O peradores aritm éticos.
Inta=1,b=4,y;
floatx=3.0;
y=a+b;
y vale 5
y=a+b*3;
y vale 15
y=(a+b)*10;
y vale 50
y=b% a;
y vale 0
y=b% x;
operando ilegal
y=--b;
y vale 3,b vale 3
y=b--;
y vale 4,b vale 3
C onversión de tipos.
(float)a/2
resultado 0.5
y=b% (int)x;
y vale 1
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 31
EJEM PLO S.(C O N T.)
O peradores relacionales.
a<b
verdadero
a==b falso
a!=b verdadero
a<=b verdadero
a<=3 verdadero
a<a% b falso
a<“Juan”
errorcom pilación portipos incom patibles
O peradores lógicos
a<b&&a<=b
verdadero
a==b ||a<=2 verdadero
(a<b) falso
a<b && a<a% b falso
1 ||a<b && a<b% b
verdadero
Sentencias:
Sim ples.
y=b*a;
printf(“Pepe M ero”);
C om puesta.
{
a++;
printf(“Pepe M ero);
}
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 32
Tabla de caracteres A SC IIestándar
0
1
2
3
4
5
6
7
8
9
10
11
12
0
nul
nl
dc4
rs
(
2
<
F
P
Z
d
n
x
1
soh
vt
nak
us
)
3
=
G
Q
[
e
o
y
2
stx
np
syn
sp
*
4
>
H
R
\
f
p
z
Tem a 3 :Program ación en C .C onceptos básicos
3
etx
cr
etb
!
+
5
?
I
S
]
g
q
{
4
eot
so
can
“
,
6
@
J
T
^
h
r
|
5
enq
si
em
#
7
A
K
U
_
i
s
}
6
ack
dle
sub
$
.
8
B
L
V
`
j
t
~
7
bel
dc1
esc
%
/
9
C
M
W
a
k
u
del
8
bs
dc2
fs
&
0
:
D
N
X
b
l
v
9
ht
dc3
gs
‘
1
;
E
O
Y
c
m
w
Fundam entos de Program ación 33
EJEM PLO :C onvierte m ayúsculas <> m inúsculas
#include <stdio.h>
void m ain()
{
charc='';
w hile (c!='\n')
{
c=getchar();
if(c>='A'&& c<='Z') putchar(c+32);
else
if(c>='a'&& c<='z') putchar(c-32);
else putchar(c);
}
}
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 34
EJEM PLO :C alcular elm ínim o de tres núm eros enteros.
#include <stdio.h>
m ain()
{
inta,b,c;
printf(“\nIntroduce tres núm eros “);
scanf(“% d % d % d”,&a,&b,&c);
printf(“\nElm enornúm ero es:“);
if(a<b && a<c)
printf(“A = % d”,a);
else if(b<a && b<c) printf(“B = % d”,b);
else
printf(“C = % d”,c);
}
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 35
EJEM PLO :C áculo delfactorialde N .
#include <stdio.h>
m ain()
{
intdato,n,resultado=1;
printf(“D esea calcularelfactorialde:“);
scanf(“% d”,&dato);
n=dato;
w hile (n>0)
{
resultado= resultado*n;
n=n-1;
}
printf(“\n\nEl% d!= % d”,dato,resultado);
}
Tem a 3 :Program ación en C .C onceptos básicos
Fundam entos de Program ación 36
Descargar