Rumah Keuangan Pribadi Cara membuat Linked List di Pemrograman C - dummies

Cara membuat Linked List di Pemrograman C - dummies

Video: Cara Membuat Single Linked List Di Bahasa Pemrograman Java | MUL CODE 2025

Video: Cara Membuat Single Linked List Di Bahasa Pemrograman Java | MUL CODE 2025
Anonim

Dalam pemrograman C, jika Anda ingin menambahkan kode kedua ke kode yang telah Anda buat, buatlah linked list - rangkaian struktur yang berisi petunjuk satu sama lain. Seiring dengan data dasar dalam suatu struktur, struktur berisi pointer, yang berisi alamat dari struktur berikutnya dalam daftar.

Dengan beberapa juggling juggling dari nama penunjuk, ditambah NULL untuk menutupi akhir daftar, Anda mungkin akan mendapatkan sesuatu yang mirip dengan kode sumber dalam A Primitive Linked-List Example.

CONTOH HIDUP YANG DIMULAI SEBELUMNYA

#include #include #include int main () {struct stock {char symbol [5]; kuantitas int; harga mengapung; struct stock * next;}; struct stock * pertama; saham struct * saat ini; saham struct * baru; / * Buat struktur di memori * / first = (struct stock *) malloc (sizeof (struct stock)); if (first == NULL) {puts ("Beberapa jenis malloc () error"); exit (1);} / * Tetapkan data struktur * / current = first; strcpy (simbol saat ini, "GOOG"); arus-> kuantitas = 100; current-> price = 801. 19; current-> next = NULL; new = (struct stock *) malloc (sizeof (stok struct)); if (new == NULL) {puts ("malok lain () error"); exit (1);} current-> next = new; arus = baru; strcpy (current-> symbol, "MSFT"); arus-> kuantitas = 100; current-> price = 28. 77; current-> next = NULL; / * Tampilkan database * / puts ("Portofolio Investasi"); printf ("SymboltSharestPricetValuen"); arus = pertama; printf ("% - 6st% 5dt%. 2ft%. 2fn", simbol arus->, arus-> kuantitas, arus-> harga, arus-> kuantitas * harga arus->); arus = arus-> berikutnya; printf ("% - 6st% 5dt%. 2ft%. 2fn", simbol arus->, arus-> kuantitas, arus-> harga, arus-> kuantitas * harga arus->); return (0);}

Kode sumber ini cukup panjang, tapi hanya menciptakan struktur kedua, terkait dengan yang pertama. Jangan biarkan panjang kode sumber mengintimidasi Anda.

Baris 13 sampai 15 menyatakan tiga petunjuk struktur standar yang diperlukan untuk tarian linked-list. Secara tradisional, mereka diberi nama dulu, terkini, dan baru. Mereka bermain menjadi anggota keempat dalam struktur, selanjutnya, ditemukan di Baris 11, yang merupakan penunjuk struktur.

Jangan gunakan typedef untuk menentukan variabel struktur baru saat membuat linked list. Contoh Daftar Linked Primitif tidak menggunakan typedef, jadi ini bukan masalah dengan kode, namun banyak pemrogram C menggunakan typedef dengan struktur. Hati-hati!

Nama variabel yang baru, yang digunakan pada Baris 15, adalah kata yang dicadangkan di C ++, jadi jika Anda ingin menjadi dua bahasa, ubah nama variabel menjadi new_struct atau menjadi sesuatu selain kata baru.

Saat struktur pertama terisi, Baris 30 menugaskan pointer NULL ke elemen berikutnya.Nilai NULL tersebut menutupi akhir daftar yang terhubung.

Baris 32 membuat struktur, menempatkan alamatnya di variabel penunjuk baru. Alamat disimpan dalam struktur pertama di Baris 38. Begitulah lokasi struktur kedua dipertahankan.

Baris 40 sampai 43 mengisi informasi untuk penunjuk kedua, tetapkan nilai NULL ke elemen berikutnya pada Baris 43.

Keterkaitan terjadi saat isi struktur ditampilkan. Baris 48 menangkap alamat struktur pertama. Kemudian Line 54 menangkap alamat struktur berikutnya dari dalam struktur pertama.

Latihan 1 : Ketik kode sumber dari A Primitive Linked-List Example ke editor Anda. Meski sudah lama, ketik saja karena Anda perlu mengeditnya lagi nanti (jika Anda tidak terbiasa dengan itu sekarang). Bangun dan jalankan

