Show Menu
Cheatography

Lenguaje C Cheat Sheet by

Operadores

||/|
Or
&&/&
And
==
Igual que
!
Not
!=
Diferente de
+ - / * %
Operadores aritmé­ticos
++/ --
Increm­ent­o/D­ecr­emento
< <= >= >
Compar­aciones
?:
condición? Expresión 1: Expresión 2;Si se cumple la condición se ejecuta la expresión 1 y si no se cumple se ejecuta la expresión 2

Coment­arios y salto de línea

//
Comentario de una línea
/* */
Comentario en bloque
\n
Salto de línea

Tipos de datos

char
'a'
Rango: 0..255
%c
short
-15
Rango:­-12­8...127
%hi
int
1012
Rango:­-32­768...3­2767
%i
unsigned int
128
Rango:­0...65535
%u
long
123456
 
%li
float
15.4
 
%f
double
123123.123123
 
%lf
long double
Número muy grande con decimales
 
%Lf
char X[50]
string
 
%s
En el string, "­X" es la variable y [50] es la cantidad de espacios

Directivas del prepro­cesador

# include: Para la inclusión de archivos
# define: Para la definición de macros
# if: Se usa para inclus­iones condic­ionales
# undef nume­ro: Indefino a nume­ro, es decir, anulo su definición previa

Estructura general de un programa

#include <st­dio.h> /* Cabecera estándar de entrad­a/s­alida de datos/*

Prototipos /* Aquí se definen los prototipos de las funciones se usarán dentro de la función main /*

int main(){ // Función principal

instru­cci­ones;

return 0; // Buena praxis de progra­mación
}

Entradas y salidas de datos

printf( )
Muestra en pantalla los datos
scanf(­"­%i",­&v­ari­able)
Guarda un dato que el ususario digitó
gets( )
Se usa para cadenas de strings, dado que el scanf solo lee hasta que haya un espacio
puts( )
Muestra datos en pantalla pero solo si está dentro de un condic­ional
%i: Define el tipo de dato que se está guardando.
&v­ari­abl­e:D­efine en qué posición de memoria se guardará el dato, seguido del nombre de la variable donde se guardará.
 

Sentencia if-else

if(con­dic­ión){
instru­ción;
}
else{
instru­cción;
}

Sentencia switch

switch­(se­lec­tor){

case etiqueta1: senten­cia­1;b­reak;
case etiqueta2: senten­cia­2;b­reak;
case etiqueta3: senten­cia­3;b­reak;
default: sentencia;
}
-El selector de un switch solo puede ser de tipo entero o char.
-Si no se cumple ninguno de los casos, entra al default.

Funciones matemá­ticas

ceil(x): Redondea a techo siempre
fabs(x): Devuelve el valor absoluto de x
floor(x): Redondea a piso
fmod(x,y): Calcula el residuo de la división de x/y
pow(x,p): Eleva x a la potencia p
sqrt(x): Devuelve la raíz cuadrada de x

Otros

getch( ): Para hacer que el ejecutable no se cierre inmedi­ata­mente, si no hasta que se presione una tecla

fflush­(st­din): Para limpiar el buffer
Para usar getch( ) ocupo incluir la biblioteca <co­nio.h>.

Bucles

While

while( ){

instru­cci­ones;

}

For

for(in­ici­ali­zac­ión­;co­ndi­ció­n;i­ncr­eme­nto){

instru­cci­ones;

}

Do while

do{

instru­cci­ones;

} while( );

Arrays unidim­ens­ionales

Sintaxis del array:

TipoDeDato nombre­Array [numer­oEl­eme­ntos]

Ejemplo:
int numeros[5] = {1,2,3­,4,5}
-{1,2,­3,4,5}: Forma de asignar elementos a un array o también se le pueden pedir al usuario.
-int numero­s[0]=1
 

Arrays Bidime­nsi­onales (matrices)

Sintaxis para la declar­ación:

TipoDeDato nombre­Del­Array [numer­oFilas] [numer­oCo­lumnas]

Ejemplo:
int matriz­[2][3] = {{41,42,43},{44,45,46}};
-{{41,42,43},{44,45,46}}: Así declaramos los elementos que van a rellenar la matriz, el primer grupo de números es la primera fila, por lo tanto el segundo es la segunda fila y se agrupan de 3 en 3 porque es el número de columnas.
- int matriz­[0]­[1]=42

Estruc­turas

Es una colección de datos de diferente tipo.

Declar­ación de una estruc­tura:

struct nombre­DeL­aEs­tru­cutra {

tipoDeDato nombre­DeM­iembro;
tipoDeDato nombre­DeM­iembro;
tipoDeDato nombre­DeM­iembro;

}; Aquí declaro las variables, las cuales contienen cada uno de los miembros de la estructura y puedo accesar a ellos por medio del .

Ejemplo:
struct persona{
char nombre­[20];
int edad;
}
persona1= {"Br­ian­a",17},
persona2= {"Pa­ula­"­,19};

int main(){

printf­("Su nombre es: %s "­,pe­rso­na1­.­n­ombre);
printf­("\n Su edad es: %i ", person­a1­.­edad);

return 0;
}
También le puedo pedir al usuario que me digite la inform­ación de las variables. Por ejemplo la edad la guardaría con un scanf(­"­%i",­&p­ers­ona­1.e­dad);

Arreglos de estruc­turas

Ejemplo:

struct persona{

char nombre­[20];
int edad;

}perso­nas[5]; // person­a1,...p­er­sona5

int main( ) {
int i;

for(i=­0;i­<5;i++) {
fflush­(st­din);
printf­("%i. Digite su nombre: "­,i+1);
gets(p­ers­ona­s[i­].n­ombre);
printf­("%i. Digite su edad: "­,i+1);
scanf(­"­%i",­&p­ers­ona­s[i­].e­dad);
}

Punteros

Declar­ación de un puntero:

tipoDeDato *n­omb­reD­ePu­ntero;

Ejemplo:

int main ( ){
int numero=50;
int *p_numero; //puntero

p_numero = &n­umero;
// &n­umero: Posición de memoria de numero

printf­("Dato: %i",­num­ero); //imprime 50
printf­("Dato: %i",­*p_­num­ero); /*Así también me imprime 50 que es el valor de la variable numero. */

printf­("Po­sicion de memoria: %p "­,p_­num­ero);
printf­("Po­sicion de memoria: %p "­,&­num­ero); /*Las dos formas imprimen la posición de memoria*/

return 0;
}

Help Us Go Positive!

We offset our carbon usage with Ecologi. Click the link below to help us!

We offset our carbon footprint via Ecologi
 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets