Difference between revisions of "C"
Adelo Vieira (talk | contribs) (→Potencia) |
Adelo Vieira (talk | contribs) m (Adelo Vieira moved page C language to C) |
||
(17 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | |||
+ | <br /> | ||
==Estructura== | ==Estructura== | ||
<!-- | <!-- | ||
Line 41: | Line 43: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | <br /> | ||
==Compilación== | ==Compilación== | ||
Compiladores: gcc / cc | Compiladores: gcc / cc | ||
Line 67: | Line 71: | ||
en el caso anterior programa.o no se guardará | en el caso anterior programa.o no se guardará | ||
+ | |||
+ | <br /> | ||
==Comentarios== | ==Comentarios== | ||
/* Ceci est un commentaire pour tester l'utilisation de cette option | /* Ceci est un commentaire pour tester l'utilisation de cette option | ||
Line 73: | Line 79: | ||
// Par contre, avec cette option on doit utiliser juste une lingne. | // Par contre, avec cette option on doit utiliser juste une lingne. | ||
+ | |||
+ | <br /> | ||
==Tipos de variables== | ==Tipos de variables== | ||
int a; | int a; | ||
Line 85: | Line 93: | ||
char *car; | char *car; | ||
+ | |||
+ | <br /> | ||
+ | ==Operadores== | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ===/ división - Cociente=== | ||
+ | |||
+ | Si tes 2 opérandes sont des entiers, alors "/" te renverra la division entière. Es decir en este caso / calcula el cociente. | ||
+ | 5 / 2 = 2 | ||
+ | |||
+ | Si queremos obtener el valor de la división: | ||
+ | 5.0 / 2.0 = 2.5 | ||
+ | o, (float)5 / 2 = 2.5 | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ===% Modulo=== | ||
+ | Calcula el resto(modulo) de una división: | ||
+ | 4%2 = 0 | ||
+ | 5%2 = 1 | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ===Les opérateurs de comparaison=== | ||
+ | |||
+ | < Strictement inférieur à | ||
+ | > Strictement supérieur à | ||
+ | <= Inférieur ou égal à | ||
+ | >= Supérieur ou égal à | ||
+ | == Égal à | ||
+ | != Différent de | ||
+ | |||
+ | y && | ||
+ | o || | ||
+ | |||
+ | |||
+ | <br /> | ||
==Funciones== | ==Funciones== | ||
− | ===fprintf=== | + | |
+ | |||
+ | <br /> | ||
+ | ===fprintf - fscanf=== | ||
fprintf(stdout,"Bonjour!\nCeci est mon premier programme en langage c\n"); | fprintf(stdout,"Bonjour!\nCeci est mon premier programme en langage c\n"); | ||
Line 95: | Line 144: | ||
\n : salto de línea | \n : salto de línea | ||
− | + | ||
fscanf(stdin,"%d",&n); | fscanf(stdin,"%d",&n); | ||
+ | |||
+ | Ou avec plusieurs paramètres. Dans ce cas, la lettre qui suit les « % » dans le format correspond à un type de variable : | ||
+ | {| class="wikitable" border="1" | ||
+ | ! Type !! Lettre | ||
+ | |- | ||
+ | | int || %d | ||
+ | |- | ||
+ | | long || %ld | ||
+ | |- | ||
+ | | float/double || %f / %lf | ||
+ | |- | ||
+ | | char || %c | ||
+ | |- | ||
+ | | string (char*) || %s | ||
+ | |- | ||
+ | | pointeur (void*) || %p | ||
+ | |- | ||
+ | |short | ||
+ | |%hd | ||
+ | |- | ||
+ | | entier hexadécimal || %x | ||
+ | |} | ||
+ | |||
+ | |||
+ | <br /> | ||
===sizeof=== | ===sizeof=== | ||
Retorna el tamaño que ocupa en el disco una variable, a esta funcion se le puede ingresar el nombre de la variable o el tipo de variable | Retorna el tamaño que ocupa en el disco una variable, a esta funcion se le puede ingresar el nombre de la variable o el tipo de variable | ||
Line 103: | Line 177: | ||
sizeof(int) | sizeof(int) | ||
+ | |||
+ | <br /> | ||
+ | ===Funciones matemáticas=== | ||
+ | https://en.wikipedia.org/wiki/C_mathematical_functions | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ====math.h - stdlib.h==== | ||
+ | Most of the mathematical functions are defined in math.h (cmath header in C++). The functions that operate on integers, such as abs, labs, div, and ldiv, are instead defined in the stdlib.h header (cstdlib header in C++). Ver el artículo de Wikipedia señalado arriba para una lista de las funciones. | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ====abs==== | ||
+ | Definida en <stdlib.h> | ||
+ | abs(-5); | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ===Manejo de archivos=== | ||
+ | https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C/Manejo_de_archivos#fprintf | ||
+ | |||
+ | |||
+ | <br /> | ||
==Algorimos comunes== | ==Algorimos comunes== | ||
+ | |||
+ | <br /> | ||
===Potencia=== | ===Potencia=== | ||
<syntaxhighlight lang="c"> | <syntaxhighlight lang="c"> | ||
− | + | ... | |
if (x==0 && n==0) | if (x==0 && n==0) | ||
{ | { | ||
Line 122: | Line 221: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | <br /> | ||
+ | ===Factorial=== | ||
+ | <syntaxhighlight lang="c"> | ||
+ | ... | ||
+ | if (n==0) | ||
+ | { | ||
+ | f=1; | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | f=n; | ||
+ | for (i=1 ; i<(n-1) ; i++) | ||
+ | { | ||
+ | f=f*(n-i); | ||
+ | } | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | <br /> |
Latest revision as of 15:27, 21 June 2020
Contents
Estructura
#include<stdio.h>
int main(void)
{
int a;
long int b;
short int c;
float x;
double y;
char carac;
int *ent;
float *reel;
double *dreel;
char *car;
fprintf(stdout,"une variable de type int est codee sur %ld octets \n",sizeof(int)); //sizeof retorna el tamaño que ocupa en el disco una variable, a esta funcion se le puede ingresar el nombre de la variable o el tipo de variable
fprintf(stdout,"une variable de type long int est codee sur %ld octets \n",sizeof(b));
fprintf(stdout,"une variable de type short int est codee sur %ld octets \n",sizeof(c));
fprintf(stdout,"une variable de type caractere est codee sur %lc octets \n",sizeof(carac));
fprintf(stdout,"une variable de type float est codee sur %lg octets \n",sizeof(x));
fprintf(stdout,"une variable de type double est codee sur %lg octets \n",sizeof(y));
fprintf(stdout,"une variable de type long double est codee sur %lg octets \n",sizeof(*reel));
fprintf(stdout,"une variable de type pointeur sur un entier est codee sur %ld octets \n",sizeof(*ent));
fprintf(stdout,"une variable de type pointeur sur un caractere est codee sur %lc octets \n",sizeof(*car));
fprintf(stdout,"une variable de type pointeur sur un long double est codee sur %lg octets \n", sizeof(long double *));
return 0 ;
}
Compilación
Compiladores: gcc / cc
gcc -c: Compilación: passer d'un fichier en language C à un fichier objet.
programa.c --> programa.o
gcc -o: Édition des liens: indique où se trouvent les fonctions déjà programmées.
programa.o --> programa
gcc -c programa.c ls programa.c programa.o gcc -o programa programa.o ls programa.c programa.o programa
Podemos también generar el programa ejecutable con una sola orden:
gcc -o programa programa.c ls programa.c programa
en el caso anterior programa.o no se guardará
Comentarios
/* Ceci est un commentaire pour tester l'utilisation de cette option dans laquelle on peut ecrire comentaire en plusieurs lignes */
// Par contre, avec cette option on doit utiliser juste une lingne.
Tipos de variables
int a; long int b; short int c; float x; double y; char carac; int *ent; float *reel; double *dreel; char *car;
Operadores
/ división - Cociente
Si tes 2 opérandes sont des entiers, alors "/" te renverra la division entière. Es decir en este caso / calcula el cociente.
5 / 2 = 2
Si queremos obtener el valor de la división:
5.0 / 2.0 = 2.5
o, (float)5 / 2 = 2.5
% Modulo
Calcula el resto(modulo) de una división:
4%2 = 0 5%2 = 1
Les opérateurs de comparaison
< Strictement inférieur à > Strictement supérieur à <= Inférieur ou égal à >= Supérieur ou égal à == Égal à != Différent de
y && o ||
Funciones
fprintf - fscanf
fprintf(stdout,"Bonjour!\nCeci est mon premier programme en langage c\n");
fprintf(stdout,"une variable de type int est codee sur %ld octets \n",sizeof(int));
fprintf(stdout,"var1=%d\nvar2=%d\n",var1,var2);
\n : salto de línea
fscanf(stdin,"%d",&n);
Ou avec plusieurs paramètres. Dans ce cas, la lettre qui suit les « % » dans le format correspond à un type de variable :
Type | Lettre |
---|---|
int | %d |
long | %ld |
float/double | %f / %lf |
char | %c |
string (char*) | %s |
pointeur (void*) | %p |
short | %hd |
entier hexadécimal | %x |
sizeof
Retorna el tamaño que ocupa en el disco una variable, a esta funcion se le puede ingresar el nombre de la variable o el tipo de variable
sizeof(int)
Funciones matemáticas
https://en.wikipedia.org/wiki/C_mathematical_functions
math.h - stdlib.h
Most of the mathematical functions are defined in math.h (cmath header in C++). The functions that operate on integers, such as abs, labs, div, and ldiv, are instead defined in the stdlib.h header (cstdlib header in C++). Ver el artículo de Wikipedia señalado arriba para una lista de las funciones.
abs
Definida en <stdlib.h>
abs(-5);
Manejo de archivos
https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C/Manejo_de_archivos#fprintf
Algorimos comunes
Potencia
...
if (x==0 && n==0)
{
fprintf(stdout,"0^0 no está definida.\n");
}
else
{
p=1;
for (i=1 ; i<=n ; i++)
{
p=p*x;
}
fprintf(stdout,"%d^%d=%d\n",x,n,p);
}
Factorial
...
if (n==0)
{
f=1;
}
else
{
f=n;
for (i=1 ; i<(n-1) ; i++)
{
f=f*(n-i);
}
}