Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Gallu

#61
Hola , he revisado y cambiado algunas cosas de tu código, míratelo y comentamos lo que no comprendas ...

Por cierto , por si están tentados a comentar el tema recursividad usada en el programa, no se molesten,  tengo bastante claros los pros y contras ... en este caso la use solo para el ejemplo


#include <stdio.h>
#include <stdlib.h>//funcion malloc()
//no debes usar nunca conio
//#include <conio.h> // funcion getch()
#include <string.h> // funcion strcpy()
#define  MAX_REG 2 //Define el maximo numero de registros

//limpia el buffer
#define LIMPIAR_BUFFER while(getchar() != '\n')

// Primero definimos los tipos
typedef struct registro1
{
    char concepto[30+1];
    char RFC[21+1];
    float monto;
    int mes;
    struct registro1* sig;

}ingreso;

int introduceRegistro(ingreso **pIngreso);//le pasamos el puntero original de la lista

//agrega un elemento a la lista
void addIngreso(ingreso **pIngreso , ingreso *aux );

//imprime el campo concepto de todos los elementos en la lista
void imprimeConcepto(ingreso *pIngreso);


int main()
{
    ingreso *pIngreso = NULL;
    printf("\nIngresa los datos del registro \n");
    introduceRegistro(&pIngreso);

    printf("presiona una tecla para continuar...\n") ;
    getchar();
    return 0;
}

void addIngreso(ingreso **pIngreso , ingreso *aux ){
if(*pIngreso == NULL){
*pIngreso = aux;
}else{
//llamamos recursivamente a la función
addIngreso(&((*pIngreso)->sig) , aux);
}
}

void imprimeConcepto(ingreso *pIngreso){
if(pIngreso != NULL){
printf("%s \n", pIngreso->concepto);
imprimeConcepto(pIngreso->sig);
}
}

int introduceRegistro(ingreso **pIngreso)
{
    int i;
    //lo usamos para ir agregando la información
    ingreso *aux;

    for(i=0 ;  i<MAX_REG ; i++ ){   
        aux = (ingreso*)malloc(sizeof(ingreso));//A todo puntero hay que asignarle memoria.

        printf("Concepto :");
        gets(aux->concepto);

        printf("RFC :");
        gets(aux->RFC);     

        printf("Monto :");
        scanf("%f",&aux->monto);
        LIMPIAR_BUFFER;       

        printf("Mes :");
        scanf("%d",&aux->mes);
LIMPIAR_BUFFER;
       
        //lo agregamos a la lista
        addIngreso(pIngreso, aux);
    }
   
    printf("Los valores del campo concepto de la lista de ingresos son : \n");
   //mostramos el "concepto" de todos los campos
   imprimeConcepto(*pIngreso);

return 0;
}


Saludos
#63
Fíjate en como uso el argumento pasado a la función (el array). La clave es usar el índice(variable i) para acceder a los miembros del array.


/* Inclusion de librerias */
#include <stdio.h>
#include <stdlib.h>
/* Definicion de constantes */
#define MAX_TITULO 35
#define MAX_AUTOR 20
#define MAX_LIBRO 10

#define LIMPIA_BUFFER while(getchar()!='\n')

/* Definicion de tipos creados por el programador */
struct fecha{
     int anno;
     int mes;
};

typedef struct fecha T_fecha;

struct libreria {
      T_fecha fecha_publicacion;
      char titulo[MAX_TITULO];
      char autor[MAX_AUTOR];
};
typedef struct libreria T_libreria;
/* Prototipos de funcion */
void menu(void);
void recoger_libro(T_libreria libro[]);
void mostrar_libro(T_libreria libro[]);

int main(){
T_libreria libro[MAX_LIBRO];
recoger_libro(libro);       
       
}

void recoger_libro(T_libreria libro[])
{
    int n, i;

    printf("Libros a introducir? ");
    scanf("%d", &n);
    LIMPIA_BUFFER;

    for(i=0 ; i<n ; i++){
     printf("Titulo del libro: ");
     gets(libro[i].titulo);      
     }

    printf("Títulos incluidos. Pulse una tecla para continuar...");
    getchar();
     // con esto limpiamos la consola
    fprintf(stdout, "\033[2J"); 
    //nos posicionamos al principio
    fprintf(stdout, "\033[1;1H");
       
    printf("Los libros incluidos son: \n");
    for(i=0 ; i < n ; i++){
printf("%s \n" , libro[i].titulo);
    }

}


saludos.
#64
Foro Libre / Re: Cuentanos tu mejor chiste!!
2 Enero 2012, 13:51 PM
Qué es una mujer sentada encima de un burro ?
Un burro de dos pisos !!!!
#65
No se si te has dado cuenta de que en recoger libro estás recibiendo un array de libros , no un solo libro , usa "[ ]" para referirte a la posición del que estás guardando la información , no te da errores el compilador ? te sucede lo mismo cuando intentas mostrar los libros guardados.

Otro consejo sería que evites el uso de conio y de llamadas al sistema (" system("cls");") .

Saludos
#66
Java / Re: JavaDoc
30 Diciembre 2011, 18:40 PM
Pues va ha estar jodido revertir lo del javadoc , si tuvieras los .class o un jar/war sería posible, de todas maneras , eclipse tiene muchas funcionalidades de generación de código , solamente tendrías quedefinir, el cuerpo de la clase y sus variables , y el eclipse te da la opción de generar los getters y los setters.

Saludos.
#67
Si lo que quieres es imprimir la salida del comando ls -A con el bucle for y un fichero en cada linea , puedes hacer lo siguiente

Código (bash) [Seleccionar]

#!/bin/sh

valor=`ls -A `

echo $valor

for i in $valor ;
do
echo $i
done

#68
Hola , lo que has de hacer , es crear, o modificar si ya existiera , el archivo ~/.netrc , en este fichero especificas el dominio al que te quieres conectar , el usuario y el password,  el fichero en cuestión debe tener los permisos puestos a 600. De esta manera el login en el host ftp será automático.

En el siguiente enlace encontrarás mas info
http://www.ibiblio.org/pub/linux/docs/LuCaS/Manuales-LuCAS/doc-unixsec/unixsec-html/node195.html

Saludos.
#69
Programación C/C++ / Re: Ejecutar en C-Ayuda
12 Septiembre 2011, 21:43 PM
La pregunta no está nada clara compañero, pero si no entiendo mal  supongo que lo que buscas es algo como esto:


#include <stdio.h>

int main(){
     printf("Hola Mundo \n");
    getchar();
}


Saludos.
#70
Programación C/C++ / Advanced Linux Programming
27 Agosto 2011, 19:00 PM
Hola a todos , he encontrado el siguiente libro que tiene muy buena pinta, posteo el link en este foro por la estrecha relación Unix/Gnu-Linux y C , espero les sirva..

http://www.advancedlinuxprogramming.com/

Saludos.