Problema de programación de estructura numérica, por favor ayúdenme, ¿está en lenguaje C?
Las listas lineales se implementan utilizando matrices y las listas enlazadas individualmente se implementan utilizando estructuras con punteros de lista enlazada.
Para ingresar los datos aquí, usé números aleatorios para generar dos conjuntos de números de dos dígitos del -99 al 99 para llenar la tabla lineal y la lista enlazada individualmente, y usé clasificación de burbujas para organizarlos en orden ascendente. orden, de modo que los números negativos vayan al frente de los números positivos.
Dividido en dos funciones:
#include
#include
#include
#define M 10//Número máximo de datos
typedef struct llist
{
int n;
struct llist *next;
}LLT;
void doByST();//Usa la lista de secuencias para hacerlo
void doByLLT();//Usa individualmente lista vinculada para hacerlo
int main()
{
srand(time(NULL));//Utilice números aleatorios (dos dígitos positivos y negativos) -99~99) Llenar tabla de secuencia y lista enlazada individualmente
doByST();
doByLLT();
}
void doByST()//Usar Crear tabla de secuencia
{
int i,j,st[M];
printf("Datos en la tabla de secuencia:\ n");
for(i=0;i printf("\nColoque todos los valores negativos antes que todos los valores positivos:\n"); for(i= 0;i for(j=i+1;j if(st[i]>st[j ]) p> st[i]^=st[j],st[j]^=st[i],st[i]^=st[j]; para (i=0 ;i printf("\n\n"); } void doByLLT()//Usar una lista enlazada individualmente { int i; LLT llist[M ],*lltp= llist,*lltp2=NULL; for(i=0;i llist[i].next=NULL; printf("\nDatos en lista enlazada individualmente:\n"); while(lltp !=NULL) { lltp->n=((rand()%2)?1:-1)*(rand()%910); printf("%d ",lltp->n); lltp=lltp->siguiente; } printf( "\nConvertir todo Los valores negativos se colocan delante de todos los valores positivos\n"); lltp=llist; while(lltp!=NULL) { lltp2=lltp->siguiente; while(lltp2!=NULL) { if(lltp ->n>lltp2->n ) lltp->n^=lltp2->n,lltp2->n^=lltp->n,lltp->n^=lltp2->n; lltp2=lltp2->siguiente; } lltp=lltp->next; } lltp=llist;//--Imprimir resultados while(lltp!=NULL) printf("%d ",lltp->n),lltp=lltp->siguiente; }