c

Published on December 2016 | Categories: Documents | Downloads: 56 | Comments: 0 | Views: 745
of 14
Download PDF   Embed   Report

Comments

Content

Lenguaje de Programación C

Introducción
El lenguaje de programación c fue creado en el año de 1972 por Dennis M. Ritchie y Brian Kernighan como una evolución del antiguo lenguaje B, y para escribir el código del sistema operativo unix. El desarrollo inicial de C se llevo a cabo en los laboratorios Bell de AT&T se le dio el nombre de c por que muchas de sus características fueron tomadas de su antecesor B. A menudo el lenguaje de programación C es también llamado el lenguaje de los sistemas debido a su utilidad para escribir compiladores y sistemas operativos, aun que de igual manera se puede desarrollar cualquier tipo de aplicación. Es un lenguaje muy eficiente puesto que es posible utilizar sus características de bajo nivel para realizar implementaciones optimas, es el lenguaje mas portado en existencia, habiendo compiladores para casi todos los sistemas conocidos.

Proceso de compilación en c
La compilación de un programa C se realiza en varias fases que normalmente son automatizadas y ocultadas por los entornos de desarrollo: Preprocesado consistente en modificar el código fuente en C según una serie de instrucciones (denominadas directivas de preprocesado) simplificando de esta forma el trabajo del compilador. Por ejemplo, una de las acciones más importantes es la modificación de las inclusiones (#include) por las declaraciones reales existentes en el archivo indicado. Compilación que genera el código objeto a partir del código ya preprocesado. Enlazado que une los códigos objeto de los distintos módulos y bibliotecas externas (como las bibliotecas del sistema) para generar el programa ejecutable final.
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
1

Lenguaje de Programacion C

Estructura de un Programa en C
La estructura de un programa en c es la siguiente: // importación de librerías. void main(void){ }

// importación de librerías. int main (void){ return 1 ; } dependiendo con el IDE y del compilador la estructura de la sintaxis cambia. Los comentarios en el Lenguaje C se pueden realizar con // que comenta una linea entera de código y con /* */ para bloques de código. El Lenguaje C consta de 32 palabras clave nativas que no pueden ser utilizadas como nombres de variables ni de funciones. la lista es la siguiente: auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
2

Diseño de Algoritmos y su programación I: Lenguaje de Programación C

Lenguaje de Programacion C

Las palabras clave deben escribirse siempre en minúsculas. El lenguaje diferencia de mayúsculas y minúsculas: else es una palabra reservada ELSE no lo es, Las funciones exit() y EXIT() son distintas.

Tipos de Datos en C

Los datos en el lenguaje C deben de tener un tipo. Las variables y las constantes contienen datos, y han de declarar del tipo adecuado a los valores que van a contener. Tipo de Dato int char float double void Datos que almacenan. Enteros (números enteros positivos y negativos) caracteres (letras). Números en coma flotante (números reales) Números en coma flotante de doble precisión. Se emplea con punteros (vacío).

Declaración de Variables
Las variables son espacios reservados en memoria y se utilizan para guardar datos dentro del programa; Hay que declarar las variables antes de usarlas, las variables en c se declaran de la siguiente manera. <tipo de dato> <nombre de la variable> ; int calif; también las variables se pueden inicializar al declararlas. int calif=7; o declarar varias variables en una misma declaración. int calif,x,y,z;
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
3

Lenguaje de Programacion C

Las variables globales se declaran antes del main(). Los nombres de las variables en C pueden contener cualquier numero de letras (se incluye el guión bajo, “_”) o números, pero el primer carácter debe de ser una letra necesariamente(o el guión bajo). Toda variable debe ser declarada antes de su uso. Debe tenerse en cuenta que habitualmente en c todas las variables contiene valores indeterminados tras su declaración por eso se recomienda inicializar las variables.

Constantes
Las constantes nos sirven para conservar un valor durante la ejecución de un programa las constantes en C se declaran de igual manera que una variable solo que anteponiendo la palabra const. const int pi=3.1416;

Librerías en el Lenguaje C
El lenguaje de programación C se apoya en funciones que están contenidas en librerías o bibliotecas y proveen de características que el lenguaje de manera nativa no posee; Las bibliotecas en C se declaran en la parte mas alta del programa fuera del main() su estructura es la siguiente: #include<(nombre de la librería)> #include <stdio.h>

Libreria math.h stdio.h time.h

Funciones cos, exp, fmod, log, modf, pow, sin,sqrt, tan, log, modf... fclose, feof, fopen, fprintf, printf, scanf, remove, rename... clock, ctime, gmtime, localtime, time, strftime, asctime...
4

Diseño de Algoritmos y su programación I: Lenguaje de Programación C

Lenguaje de Programacion C

Libreria stdlib.h string.h locale.h signal.h ctype.h

Funciones abs, system, rand, div, exit, free, labs, abort, atexit... memmove, strcat, memchr, strstr, strtok, strlen, strcoll... localeconv, setlocale raise, signal tolower, toupper

Ademas existen muchas mas librerías como las librerías borland conio.h y graphics.h. http://docs.mis-algoritmos.com/c.librerias.html

Entrada y Salida de información
Para fines prácticos solo utilizaremos para entradas y salidas (read y write) de datos con las siguientes funciones de la librería stdio.h: Printf.- Imprime una cadena de caracteres (es la salida estándar). printf(“Hola mundo”); La forma de imprimir variables es la siguiente: suponiendo una variable de tipo int con valor de 7 siendo una calificación para imprimirla seria: int cal=7; printf(“La calificación final es: %d”,cal); Scanf.- Es el proceso de lectura estándar desde teclado. scanf(“%i”,&cal);

Diseño de Algoritmos y su programación I: Lenguaje de Programación C

5

Lenguaje de Programacion C

Estructuras Selectivas en C
Las estructuras selectivas en el lenguaje de programación C contempla dos instrucciones de selección: if y switch, ademas el operador ? es una alternativa para if en ciertas situaciones.

IF
La forma general de la instrucción if es:

if(expresión) <instrucción>; else <instrucción>;

En forma de if anidados es: if(expresión){ }else{ if(expresión)<instrucción>; else<instrucción>; } En forma de else if: if(expresión) instrucción; else if(expresión)instrucción; else instrucción;

el símbolo ? se utiliza en forma simple para avaluar una condición con una variable y realizar una acción con esa variable un ejemplo seria:
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
6

Lenguaje de Programacion C

int x=10; int y=0; if(x>9) y=100; else y=200; y en su forma con ? int x=10; int y=0; y=x>9 ? 100 : 200;

Estructura Switch
En la estructura selectiva switch se elige entre varios casos predefinidos por el programador, ademas se puede establecer una opción por defecto si es que no se cumplen ninguna de las opciones o condiciones predeterminadas. switch (x){ case 1: printf("\n opción"); break; case 2: printf(" \n opción"); break; case 3: printf("\n opción 3"); break; default: printf(" \n Si no es ninguna de las anteriores"); }

Estructura Repetitiva While

Diseño de Algoritmos y su programación I: Lenguaje de Programación C

7

Lenguaje de Programacion C

En las estructuras repetitivas en este caso particular el while se evalúa una condición de salida y si esta es verdadera ejecutara las sentencias que se encuentran contenidas entre las llaves while(condición){ //instrucciones a ejecutar } En los bucles while se deben de cuidar las instrucciones de salida para evitar que el bucle se cicle.

Estructura Repetitiva Do
La estructura repetitiva do a diferencia de su similar el while evalúa la condición después de ejecutar una vez las sentencias que se encuentran dentro del ciclo, es decir las instrucciones se ejecutan cuando menos una vez por que primero ejecuta las instrucciones y al final evalúa la condición. do{ /*sentencias a ejecutar*/ }while(condición);

Estructura Repetitiva For
Dentro de los bucles repetitivos uno de los mas usados para repetir una secuencia de instrucciones, sobre todo cuando se conoce la cantidad exacta de veces que se quiere que se ejecute unas instrucción ya sea simple o compuesta. for(inicialización de la variable de control;condición; incremento ){ //instrucciones a ejecutar }

Estructuras de datos: Arreglos
Para poder representar datos hay veces en que las variables no son suficiente. Para estos casos utilizamos una herramienta llamada
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
8

Lenguaje de Programacion C

estructura de datos en la que podemos representar datos de diferentes maneras, como lista, como árbol, como red, etc. Las estructuras de datos mas comunes que existen en el lenguaje de programación C son los arreglos unidimencionales(arrays), vectores o listas. Un arreglo es un conjunto de posiciones de memoria adyacentes, en los cuales se almacena información del mismo tipo. Se puede pensar en un vector como en la división del espacio de una variable en cuantas partes se le asigne. La manera de declarar una lista en C en la siguiente: Tipo_de_dato Nombre_del_arreglo[Cantidad de elementos]; por ejemplo: int edades[10]; float sueldo[13]; char carreras[10];

Hay que recordar que la primera posición o renglón en una lista es la posición o renglón cero. Para la manipulación de los arreglos se aconseja el uso de los ciclos de repetición. Estructuras de Datos: Matrices Un tipo de estructura ya mas compleja son los denominados arreglos bidimencionales, tablas o matrices; y se define como un conjunto de datos del mismo tipo organizados en dos o mas columnas y uno o mas renglones. Usualmente para poder procesar internamente todos los elementos de la tabla se ocupan dos ciclos for, uno para controlar los renglones y otro para controlar las columnas. Por ejemplo las posiciones de una matriz de 4 X 3:
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
9

Lenguaje de Programacion C

(0 , 0) (1 , 0) (2 , 0) (3 , 0)

(0 , 1) (1 , 1) (2 , 1)) (3 , 1)

(0 , 2) (1 , 2) (2 , 2) (3 , 2)

La declaración de una tabla seria de acuerdo al siguiente formato: Tipo_de_dato Nombre_de_la_tabla [Renglones][Columnas]; como por ejemplo: int cal[3][4]; Ademas de estos tipos de Estructuras de Datos pueden existir arreglos de múltiples dimensiones ya sea a criterio del que lo este programando.

Diseño de Algoritmos y su programación I: Lenguaje de Programación C

10

Lenguaje de Programacion C

#include <stdio.h> #include<time.h> void main (void){

/* el dueño de una nogalera tiene registrado la altura de cada uno de sus nogales k van de 0 a 9 la altura 0 el arbol esta seco y desea conocer lo siguiente 100 nogales

a) cual es la altura del arbol mas alto* b) las pociciones donde ese encuentran los arboles de dicha altura. * c) la cantidad de arboles secos que hay en la parcela* d) la suma de todas las alturas de la diagonal principal. e) el promedio de las alturas de todos los nogales* f) la cantidad de nogales que superan el promedio de altura* */ srand((unsigned)time(NULL)); //al ser 100 nogales es un arreglo bidimencional de 10 X 10 int nogalera[10][10]; int j=0,i=0,alto=0,secos=0,altos=0,dp=0; float suma=0; printf("\n"); for(i=0;i<10;i++){ for (j = 0; j <10; j++) {

nogalera[i][j]=(rand()%10);
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
11

Lenguaje de Programacion C

printf(" %i ",(nogalera[i][j]));

suma=suma+nogalera[i][j];

if(nogalera[i][j]>alto){ alto=nogalera[i][j]; } if(nogalera[i][j]==0){ secos++; }

} printf("\n"); }

suma=(suma/100); printf("\n A) La altura del arbol mas alto es %d \n",alto); printf(" B) Las pociciones donde ese encuentran los arboles de dicha altura. \n");

for(i = 0; i <10; i++){

for(j=0; j<10;j++){ if(nogalera[i][j]==alto){
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
12

Lenguaje de Programacion C

printf(" %i , %i \n",i,j);

} if(nogalera[i][j]>suma){ altos++;

}

} }

printf("\n C)La cantidad de arboles secos que hay en la parcela es %d",secos); for(i=0;i<10;i++){ dp=dp+nogalera[i][j];

} printf("\n D) La suma de la Diagonal Principal es %d",dp); printf("\n E) El promedio de las alturas de todos los nogales es %f",suma); printf(" \n F) La cantidad de nogales que superan el promedio de altura es %d \n",altos);

/* for(i = 0; i <10; i++){
Diseño de Algoritmos y su programación I: Lenguaje de Programación C
13

Lenguaje de Programacion C

for(j=0; j<10;j++){ //printf(" %i ",(nogalera[i][j])); printf("%i",i); printf("%i ",j);

}

printf("\n"); }*/ }

Diseño de Algoritmos y su programación I: Lenguaje de Programación C

14

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close