aprender programacion
lunes, 16 de enero de 2012
Ficheros 3
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *f, *g;
char nomFich[50], nomFich2[50];
char c;
double res, n;
printf("Introduce el nombre del fichero: ");
scanf("%s", nomFich);
f=fopen(nomFich, "r");
if (f==NULL)
printf("El fichero \'%s\' no se ha podido abrir.", nomFich);
else {
printf("Introduce el nombre del fichero resultado: ");
scanf("%s", nomFich2);
g=fopen(nomFich2, "w");
if (g==NULL) {
printf("El fichero \'%s\' no se ha podido abrir.", nomFich2);
fclose(f);
}
else {
fscanf(f, "%lf%c", &res, &c); /*Leer primer número y espacio o \n */
while (!feof(f)){
fprintf(g,"%7.2f ", res);
while (!feof(f) && (c!='\n')){
fscanf(f, "%c%lf",&c,&n); /*Leer operación y número */
fprintf(g,"%c %7.2f ",c, n);
switch (c) {
case '+': res=res+n;break;
case '-': res=res-n;break;
case '*': res=res*n;break;
case '/': res=res/n;break;
}
fscanf(f,"%c",&c); /* Leer \n */
}
fprintf(g, "= %7.2f\n", res);
fscanf(f, "%lf%c", &res, &c); /*Otra vez lo mismo con la siguiente línea */
}
fclose(f);fclose(g);
}
}
system("pause");
return 0;
}
Ficheros 2
#include <stdio.h>
#include <stdlib.h>
int main()
{
int c,i;
char s[100];
FILE *pf;
/* abrimos un fichero donde escribimos
con fputs() y leemos con fgets() */
pf=fopen("hola.txt","w+");
fputs("hola pepe\n",pf); /* escribimos en el fichero */
fputs("hasta luego\n",pf);
rewind(pf);
system ("pause");
printf("\nLEEMOS FICHERO:\n");
fgets(s,100,pf); /* leemos del fichero */
puts(s);
fgets(s,20,pf);
puts(s);
if(feof(pf)) printf("error_1\n");
system("pause");
/* si sigo leyendo hay error */
printf("\nSI SEGUIMOS LEYENDO MAS ALLA DE EOF --> ERROR!\n");
fgets(s,100,pf);
if(feof(pf)) printf("error_2\n");
puts(s);
fclose(pf);
/* reabrimos y leemos caracter a caracter */
pf=fopen("hola.txt","r+");
printf("LEEMOS CARACTER A CARACTER: \n");
while(feof(pf)==0)
{
c=getc(pf);
putchar(c);
}
putchar('\n');
fclose(pf);
system("pause");
printf("\n FINALMENTE BORRAMOS EL FICHERO.\n");
remove("hola.txt");
printf("\n\n");
system("PAUSE");
return 0;
}
Ficheros 1
#include <stdio.h>
#include <stdlib.h>
#define MAX 100
int main( )
{
char cad[MAX];
FILE *pf;
/* STEP 1: Creamos fichero y escribimos en el mismo */
pf=fopen("fichero1.txt","w");
fprintf(pf, "HOLA: ESCRIBIENDO EN UN FICHERO.\n");
fputs("Esto es una prueba.\n",pf);
fclose(pf);
printf("\nComprueba en tu carpeta la creacion del fichero\n\n");
system("pause");
system("cls");
/* STEP 2: Renombramos el fichero */
rename("fichero1.txt","fichero11.txt");
printf("\nComprueba en tu carpeta el cambio de nombre del fichero\n\n");
system("pause");
system("cls");
/* STEP 3: Abrimos el fichero y leemos su contenido */
printf("\nAhora leemos el fichero y lo escribimos por duplicado en pantalla: \n\n");
pf=fopen("fichero11.txt","r");
fgets(cad,MAX,pf);
printf("%s",cad);
puts(cad);
printf("\n");
fgets(cad,MAX,pf);
fprintf(stdout, "%s",cad);
fputs(cad,stdout);
printf("\n");
fclose(pf);
system("pause");
system("cls");
/* STEP 4: Borramos fichero */
printf("\nFinalmente borramos el fichero.\n\n");
remove("fichero11.txt");
system("PAUSE");
return 0;
}
miércoles, 11 de enero de 2012
/* Abertura, escritura y lectura en un fichero de texto.
Fijaos en la carpeta donde estais trabajando el fichero
"hola.txt" que se crea. Abrirlo y ver como se ha escrito
la informacion en él */
#include <stdio.h>
#include <stdlib.h>
int main()
{
int c,i,j,jl;
char s[100];
FILE *pf;
/* reabrimos y leemos caracter a caracter */
pf=fopen("hola.txt","r");
//printf("Escribe la primera letra una 'h'\n");
printf("LEEMOS CARACTER A CARACTER: \n");
j=0;jl=0;
while(feof(pf)==0)
{
c=getc(pf);
j++;
if(c=='\n')jl++;
} //leemos fichero y contamos total numero de caracteres y los
//saltos de linea para luego ir hacia atrás los caracteres mas los
//saltos de linea
printf("%d",j);
i=0;
for(i=0;i<j+jl;i++) //me voy mismo numero de caracter hacia atrás
{
fseek(pf,-i,SEEK_END);
c=getc(pf);
putchar(c);
}
putchar('\n');
system("PAUSE");
return 0;
}
miércoles, 14 de diciembre de 2011
Matriz dimension N, traza
#include <stdio.h>
#define DIM 100
void LeerMatriz(float A[DIM][DIM])
{
int i,j, n;
printf("Introduce la dimension de tu matriz: \n");
scanf ("%d", &n);
for (i=0; i<n; i++)
{
printf ("Dame los %d elementos la fila %d: \n", n, i+1);
for (j=0; j<n; j++)
scanf ("%f", &A[i][j]);
}
}
void EscribirMatriz(float A[DIM][DIM])
{
int i,j, n;
printf("La matriz introducida es: \n");
for(i=0;i<n;i++)
{
printf("\nFila %d: ", i+1);
for (j=0;j<n;j++)
printf("\t%f", A[i][j]);
}
}
float TrazaMatriz(float A[DIM][DIM])
{
int i,j, fil, col;
float suma=0;
fil=col;
for(i=0;i<fil;i++)
suma+=A[i][i];
printf("\n\nLa traza (suma elementos diagonal principal) de tu matriz es: \n");
printf("%f\n\n", suma);
}
int main()
{
float A[DIM][DIM];
LeerMatriz(A);
EscribirMatriz(A);
TrazaMatriz(A);
return 0;
}
letra mas usada
#include <stdio.h>
#include <string.h>
int main()
{
char texto[20];
int i,max=0,contadores[256];
for(i=0;i <= 255;i++)
contadores[i]=0;
printf("Escribe una palabra: ");
scanf("%s",&texto);
for (i=0;i < strlen(texto);i++)
contadores[texto[i]]++;
for(i=0;i <= 255;i++)
if(contadores[i] > max)
max=contadores[i];
for(i=0;i <= 255;i++)
if(contadores[i]==max) printf("\nLa letra mas usada es la %c",i);
getchar;
return 0;
}
DICE NUMERO DE LETRAS Y ESCRIBE DEL REVES
#include <stdio.h>
int main ()
{
char c, palabra[21];
int i;
printf("Teclea una palabra de menos de 20 letras:\n");
scanf("%s", palabra);
i=0;
while (palabra[i++]!='\0');
printf("%s tiene %d letras.\n", palabra, i-1);
printf("%s escrita al reves es: ", palabra);
while (i>0) printf("%c", palabra[--i]);
printf("\n");
return 0;
}
Suscribirse a:
Entradas (Atom)