Red de conocimiento informático - Descarga de software - Código de idioma C del mapa electrónico

Código de idioma C del mapa electrónico

fscanf(p, "s", s[i].flag);

//

Guardar información de la carretera en la memoria

fscanf(p, "s", s[i].brunch);

//

La información de la carretera se guarda en la memoria

fscanf(p , "s" , s[i].dispclass);

//

Colocar la información de la carretera en la memoria

fscanf(p, "s", s[i].Roadname);

//

Guardar la información de la carretera en la memoria

fscanf(p, "s", s[i]. sign_two);

//

Colocar la información de la carretera en la memoria

}

if(s[1].sign_one! = "")

//

Determine si la información del archivo se escribió correctamente

printf("\n\t\t\t

Información del archivo

-------

Escribiendo en la memoria correctamente

\n\n");

ma_interf ();

//

Volver a la interfaz principal

}

else

{

ma_interf();

//

Volver a la interfaz principal

}

}

/ ********************************************** ******* *******************************

****** ****

*

Nombre de la función: SortData

*

*

Descripción de la función:

Para el archivo leído La información se ordena y los resultados ordenados se muestran en la pantalla

*

*

Fecha: 2012/6 /21

*

********************************* *************** ************************************* **

*******/

void SortData(tagMap_t s[])