Tidak seperti array, struktur dalam linked list tidak diberi nomor. Sebagai gantinya, masing-masing struktur dihubungkan ke struktur berikutnya dalam daftar. Selama Anda mengetahui alamat struktur pertama, Anda dapat mengerjakan daftar sampai akhir, yang ditandai dengan NULL.

Contoh Daftar Linked Primitif menunjukkan beberapa kode sumber ceroboh dengan banyak kode berulang. Bila Anda melihat banyak pernyataan seperti ini dalam kode Anda, Anda harus segera memikirkan "fungsi. "

CONTOH LEBIH BAIK LINKED-LIST

#include #include #include #define ITEMS 5 struct stock {char symbol [5]; kuantitas int; harga mengapung; struct stock * next;}; struct stock * pertama; saham struct * saat ini; saham struct * baru; struct stock * make_structure (void); void fill_structure (struct stock * a, int c); void show_structure (struct stock * a); int main () {int x; fill_structure (current, x + 1);} current-> next = NULL; / * Tampilkan database * / puts ("Portofolio Investasi"); printf ("SymboltSharestPricetValuen "); current = first; while (current) {show_structure (current); current = current-> next;} return (0);} struct stock * make_structure (void) {struct stock * a; a = (struct stock *) malloc (sizeof (struct stock)); if (a == NULL) {puts ("Beberapa jenis malloc () error"); exit (1);} return (a);} void fill_structure (struct stock * a, int c) {printf ("Item #% d /% d: n", c, ITEMS; printf ("Simbol Stok:"); scanf ("% s", simbol a->); printf ("Nomor dari saham: "); scanf ("% d ", & a-> quantity); printf (" harga saham: "); scanf ("% f ", & a-> price);} void show_structure (struct stock * a) {printf ("% - 6st% 5dt%. 2ft%. 2fn", a-> simbol, a-> quantity, a-> price, a-> quantity * a-> price;;}

daftar yang paling banyak ditautkan dibuat seperti ditunjukkan pada Contoh Linked List yang Lebih Baik. Kuncinya adalah menggunakan tiga variabel struktur, yang ditunjukkan pada Baris 13 sampai 15:

  • pertama selalu berisi alamat dari struktur pertama dalam daftar. Selalu.

  • saat ini berisi alamat struktur yang sedang dikerjakan, diisi dengan data, atau ditampilkan.

  • baru adalah alamat dari struktur baru yang dibuat dengan menggunakan fungsi malloc ().

Baris 7 menyatakan struktur stok sebagai global. Dengan begitu, bisa diakses dari berbagai fungsi.

Lingkaran antara Baris 25 dan 39 menciptakan struktur baru, menghubungkan keduanya.Struktur awal sangat istimewa, jadi alamatnya tersimpan di Baris 30. Jika tidak, struktur baru dialokasikan, berkat fungsi make_structure ().

Di Baris 35, struktur sebelumnya diperbarui; nilai arus tidak berubah sampai Garis 36. Sebelum itu terjadi, penunjuk pada struktur saat ini diperbarui dengan alamat struktur berikutnya, baru.

Pada Baris 40, akhir dari linked list ditandai dengan mengatur ulang pointer baru dalam struktur terakhir ke sebuah NULL.

Loop sementara di Baris 46 menampilkan semua struktur dalam linked list. Kondisi loop adalah nilai dari pointer saat ini. Saat NULL ditemui, loop berhenti.

Sisa kode yang ditunjukkan dalam A Better Linked-List Example terdiri dari fungsi yang cukup jelas.

Latihan 2 : Salin kode dari A Better Linked-List Example ke editor. Bangun dan jalankan

Catatlah pernyataan scanf () di fungsi fill_structure (). Ingat bahwa -> adalah notasi "peeker" untuk sebuah pointer. Untuk mendapatkan alamat, Anda harus awalan variabel dengan fungsi & di scanf ().

Cara membuat Linked List di Pemrograman C - dummies

Pilihan Editor

Bagaimana Mengelola Komentar di WordPress Anda. com Blog - dummies

Bagaimana Mengelola Komentar di WordPress Anda. com Blog - dummies

Buka halaman Komentar dengan mengklik link Komentar di menu navigasi Dashboard WordPress. Halaman Komentar menunjukkan semua komentar di blog Anda sejak hari pertama Anda memulai. Di sini Anda bisa melihat komentar, mengeditnya, menandai mereka sebagai spam, atau flat-out menghapusnya. Jika Anda menetapkan pilihan Komentar Anda jadi ...

