Leitura de arquivo texto em c++

Páginas: 3 (566 palavras) Publicado: 24 de junho de 2012
# define MaxNumVertices 100
# include
# include
//# include

typedef char elem;

typedef struct no_lst
{
int v;
elem peso;
struct no_lst *prox, *fim;} no_lista;

typedef struct
{
no_lista *inicio;
int valor;
} no_vertice;

typedef struct
{
no_vertice LAdj[MaxNumVertices + 1];
int NumVertices;} Grafo;

/* função que inicializa um grafo com um determinado número de vértices dado pelo usuário */

void criar(Grafo *G, int NumVertices, int *erro)
{
if (NumVertices > MaxNumVertices)*erro = 1;
else
{
*erro = 0;
no_lista *p;
G->NumVertices = NumVertices;
int i;
for (i=1;iNumVertices;i++)
{G->LAdj[i].inicio = NULL;
}
// G->LAdj[i+1].inicio = NULL;
}
}


void inserir(Grafo *G, int v1, int v2, elem Peso, int *erro)
{
if((v1 > G->NumVertices) ||(v2 > G->NumVertices))
*erro = 1;
else
{

*erro = 0;
no_lista *p;
G->LAdj[v1].valor = v1;
p = (no_lista*)malloc(sizeof(no_lista));
p->prox = G->LAdj[v1].inicio;
p->v = v2;
p->peso = Peso;
G->LAdj[v1].inicio = p;
G->LAdj[v2].valor = v2;
p = (no_lista*)malloc(sizeof (no_lista));
p->prox = G->LAdj[v2].inicio;
p->v = v1;
p->peso = Peso;
G->LAdj[v2].inicio = p;
}
}

/*função que verifica se umaaresta existe entre 2 vértices*/

int existe(Grafo *G, int v1, int v2, int *erro)
{
if((v1 > G->NumVertices) || (v2 > G->NumVertices))
{
*erro = 1;
return 0;
}
else{
*erro = 0;
int encontrou = 0;
no_lista *aux = G->LAdj[v1].inicio;
while ((aux!=NULL) && (!encontrou))
if (aux-> v == v2)
encontrou =...
Ler documento completo

Por favor, assinar para o acesso.

Estes textos também podem ser interessantes

  • Arquivo em C
  • Arquivos em c
  • 3 Arquivos Manipula o de arquivos em C
  • leitura de texto
  • LEITURA E TEXTO
  • leitura e texto
  • leitura de texto
  • LEITURA E TEXTO

Seja um membro do Trabalhos Feitos

CADASTRE-SE AGORA!