{

int

i=0, k=0, j=0, m=0, n=7;

//i k

es la variable de control del bucle

n

registro

La longitud del linkid

m

El número de registros exitosos marcas ordenadas

char temp[50];

printf("\n\n\t\t\t

Clasificando...... Por favor ¡espera

!

......

\n\n\t\t

Una vez completada la clasificación, todos se mostrará automáticamente según el

LinkID

número de información vial de pequeño a grande

\n\n");

. for(n=8; nlt; 13; n)

{

for(i=0; ilt; (nsizecount-2); i )

{

if((int)strlen(s[i].

linkid) == n)

//

Juzga si la longitud de

linkid

es

n

{

k=i;

//

Registro

ID de enlace

El subíndice de la matriz

s

cuando la longitud es

n

i

j=i;

//

Registrar

Linkid

El la longitud es

n

Cuando

El subíndice de la matriz

s

i

for(k=k 1; klt; (nsizecount-2); k )

//

Continuar con la siguiente iteración

Anillo

{

if((int)strlen(s[k].linkid) == n)

//

Determine si la longitud de

linkid

es

n

{

if(strcmp(s[i].linkid, s[k].linkid)gt; 0)

//

Comparar

linkid

Sus tallas cuando sus largos son iguales

n

{

i= k;

//

Grabar

Grabar

Siguiente

Cuándo

Anterior

Recuperar

el subíndice

linkid

s

más pequeño de la matriz

p>

}

}

}

strcpy(ss[m].linkid, s[i].linkid );

//

El mínimo en este momento

linkid

put

array

s

La información se almacena en

ss

array

strcpy(ss[m].flag, s [i].flag);

//

En este momento el más pequeño

linkid

poner

array

s

La información se almacena en el

ss

array

strcpy(ss[ m].brunch, s[i].brunch

//

En este momento, el mínimo

linkid

es el

matriz

< La información de p>s

se almacena en la matriz

ss

strcpy(ss[m].dispclass, s[i ].dispclass);

//

En este momento el mínimo

linkid

put

array

La información de p>

s

se almacena en el

ss

matriz

strcpy(ss[m].Nombre de la carretera, s[i].Nombre de la carretera);

//

Esta

vez

más

pequeña

linkid

Almacena la información de la matriz

s

en

<

p>ss

En matriz

strcpy(temp, s[j].linkid

//

Intersección p>

Reemplazar

s[i]

y

s[j]

en

Linkid

Información

strcpy(s[j].linkid, s[i].linkid);

strcpy(s[i]. linkid, temperatura);

strcpy(temp, s[j].flag

//

Intercambio

s[); i ]

Información de

bandera

en

s[j]

strcpy(s[j].flag, s[i].flag);

strcpy(s[i].flag, temp);

strcpy(temp, s [j].brunch);

//

Intercambio

s[i]

y

s[j]

Información

brunch

strcpy(s[j].brunch, s[i]. brunch) ;

strcpy(s[i].brunch, temp);

strcpy(temp, s[j].dispclass);

//

Intercambio

Intercambio

s[i]

y

s[j]

Información de

dispclass

strcpy(s[j].dispclass, s[i].dispclass);

strcpy (s[i].dispclass, temp);

strcpy(temp, s[j].Roadname);

//

Intercambio

s[i]

y

s[j]

Nombre de la carretera

Información

stracpy(s[j].Nombre de la carretera, s[i].Nombre de la carretera);

strcpy(s[i].Nombre de la carretera, temp);

p>

m;

//

Grabar

Grabar

Ya

programado

p >

Número de información de carreteras secuenciadas correctamente

i=j;

if(m830

==

0 )

//

Ordenar mensaje de progreso

.

Control de salida

830

Simplemente genera

1

línea

.

Y el progreso es solo 100

{

printf(".");

}

if(m100==0) //

Control de porcentaje de salida

{

if(((float)m/(nsizecount-2))*100lt;10)

{

printf(".1f \b\b\b\b"

((flotador)m/(nsizecou

nt-2))*100);

}

si no (((float)m/(nsizecount-2))*100gt;=10)

{

printf(".1f\b\b\b\b\b"

,

((float)m/(nsizecount- 2))*100);

}

}

}

}

}

sistema("cls");

for(i=0;ilt;m;i)

{

printf(" p>

s

s

s

s

s

\n"

,

ss[i].linkid

,

ss[i].flag

,

p>

ss[i].brunch

,

ss[i].dispclass, ss[i].Roadname);

}

printf("\n\n\t\t

Ordenar correctamente

-----

Presione

LinkID

El número se muestra de pequeño a grande

\n\n");

ma_interf() ;

//

Ordenación completa

Volver a la interfaz principal

}

/*** ************* ************************************* ************** ****************

************

*

Nombre de la función: Actualizar

*

*

Descripción de la función:

Actualizar los datos y almacene los resultados actualizados en un archivo nuevo

p>

*

*

Fecha: 22/6/2012

*

******* ********************************** ******************* *************************

** ********/

Actualización nula (tagMap_t s[ ])

{

ARCHIVO *pp;

//

Definir puntero de archivo

Se utiliza para crear un nuevo

nuevo archivo

Archivo

char pc[60 ];

int i=0;

//

Variable de control de bucle

if((pp=fopen("e: \\newfile.txt " , "w")) == NULL)

//

Determine si el archivo se insertó correctamente

{

printf("

La creación del archivo de actualización falló...

");

exit(0); >}

for(i=0; ilt; (nsizecount-2); i )

{

fprintf(pp , "#\t") ;

fprintf(pp , "s\t" , ss[i].lin

kid);

//

La información del archivo se escribe

newfile

en el archivo

fprintf( pp , "s\t" , ss[i].flag

//

Escribir información del archivo

nuevo archivo

En el archivo

fprintf(pp, "s\t", ss[i].brunch);

//

Escribe la información del archivo

nuevo archivo

En archivo

fprintf(pp, "s\t", ss[i].dispclass);

//

Escriba la información del archivo

newfile

en el archivo

fprintf(pp, "s\t", ss[i].Roadname) ;

//

Escribe la información del archivo

newfile

en el archivo

fprintf(pp, " #");

fprintf(pp, "\n");

}

fclose(pp);

//

Puntero de cierre de archivo

pp

if((pp=fopen("e:\\newfile.txt", "r")) == NULL )

//

Abrir archivo

nuevo archivo

Proporcionar datos para actualizar el archivo

{

printf("falla la apertura del nuevo archivo\n");

salir(0);

}

ARCHIVO *ppp;

//

Puntero de archivo

usado para crear

archivo de actualización

p>

if((ppp=fopen("e:\\update.dat" , "wb")) == NULL)

//

Juzgar archivo Si la creación fue exitosa

{

printf("

Error al crear el archivo de actualización

\n");

salir(0);

}

sistema("cls");

printf("\n\n\t\t\ t\t

El archivo se está actualizando...

\n");

//

Se proporciona información rápida

for(i=0; ilt; (nsizecount-2); i )

{

fread(pc, 56, 1, pp);

//newfile

Escribe información del archivo

pc

array

fwrite(pc, 56, 1, ppp);

//

Matriz

pc

la información se escribe

actualización

Archivo binario

}

printf("\n\n\t\t\t\t

Archivo actualizado correctamente

\n\n\n\t\t\t

El archivo de actualización se almacena en

update.dat

archivo

\n\n\n");

ma_interf();

//

Regresar a la interfaz principal

}

void main()

{

ma_interf(

//

Ingrese a la interfaz principal

}