Pero lo que me espina es que no veo (o no sé ver) a empresas buscando este perfil, entonces me da miedo empezar algo así, que no me da prácticas interesantes y verme en el paro :S
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ú
/*
* File: main.h
* Author: NikNitro
*
* Created on 3 de marzo de 2015, 19:38
*/
#ifndef MAIN_H
#define MAIN_H
typedef struct Array* Primero;
struct Array {
int valor;
int tam;
Primero* sig;
};
void Crear(Primero* primero, int n);
void Destruir(Primero* primero);
void Obtener(Primero primero, int index, int *ok, int *valor);
void Cambiar(Primero* primero, int index, int valor);
void Mostrar(Primero primero);
#endif /* MAIN_H */
/*
* File: main.c
* Author: NikNitro
*
* Created on 3 de marzo de 2015, 19:37
*/
#include <stdio.h>
#include <stdlib.h>
#include "main.h"
/*
*
*/
void Crear(Primero* primero, int n) {
*primero = (Primero)malloc(sizeof(struct Array));
(*primero)->tam = n;
(*primero)->valor = 0;
(*primero)->sig = NULL;
Primero *ant = primero;
int i;
for(i=1; i<n; i++) {
Primero nuevo;
// (*nuevo) = (Primero)malloc(sizeof(struct Array));
nuevo->valor=0;
nuevo->tam = (*primero)->tam;
nuevo->sig = NULL;
(*ant)->sig = &nuevo;
ant = (*ant)->sig;
}
}
void Destruir(Primero* primero) {
Primero ptr;
while (*primero != NULL) {
ptr=*(*primero)->sig;
free((void *)*primero);
*primero=ptr;
}
}
void Obtener(Primero primero, int index, int *ok, int *valor) {
if((*valor)<primero->tam) {
int i;
Primero aux = primero;
for(i = 0; i < index; i++) {
aux = *(aux->sig);
}
(*valor)=aux->valor;
(*ok) = 1;
} else {
(*ok) = 0;
}
}
void Cambiar(Primero* primero, int index, int valor) {
int i;
Primero *aux = primero;
for(i = 0; i < valor; i++) {
aux = (*aux)->sig;
printf("%d\n", (*aux)->valor);
fflush(stdout);
}
(*aux)->valor = valor;
}
void Mostrar(Primero primero) {
int ultimo = primero->tam;
int i;
printf("{");
for(i=0; i < ultimo-1; i++) {
printf("%d, ", primero->valor);
fflush(stdout);
primero = *(primero->sig);
}
printf("%d}", primero->valor);
fflush(stdout);
}
int main() {
printf("Vamos a crear un array\n");
fflush(stdout);
Primero p;
Crear(&p, 5);
// int ok;
// int valor;
// Obtener(p, 3, &ok, &valor);
// printf("%d", valor);
// fflush(stdout);
// Cambiar(&p, 2, 1);
Mostrar(p);
return (EXIT_SUCCESS);
}