Tema 2. Fundamentos de la Programación Introducción a la Informática E.U. Politécnica. Diseño Industrial. Primer Curso. Curso 2005-2006 José Luis Leiva Olivencia. Despacho: I-326(El Ejido) 05/05/2006 Dpto. Lenguajes y Ciencias de la Computación 1 Introducción n n Un programa se considera como una secuencia lógica de instrucciones que manipulan un conjunto de objetos (datos) para obtener unos resultados. Todo programa contiene dos bloques diferenciados: n n n Bloque de declaraciones: se especifican los objetos que utiliza el programa (constantes, variables, tablas, registros, etc) Bloque de instrucciones: conjunto de operaciones que se han de realizar para la obtención de los resultados obtenidos. Las instrucciones de un programa consisten generalmente en modificar los objetos del programa Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 2 1 Historia del lenguaje C n n n C es un lenguaje moderno de propósito general que combinan las características e un lenguaje de alto nivel con una serie de características que sólo se encuentran en los de más bajo nivel. Es un lenguaje que no está ligado a ningún sistema operativo, lo que permite la portabilidad de programas escritos en este lenguaje. Existe un gran número de compiladores, nosotros utilizaremos en clase el compilador DEV-C++ Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 3 Estructura de un programa en C n n El uso de mayúsculas y minúsculas INFLUYE de manera decisiva en el lenguaje C. Se recomienda para evitar problemas escribir siempre en minúsculas. La cabecera de un programa en C o bloque de declaraciones suelen constar de: n Comentarios (nombre de programa, fecha, programador,…) n n n Directrices #include (de inclusión) y #define (de sustitución) n n n Ej. /*Esto es un ejemplo*/ /*Programa realizado por Agapito Perez*/ Ej. #include <stdio.h> Ej. #define pi 3.14 El bloque de instrucciones DEBE estar compuesto por funciones, una de ellas se denomina main. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 4 2 Estructura de un programa en C #include <stdio.h> #define pi 3.14; void funcion1(); main() { printf(“Buenos días. Soy el programa principal.\n”); funcion1(); printf(“Acabamos de realizar nuestro primer programa”); } funcion1() { printf(“Hola y adios. Soy un subprograma\n”); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 5 Variables de un programa n Son objetos de un programa que son manipulados por las instrucciones. Mediante ellos, podremos realizar el almacenamiento de los datos y de los resultados de las distintas operaciones que intervienen en la solución del problema. Todo variable tiene 3 atributos: n n n n n Nombre: identificador Tipo: conjunto de valores que puede tomar Valor: elemento del tipo que se le asigna El valor de una variable puede cambiar durante la ejecución de un programa y debe ser declarada antes de ser utilizada. Su declaración consiste en definir el nombre de la misma con su tipo correspondiente. Cuando queramos componer una cadena de caracteres, pondremos la información entre comillas(“Ejemplo”). Si se trata de un carácter simple, lo escribiremos entre comilla simple(‘C’). El lenguaje C utiliza las siguientes palabras para designat los tipos de datos: int, long, short, unsigned, char, float y double. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 6 3 Ejemplos de declaración de variables. int i; /*i es una variable entera*/ int n, pasos, contador=0, suma; /*se declaran 4 variables enteras inicializando al valor 0 la variable contador*/ char letra, palabra[30]; /*se declara una variable para almacenar una letra, y otra para almacenar un máximo de 30 letras*/ int v[100]; /*se declara la variable v, denominada array o vector que es capaz de almacenar 100 números enteros. La primera posición es la número 0 y la última la 99. v[34] es la posición 35 de v*/ int m[10][30]; /*se declara la variable m, denominada matriz o array de array que es una estructura bidimensional de 10 filas y 30 columnas*/ long poblacion; float precio; Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 7 Operadores n Aritméticos: +, - * , / (ojo si es float o int), ++, --, % n Relacionales n n n n Lógicos n n n n == != >, <, >=, <= && ---- Y || ---- O ! ---- No Verdad: Valor distinto de 0 Falso: Valor igual a 0 Asignación: = n Paréntesis: se utilizan para anidar expresiones. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 8 4 Tablas de verdad de los operadores lógicos. A B A && B A B A || B V V V V V V V F F V F V F V F F V V F F F F F F Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 9 Entrada de datos n La constituyen todas las instrucciones que toman los datos de entrada desde un dispositivo externo y los almacena en la memoria central para que puedan ser procesados. Las instrucciones de entrada tienen como misión almacenar el dato recogido en el objeto cuyo identificador aparece en la propia instrucción. Si estos objetos tienen algún valor previo, este se pierde. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 10 5 Instrucción scanf Instrucción scanf: Permite leer datos desde teclado. Se encuentra en la librería stdio.h scanf(“formato”,lista de argumentos); Ejemplo: float n; Comando Tipo %c Carácter %f Real %s %d Cadena de caracteres Entero %i Entero scanf(“%f”,&n); Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 11 Instrucción cin n Tiene el mismo funcionamiento que la instrucción scanf, pero se encuentra en la librería iostream.h Ejemplo: float numero; cin>>numero; Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 12 6 Instrucción gets. n Muy recomendable para las cadenas de texto. Ejemplo: char nombre[20]; gets(nombre); Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 13 Salida de datos. Conjunto de instrucciones que toman los datos finales (resultados) de la memoria central y los envían a los dispositivos externos. Su misión consiste en enviar datos a un dispositivo externo. n Instrucción printf (stdio.h): printf(“formato de los argumentos”,lista de argumentos); num=7; printf(“El valor del número es %d. Gracias\n”,num); n n Instrucción cout (iostream.h) cout<<“El valor del número es “<<num<<“. Gracias”<<endl; Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 14 7 Ejemplo n Algoritmo que toma como dato de entrada un número que corresponde a la longitud de un radio y nos calcula y escribe la longitud de la circunferencia, el área del círculo y el volumen de la esfera que se corresponden con dicho radio. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 15 Solución #include <stdio.h> #include <conio.c> #include <math.h> #define PI 3.14 main() { float radio,area,longitud, volumen; printf(“Introduzca el valor del radio: “); scanf(“%f”,&radio); area=PI*radio*radio; longitud=2*PI*radio; volumen=4*PI*pow(radio,3)/3; clrscr(); printf(“El area resultante es: %f\n”,area); printf(“El volumen resultante es: %f\n”,volumen); printf(“El perímetro resultante es: %f\n”,longitud); getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 16 8 Ejemplo n Algoritmo que lee dos número enteros, calculando su suma, resta, producto y división. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 17 Solución #include <stdio.h> #include <conio.h> main() { int a,b, suma, respta, producto; float cociente; printf(“Introduzca el primer número: “); scanf(“%d”,&a); printf(“Introduzca el segundo número: “); scanf(“%d”,&b); suma=a+b; resta=a-b; producto=a*b; cociente=(float)a/b; /*¿Por qué hacemos esto?*/ printf(“La suma es %d\n”,suma); printf(“La resta es %d\n”,resta); printf(“El producto es %d\n”,producto); printf(“El cociente es %f\n”,cociente); getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 18 9 Ejemplo n Realizar un programa que nos pida por teclado un carácter y nos informe el código ASCII que le corresponde. #include <stdio.h> main() { char letra; printf(“Introduzca letra: “); scanf(“%c”,&letra); printf(“El código de %c es %d\n”,letra,letra); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 19 Instrucciones alternativas n Son aquellas que controlan la ejecución de uno o varios bloques de instrucciones, dependiendo del cumplimiento o no de alguna condición o del valor final de una expresión. Existen tres modelos típicos de instrucciones alternativas: n Alternativa simple: controla la ejecución de instrucciones por el cumplimiento o no de una condición, de tal forma que, si se cumple, se ejecutan; si no se cumple, no se ejecutan. N if (cond) { instrucciones; } COND Tema 2. Fundamentos de Programación. S INSTRUCCIONES Dpto. Lenguajes y Ciencias de la Computación 20 10 Instrucciones alternativas n Alternativa doble: controla la ejecución de instrucciones por el cumplimiento o no de una condición, de tal forma que, si se cumple, se ejecutan las instrucciones del primer bloque; si no se cumple, se ejecutan las instrucciones del segundo. N COND INSTRUCCIONES 2 S INSTRUCCIONES 1 if (cond) { instrucciones1; } else { instrucciones2; } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 21 Instrucciones alternativas n Alternativa múltiple: controla la ejecución de varios conjuntos de instrucciones por el valor final de una expresión, de tal forma que cada conjunto de instrucciones está ligado a un posible valor de la expresión, existiendo un bloque al final que engloba otros posibles valores no definidos. Se ejecutará el conjunto que se encuentre relacionado con el valor que resulte de la evaluación de la expresión, de tal forma que si éste no aparece se ejecutará el último. switch (expresion) { case valor1:instrucciones1; break; case valor2:instrucciones2; break; …………… default: instruccionesdefecto; } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 22 11 Ejemplo n Algoritmo que lee dos números y nos dice cual es el mayor o si son iguales. #include <stdio.h> #include <conio.h> main() { int a,b; printf(“Introduzca dos números: “); scanf(“%d”,&a); scanf(“%d”,&b); if (a>b) printf(“El %d es el mayor\n”,a); else if (a==b) printf(“Son iguales”); else printf(“El %d es el mayor\n”,b); getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 23 Ejemplo Realizar un programa que pida el día de la semana y nos informe de su nombre (1 Lunes, 2 Martes, ….) #include <stdio.h> #include <conio.h> main() { int dia; printf(“Introduzca día de la semana: \n”); scanf(“%d”,&dia); switch (dia) { case 1: printf(“Lunes”);break; case 2: printf(“Martes”);break; case 3: printf(“Miércoles”);break; case 4: printf(“Jueves”);break; case 5: printf(“Viernes”);break; default: printf(“No es un día laborable”); break; } getche(); } n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 24 12 Ejemplo Algoritmo que lee tres números cualesquiera y los escribe ordenados de forma ascendente: (Solución no demasiado formal) #include <stdio.h> #include <conio.h> main() { int a,b,c; printf(“Introduzca 3 números diferentes: “); scanf(“%d”,&a); scanf(“%d”,&b); scanf(“%d”,&c); if ((a>b) && (b>c)) printf(“%d-%d-%d\n”,a,b,c); if ((a>c) && (c>b)) printf(“%d-%d-%d\n”,a,c,b); if ((b>a) && (a>c)) printf(“%d-%d-%d\n”,b,a,c); n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 25 Ejemplo if ((b>c) && (c>a)) printf(“%d-%d-%d\n”,b,c,a); if ((c>a) && (a>b)) printf(“%d-%d-%d\n”,c,a,b); if ((c>b) && (b>a)) printf(“%d-%d-%d\n”,c,b,a); getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 26 13 Ejemplo (Solución más formal) #include <stdio.h> #include <conio.h> main() { int a,b,c; printf(“Introduzca 3 números diferentes: “); scanf(“%d”,&a); scanf(“%d”,&b); scanf(“%d”,&c); if (a>b) { if (b>c) printf(“%d-%d-%d”,a,b,c); else if (a>c) printf(“%d-%d-%d”,a,c,b); else printf(“%d-%d-%d”,c,a,b); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 27 Ejemplo else { if (b>c) if (a>c) printf(“%d-%d-%d”,b,a,c); else printf(“%d-%d-%d”,b,c,a); else printf(“%d-%d-%d”,c,b,a); } getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 28 14 Instrucciones repetitivas. n n Son aquellas que controlan la repetición de un conjunto de instrucciones denominado bucle mediante la evaluación de una condición que se realiza cada nueva repetición o por medio de un contador asociado. El lenguaje C dispone de las siguientes instrucciones para este propósito: n n n while (número indeterminado de repeticiones 0 a n) do..while (número indeterminado de repeticiones 1 a n) for (número determinado de repeticiones normalmente por variable asociada) Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 29 Instrucción while n Controla la ejecución de instrucciones que configuran el bucle, de tal forma que éstas se ejecutan mientras se cumpla la condición, que será evaluada siempre antes de cada repetición, es decir, mientras la condición sea CIERTA. no COND si while (cond) { bucle; } BUCLE Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 30 15 Ejemplo n Algoritmo que escribe en pantalla todos los números desde uno introducido positivo hasta la unidad. #include <stdio.h> main() { int numero; printf(“Introduzca numero positivo: “); scanf(“%d”,&numero); while (numero>0) { printf(“EL número vale ahora: %d\n”,numero); numero--; } getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 31 Instrucción do..while n Controla la ejecución de instrucciones que configuran el bucle, de tal forma que éstas se ejecutan mientras se cumpla la condición, que será evaluada siempre después de cada repetición, es decir, mientras la condición sea CIERTA. Al menos se repite 1 vez. BUCLE do { bucle; }while (cond); COND si no Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 32 16 Ejemplo n Algoritmo que escribe el factorial de un número positivo: #include <stdio.h> main() { int numero; long fact=1; printf(“Introduzca numero positivo: “); scanf(“%d”,&numero); do { fact=fact*numero; numero--; } while (numero>0); printf(“El factorial es %ld.”,fact); getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 33 Instrucción for n n La sentencia for permite ejecutar una sentencia simple o compuesta, repetidamente un número de veces conocido. Su sintaxis es: for(instr.inicio;condición;intr.actualizació n) { Instrucciones; } Por ejemplo, para imprimir los números del 1 al 100 for (i=1;i<=100;i++) { printf(“%d\t”,i); } n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 34 17 Instrucción for Por ejemplo, para imprimir los múltiplos de 7 que hay entre 23 y 567 for (i=7;i<=567;i=i+7) { printf(“%d\t”,i); } n Por ejemplo, el factorial de un número positivo for (i=1;i<=n;i++) { fact=fact*i; } n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 35 Variables auxiliares de un programa n n Son objetos que utiliza un programa y por la función que realizan dentro del mismo toman un nombre especial, modelizando su funcionamiento debido a su frecuente utilización. Entre las más habituales podemos encontrar: n Contadores Acumuladores n Interruptores o conmutadores n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 36 18 Contadores n n Un contador es un objeto que se utiliza para contar cualquier evento que pueda ocurrir dentro de un programa. En general suelen contar de forma natural desde 0 y de 1 en 1, aunque se pueden realizar otros tipos de cuentas necesarios en algunos procesos. Se utilizan realizando sobre ellos dos operaciones básicas: n n Inicialización: todo contador se inicializa a 0 si realiza cuenta natural o a Vi(valor inicial), si se desea realizar otro tipo de cuenta. Contabilización o incremento: cada vez que aparece el evento a contar se ha de incrementar el contador en 1 si se realiza cuenta natural o en la In (Incremento) si se realiza otro tipo de cuenta. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 37 Ejemplo Algoritmo que lee 100 números y cuenta cuantos son positivos. #include <stdio.h> main() { int numero,contador=0,i=0; do { printf(“Introduzca numero : “); scanf(“%d”,&numero); i++; if (numero>0) contador++; } while (i<100); printf(“EL número total de positivos ha sido: %d\n”,contador); getche(); } n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 38 19 Acumuladores n n Son objetos que se utilizan en un programa para acumular elementos sucesivos de una misma operación. En general se usan para calcular sumas y productos, sin descartar otros posibles tipos de acumulación. Al igual que los contadores, para utilizarlos hay que realizar sobre ellos dos operaciones básicas: n n Inicialización: todo acumulador requiere ser inicializado con el valor neutro de la operación que va a acumular.(0 para sumas y 1 para productos) Acumulación: cuando se hace presente en la memoria el elemento a acumular por la realización de una lectura o cálculo, se efectúa la acumulación. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 39 Ejemplo Algoritmo que calcula y escribe la suma y producto de los 10 primeros número naturales. #include <stdio.h> main() { int i=1,suma=0,producto=1; do { suma=suma+i; producto=producto*i; } while (i<=10); printf(“La suma es %d. El producto es %d\n”,suma,producto); getche(); } n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 40 20 Interruptores o conmutadores. n n Los interruptores son objetos que se utilizan en un programa y sólo pueden tomar dos valores (Cierto o Falso, 1 o 0), realizando la función de transmitir información de un punto a otro dentro del programa. Podemos decir que actúan como recordatorios manteniendo características de objetos o cálculos que estuvieron presentes en un momento anterior de la ejecución de un programa. Se utilizan inicializándolos con un valor y en los puntos en que corresponda se cambian al valor contrario, de tal forma que examinado su valor posteriormente podemos realizar la transmisión de información que deseábamos. Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 41 Ejemplo Algoritmo que lee una secuencia de notas (con valores que van de 0 a 10) que termina con el valor -1 y nos dice si hubo o no alguna nota con valor 10. #include <stdio.h> main() { int sw=0,nota; do { printf(“Introduzca nota: “); scanf(“%d”,&nota); if (nota==10) sw=1; } while (nota!=-1); if (sw==1) printf(“Hubo nota 10”); else printf(“No hubo nota 10”); getche(); } n Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 42 21 Tratamiento secuencial de un vector n Suele ser más cómodo utilizar el bucle for utilizando una variable índice, que permite acceder de forma sucesiva a los distintos elementos del vector. int v[100],i; . . for (i=0;i<100;i++) tratar v[i] . . Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 43 Tratamiento secuencial de una matriz n Se realiza normalmente mediante el anidamiento de dos bucles for. El externo recorre cada una de las filas, y el interno todas las componentes de una fila. int m[10][20],f,c; . for (f=0;f<10;f++) for(c=0;c<20;c++) tratar m[f][c]; Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 44 22 1. Realizar un programa que permita al usuario elegir repetidamente entre calcular el área de la circunferencia o el volumen de la esfera. #include <stdio.h> #include <conio.c> main() { float radio, area,volumen,pi=3.14; int opcion; do{ clrscr(); printf(“Menú de opciones”); printf(“1. Área círculo\n”); printf(“2. Volumen esfera\n”); printf(“3. Salir\n”); printf(“Elegir opción: “); scanf(“%d”,&opcion); Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 45 if (opcion==1) { printf(“Introduzca el radio: “); scanf(“%f”,&radio); if (radio<0) {printf(“Valor no válido”); } else { area=pi*radio*radio; printf(“El área resultante es: %f”,area); } } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 46 23 if (opcion==2) { printf(“Introduzca el radio: “); scanf(“%f”,&radio); if (radio<0) {printf(“Valor no válido”); } else { volumen=4*pi*radio*radio*radio/3; printf(“El volumen resultante es: %f”,volumen); } } getche(); }while (opcion!=3); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 47 2. Realizar un programa que pide por teclado un número positivo e indica si es primo o no. #include <stdio.h> #include <conio.h> main() { int n=2, primo=1,numero; /*El valor 1 de la variable primo indica que suponemos que es primo*/ printf(“Introduzca número: “); scanf(“% d”,&numero); while (primo==1) && (n<numero ) ) { if (numero%n==0) { primo=0;} /*Al ser divisible por un número más pequeño asigno el valor 0 a primo para indicar que no es primo*/ n++; } if (primo==1) { printf(“E l numero %d es primo”,numero);} else {printf(“E l numero %d no es primo”,numero);} getche(); } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 48 24 3. Realizar un programa que pida por teclado un valor n y nos muestra por pantalla los n primeros t érminos de la sucesión de fibonacci. #include <stdio.h> #include <conio.h> main() { int n,ant1=1,ant2=1,i,aux; printf(“Introduzca un número: “); scanf(“% d”,&n); for (i=0;i<=n;i++) { if ((i==0) || (i==1)) { printf(“Término %d=%d\n”,i,1); ant1=1; ant2=1; } else { printf(“Término %d=%d\n”,i,ant1+ant2); aux=ant1; ant1=ant2; ant2=ant2+aux; } } getche() ; } Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 49 4. Realizar un programa que calcule la suma de los números introducidos hasta introducir un cero. #include <stdio.h> #include <conio.h> main() { int numero,suma=0; do { printf(“Introduzca numero: “); scanf(“%d”,&numero); if (numero!=0) { suma=suma+numero;} }while (numero!=0); printf(“La suma es %d\n”,suma); getche();} Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 50 25 5. Realizar un programa que pida por teclado los sueldos de los empleados de una empresa. Debe informar como resultado el mayor y el menor sueldo. #include <stdio.h> #include <conio.h> main() { float mayor=0,menor=100000,salario; int empleados, i; printf(“Introduzca numero de empleados: “); scanf(“%d”,&empleados); for (i=1;i<=empleados;i++) { printf(“Introduzca salario: “); scanf(“%f”,&salario); if (salario>mayor) mayor=salario; if (salario<menor) menor=salario; } printf(“El salario mayor es %f\n”,mayor); printf(“El salario menor es %f\b”,menor); getche();} Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 51 6. Almacenar en un vector 10 números y escribirlos en pantalla. #include <stdio.h> #include <conio.h> main() { int v[10], i; for (i=0;i<10;i++) { printf(“Introduzca número %d: “,i+1); scanf(“%d”,&v[i]); } for (i=0;i<10;i++) printf(“El número que está en la posición %d es %d\n “,i+1,v[i]); getche();} Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 52 26 Otras instrucciones interesantes n n Librería string.h n strcat(cad1,cad2); n strcmp(cad1,cad2); n strlen(cad); n strcpy(cad1,cad2); Librería stdlib.h n fflush(stdin) n system Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 53 Bibliografía n n n n Galindo, J; Rodríguez J.María, Aprendiendo C. Universidad de Cadiz. Ceballos, Fco Javier. Ed. Rama.Curso de Programación C/C++ Schildt, Herbert. Guía de autoenseñanza en C. McGrawHill. Joyanes. Fundamentos de programación. McGrawHill Tema 2. Fundamentos de Programación. Dpto. Lenguajes y Ciencias de la Computación 54 27