/*mkdisk -size=30 -unit=m -path=/home/clnx/Escritorio/dis.dsk rmdisk -path=/home/clnx/Escritorio/dis.dsk * rmDisk -path=/home/ghosth_32/Documentos/disk/dis2.dsk * fdisk -size=500 -unit=k -path=/home/ghosth_32/Documentos/disk/dis2.dsk -name=linux * fdisk -size=500 -unit=k -path=/home/clnx/Escritorio/dis.dsk -name=linux // * mkfs -path=/home/clnx/Escritorio/dis.dsk -type=full -name=linux1 * mount -path=/home/clnx/Escritorio/dis.dsk -name=linux * unmount -id=vda2 * rep -name=mbr -path=/home/clnx/Escritorio/mbr.jpg -id=vda1 * rep -name=disk -path=/home/clnx/Escritorio/disk.jpg -id=vda1 * rep -name=sb -path=/home/clnx/Escritorio/sb.jpg -id=vda1 * rep -name=bm_inode -path=/home/clnx/Escritorio/bmInode.jpg -id=vda1 * rep -name=bm_block -path=/home/clnx/Escritorio/bmBlock.jpg -id=vda1 */ void main(int argc, char** argv) { printf("\n******* PRÁCTICA MANEJO E IMPLEMENTACIÓN DE ARCHIVOS ******* \n"); iniList(); //inicializo lista de particiones montadas while(1){ waitInst(); } }
void openForDay() { //初始化操作 totalTime = 0; //初始化累计时间为0 customerNum = 0; //初始化客户数为0 iniList(ev); //初始化事件链表位空表 en.occurTime = 0; //设定一个客户到达事件 en.nType = 0; orderInsert(ev, en, cmp); //插入事件表 for(int i = 0; i < 5; ++i) { initQueue(q[i]); //置空队列: } }
int main(){ /* // Prueba de inilist List *lista1 = iniList(1); List *lista2 = iniList(3); printf("Lista1:\n"); printList(lista1); printf("Lista2:\n"); printList(lista2); printf("Longitud: L1=%d, L2=%d\n", lista1->n, lista2->n); //////////////////////////////////////////////////////////////// ////////////////////// IMPORTANTE!!!//////////////////////////// //////////////////////////////////////////////////////////////// // Asi se pasa de un nodo a otro lista1 = lista1->last; //////////////////////////////////////////////////////////////// ////////////////////// IMPORTANTE!!!//////////////////////////// //////////////////////////////////////////////////////////////// printf("Lista1:\n"); printf("Longitud: L1=%d\n", lista1->n); printList(lista1); // Prueba del método cat cat(lista1,lista2); printf("Lista1:\n"); printf("Longitud: L1=%d\n", lista1->n); printList(lista1); // Prueba del método add to list List *lista5 = iniList(0); int i; for(i = 1; i < 21; i++){ add(lista5,i); } printf("Lista5:\n"); printf("Longitud: L5=%d\n", lista5->n); printList(lista5); cat(lista1,lista5); printf("Lista1:\n"); printf("Longitud: L1=%d\n", lista1->n); printList(lista1); */ /* Nodo* Tree = iniNodo(xmin,xmax); // Primer Piso Tree->left = iniNodo(xmin,xmax/2); Tree->right = iniNodo(xmax/2,xmax); // Segundo piso Tree->left->left = iniNodo(ymin,ymax/2); Tree->left->right = iniNodo(ymax/2,ymax); Tree->right->left = iniNodo(ymin,ymax/2); Tree->right->right = iniNodo(ymax/2,ymax); // Tercer Piso Tree->left->left->left = iniNodo(zmin,zmax/2); Tree->left->left->right = iniNodo(zmax/2,zmax); Tree->left->right->left = iniNodo(zmin,zmax/2); Tree->left->right->right = iniNodo(zmax/2,zmax); Tree->right->left->left = iniNodo(zmin,zmax/2); Tree->right>left->right = iniNodo(zmax/2,zmax); Tree->right->right->left = iniNodo(zmin,zmax/2); Tree->right->right->right = iniNodo(zmax/2,zmax); */ Nodo* Tree = iniTree(3); Tree->left->left->left->thdrons = iniList(2); Tree->right->left->left->thdrons = iniList(5); printf("LLL: %d\n",Tree->left->left->left->thdrons->index); printf("RLL: %d\n",Tree->right->left->left->thdrons->index); return 0; }
int main(int argc, char **argv) { dlist *list; dlist *list2; dlist *list3; dlist *list4; int choice; int i = 0; int numData; Node *p; FILE *fin, *fout; int select = 0; int startFrom, numSplit; // where to split and the length of splitting list char fileName[15]; //file name for output data char textName1[20], textName2[20]; // file name for split lists char sections [MAX][40] = {"Import from phonebook.dat", "Display (traverse)", "Add new contact (insert before/after)", "Insert a position" , "Delete a position", "Delete current", "Delete first", "Search and Update", "Divide and Extract", "Reverse list", "Save to file", "Count max identical phone numbers", "Exit (free)" }; do { choice = getMenu(sections, MAX); switch (choice) { case 1: // if ((fin = fopen(argv[1], "r")) == NULL) // { // printf("Can't open file %s\n", argv[1]); // exit(1); // } // if ((fout = fopen(argv[2], "wb")) == NULL) // { // printf("Can't open file %s\n", argv[2]); // exit(1); // } // numData = importDB(fin, fout); // fclose(fin); // fclose(fout); list = iniList(list); list2 = iniList(list2); list3 = iniList(list3); list4 = iniList(list4); if ((fin = fopen(argv[1], "rb")) == NULL) { printf("Can't open file %s\n", argv[1]); exit(1); } fseek(fin, 0, SEEK_END); numData = ftell(fin) / sizeof(element_type); rewind(fin); result = import(fin, numData); for (i = 0; i < result; ++i) insertEnd(contact[i], list); // printData(); fclose(fin); break; case 2: traverse(list); break; case 3: printf("Enter 0 to insert before, 1 to insert after: "); scanf("%d", &select); while (getchar() != '\n'); if (select == 0) insertBefore(list->root, typeHand(), list); else insertEnd(typeHand(), list); break; case 4: printf("Position to insert after (1 means root element): "); scanf("%d", &select); printf("Type in the data to insert\n"); while (getchar() != '\n'); if (select < numData) insertAfter(locateNode(select, list), typeHand(), list); else insertEnd(typeHand(), list); break; case 5: printf("Position to delete: (1 means root element)"); scanf("%d", &select); delNode(locateNode(select, list), list); break; case 6: delNode(list->cur, list); break; case 7: delNode(list->root, list); break; case 8: searchName(); while (1) { printf("Update for position number (type -1 to stop updating): "); scanf("%d", &select); while (getchar() != '\n'); if (select == -1) break; insertAfter(locateNode(select, list), typeHand(), list); delNode(locateNode(select, list), list); printf("Update success\n"); } break; case 9: printf("The length of the list is %d\n", listLength(list)); printf("Type in where to start (range from 1 to end of the list): "); scanf("%d", &startFrom); printf("Length of spliting: "); scanf("%d", &numSplit); if (listLength(list) > startFrom + numSplit) splitList(startFrom, numSplit, list, list2, list3); else splitList(startFrom, listLength(list) - startFrom, list, list2, list3); while (getchar() != '\n'); printf("Now type in 2 file name to save the new lists\n"); printf("File 1: "); scanf("%s", textName1); printf("File 2: "); scanf("%s", textName2); checkList(list2, textName1); //result of splitList checkList(list3, textName2); break; case 10: reverseList(list); break; case 11: printf("Type in the file name\n"); scanf("%s", fileName); if ((fout = fopen(fileName, "w + t")) == NULL) { printf("Can't open file %s\n", fileName); exit(1); } savetoFile(fout, list); break; case 12: list4 = countsameNum(list, list4); printf("After spliting, the new list with identical numbers: \n"); p = list4->root; while ( p != NULL ) { printf("Node with phone number: %s, address %p\n", p->element.tel, p); p = p->next; } break; case MAX: freeList(list); freeList(list2); freeList(list3); freeList(list4); exit(1); break; default: printf("Invalid choice. It must be from 1 to %d\n", MAX); break; } } while (choice != MAX); return 0; }