Bagaimana Mengelola Pengguna dan Penulis di Blog WordPress Anda - dummies

Bagaimana Mengelola Pengguna dan Penulis di Blog WordPress Anda - dummies

Pengguna WordPress halaman memberitahu Anda tentang semua pengguna di blog Anda. Ini mencantumkan nama pengguna, nama, alamat e-mail, peran di blog Anda, dan jumlah posting yang dibuat ke blog Anda. Untuk mengelola peran pengguna, Anda perlu memahami jenis akses yang diberikan masing-masing peran: Pengikut: Peran default ini ditugaskan untuk ...

Cara Membuat Permalinks WordPress Bekerja dengan Server Anda - dummies

Cara Membuat Permalinks WordPress Bekerja dengan Server Anda - dummies

Setelah Anda mengatur format untuk permalinks untuk situs WordPress Anda dengan menggunakan opsi selain default, WordPress menulis peraturan, atau arahan tertentu ke. htaccess file di server web anda Itu. htaccess file pada gilirannya mengkomunikasikan ke server web Anda bagaimana seharusnya menyajikan permalinks, sesuai dengan permalink ...

Pilihan Editor

Bagaimana cara Log In ke Layanan Cloud - dummies

Bagaimana cara Log In ke Layanan Cloud - dummies

Karena Cloud Service sepenuhnya berbasis di awan, semua Anda benar-benar Kebutuhan untuk mengaksesnya adalah koneksi internet. (Nah, Anda juga memerlukan nama pengguna dan kata sandi.) Anda dapat masuk dari kantor Anda dan kemudian mengambil tempat Anda tinggalkan di hotel saat bepergian di Tokyo. Salesforce memiliki banyak tindakan pengamanan ...

Bagaimana Bergerak di sekitar MYOB - dummies

Bagaimana Bergerak di sekitar MYOB - dummies

Di MYOB, Anda dapat melangkah maju dan mundur melalui setiap jendela pembelajaran saya. untuk mencintai kunci Tab komputer Anda. Ini jauh lebih mudah dan lebih cepat daripada menggunakan mouse anda. Keystrokes Shortcut Result Shift + Tab Bergerak ke belakang ke kolom sebelumnya Enter atau Tab Bergerak ke depan ke kolom berikutnya Alt + F4 Berhenti dan mengemas Esc Membawa ...

Bagaimana Membuka Kasus untuk Pelanggan di Salesforce. Kasus com - dummies

Bagaimana Membuka Kasus untuk Pelanggan di Salesforce. Kasus com - dummies

Adalah dasar Salesforce. com Layanan Cloud. Mereka adalah titik pusat kontak Anda dan apa yang agen hidup dan hirup setiap hari. Kasus adalah catatan penyelidikan layanan atau dukungan untuk pelanggan yang merinci masalah dan semua informasi yang mengelilinginya, seperti yang ditunjukkan. Kasus ...

Pilihan Editor

Menghitung Persen Tujuan di Excel - dummies

Menghitung Persen Tujuan di Excel - dummies

Ketika seseorang meminta Anda untuk menghitung satu persen Tujuannya, dia hanya mengatakan untuk membandingkan kinerja aktual dengan tujuan yang dinyatakan. Matematika yang terlibat dalam perhitungan ini sederhana: Bagilah tujuannya dengan aktual. Ini memberi Anda nilai persentase yang menunjukkan berapa banyak pencapaian yang telah dicapai. Misalnya, jika ...

Menghitung Persentase Varian di Excel - dummies

Menghitung Persentase Varian di Excel - dummies

Varians adalah indikator perbedaan antara satu angka dengan angka lainnya. Untuk memahami hal ini, bayangkan bahwa Anda menjual 120 widget pada suatu hari, dan keesokan harinya, Anda menjual 150. Perbedaan dalam penjualan sebenarnya sangat mudah dilihat; Anda menjual 30 widget lagi. Mengurangkan 120 widget dari 150 widget memberi ...

Menghitung Persentase Varian dengan Nilai Negatif di Excel - dummies

Menghitung Persentase Varian dengan Nilai Negatif di Excel - dummies

Rumus untuk menghitung varian persen dalam Excel bekerja dengan indah dalam banyak kasus. Namun, bila nilai benchmark adalah nilai negatif, rumusnya akan turun. Misalnya, bayangkan Anda memulai bisnis dan berharap bisa kehilangan tahun pertama. Jadi, Anda memberi anggaran sebesar negatif $ 10.000. Sekarang bayangkan itu ...