Lenguaje C
C es un lenguaje de programación de proposito general que ha sido estrechamente asociado con el sistema UNIX en donde fue desarrollado puesto que tanto el sistema como los programas que corren en él estan escritos en lenguaje C.
C es un lenguaje de relativo bajo nivel. Esta carcterización no es peyorativa, simplemente significa que C trata con el mismo tipo tipo de objetos que la mayoria de las computadoras, ya sean caracteres, números y direcciones. Estos pueden ser combinados y cambiados de sitio con los operadores aritméticos y lógicos implantados por maquinas reales.
En 1983, el American National Standards Institute (ANSI) estableció un comite, para proporcionar una moderna y comprensible definicion de C, asi como la forma de estandarizar la forma de programar en C. El lenguaje ha cambiado poco, uno de los propositos del estándar fue asegurar que la mayoria de los programas existentes pudiesen permanecer válidoso, al menos que los compiladores pudieran producir mensajes de advertencia acerca del nuevo comportamiento.
Pues bien, a partir de las consideraciones anteriores, de acuerdo al ANSI C, los programas que se presentaran a continuacion se presentaran segun la programación estructurada que invita a usar ANSI C.
ESTRUCTURA DE UN PROGRAMA EN C
Antes de empezar a mostrar los programas, me parece importante recordar un poco la forma de estructura de un programa en C, ya que aunque todos los programas son distintos, de acuerdo a la gran variedad de programadores, sin embargo todos llevan algo en comun como a continuación se describe.
main(). Indica el cominzo de la función principal del programa la cual se delimita con llaves.
Variables locales.Antes de realizar alguna operación, se deben declarar las variables que se utilizaran en el programa.
Flujo de sentencias. Es la declaración de todas las instrucciones que conforman el programa.
Definición de las funciones creadas por el programador utilizadas en main(). Finalmente se procede a definir el contenido de las funciones utilizadas dentro de main().
En C, los comandos deben ser escritos con letras minusculas.En el caso de las variables o las funciones definidas por el usuario la declaración es semejante.
TIPOS Y OPERADORES
TIPO |
TAMAÑO EN BITS |
RANGO |
char |
8 |
-127 a 127 |
unsigned char |
8 |
0 a 255 |
signed char |
8 |
-127 a 127 |
int |
16 |
-32767 a 32767 |
unsigned int |
16 |
0 a 65537 |
signed int |
16 |
-32767 a 32767 |
long int |
32 |
-2147483647 a 2147483647 |
float |
32 |
Seis dígitos de precisión |
double |
64 |
Diez digitos de precisisón |
Operador |
Acción |
- |
Resta |
+ |
Suma |
* |
Multiplicación |
% |
Módulo |
-- |
Decremento |
++ |
Incremento |
OPERADORES RELACIONALES Y LÓGICOS
Operador |
Acción |
> |
Mayor que |
>= |
Mayor o igual que |
< |
Menor que |
<= |
Menor o igual que |
= = |
Igual |
!= |
Distinto |
OPERADORES A NIVEL DE BITS
El lenguaje C soporta un completo juego de operadores a nivel de bits.Las operaciones a nivel de bits se refieren a la comprobación, asignación o desplazamiento de los bits reales que componen un byte o una palabra , que corresponden a los tipos estándar de C, char e int con sus variantes.
Operador |
Acción |
& |
Y |
| |
O |
^ |
O exclusiva |
~ |
Complemento a uno |
>> |
Desplazamiento a la derecha |
<< |
desplazamiento a la izquierda |
Funciones
En C, una función es un bloque de instrucciones que realizan una tarea especifica la cual se maneja como una unidad lógica.
La forma general para definir una función es:
nombre_de_la_función (declaración de parametros)
Ejemplos de Programas
Como nos habremos dado cuenta, los dos progrmas anteriores usan sentencias de control simples, y que no requieren de una explicación minusiosa, sin embargo se habra observado que cuando se termina de usar una sentencia de control se pone entre comentarios Enf if, End while, el uso de estos comentarios nos permite observar con mayor detenimiento en donde van termiando cada uno de los modulos y nos permiten detectar con mayor facilidad los errores cometidos, sin embargo, paro no estar usando los comentarios y mejorar el aspecto estetico de la edición, lo que podemos hacer es crear nuestro propio archivo de encabezados, para aplicarlos en futuros programas.
Archivo de Encabezado
A este archivo le podemos poner por nombre ENDS.H , y lo llamaremos con la siguiente intruccion antes del main :#include "a:ENDS.H"
#define endif
Este archivo lo debemos de guardar con extención h, es decir <ends.h>, la forma en que lo llamaremos desde nuestro programa se vara mas adelante.
Programa que imprime un número decimal a binario
#include<stdio.h>
Programa que obtiene el factorial de un número
Para la realizacion de este programa cabe aclarar que, entre otras cosas se tiene que declarar a la variable fact como unsignet int, ya que no existe el factorial de un numero negativo y que no sea entero, existen tres posibles caosos en los que podria caer el numero que introduscamos, el primero que fuera < 0, por lo que el facrorial no existe, el segundo cuando = 0, por lo que el factorial seria 1, y por ultimo el caso en que >1, en este se puede observar que se hace uso de un ciclo while, en donde se ira decrementado el valor de la variable que se introdujo y a su ves se ira multiplicando elvalor decrementado, hasta que n sea cero
.
#include<stdio.h>
void main()
cont=n;
if (cont<0)
while(cont>0)
Función del Método de la Burbuja
Es este tipo de programa selo presento la función, esta debe de ser llamada como en el anterior ejemplo, declarando los prototipos en ENDS.H o antes del MAIN.
#include "a:ends.h"
/*int cadcmp(char *, char *); */ /*Se deben declarar en el modulo principal*/
/*void cpycad(char *, char *); */
char burbuja_cad(char nom[][40], int n)
Comparación de Cadenas
En este programa se husan los famosos arreglos, ya que una palabra es una cadena de caracteres, es un programa sencillo que ayudara al entendimiento de arreglos.
include "a:ends.h"