Berbagi teknologi

Dasar-dasar bahasa Linux C hari6

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Daftar isi

sasaran pembelajaran:

Konten Pembelajaran:

1. Susunan

1.1 Konsep

1.2 Array satu dimensi

1.2.1 Konsep

1.2.2 Formatnya

1.2.3 Inisialisasi

1.3 Operasi konvensional pada elemen array

1.3.1 Masukan dan keluaran

1.3.2 Jumlah dan mean

1.3.3 Temukan nilai maksimum

1.3.4 Pencarian

Latihan kelas:

Pekerjaan rumah ekstrakurikuler:


sasaran pembelajaran:

Misalnya:

  • Kuasai dasar-dasar C dalam satu minggu

Konten Pembelajaran:

1. Susunan

1.1 Konsep

Array digunakan untuk menyimpan satu setTipe data yang samadata.

Array adalah tipe yang dibangun.

Setiap data dengan tipe data yang sama dalam array disebut elemen array, disebut juga anggota array.

Mendefinisikan array akan mengalokasikan satu blok di memoriruang terus menerusUntuk menyimpan data, tidak peduli berapa banyak dimensi yang dimiliki array, array bersifat kontinu.

1.2 Array satu dimensi

1.2.1 Konsep

Yang disebut array satu dimensi adalah array yang hanya memiliki satu subskrip.

1.2.2 Formatnya

Nama array tipe data [subskrip];

Tipe data: Dapat berupa tipe dasar atau tipe terkonstruksi (kecuali array)

Nama array: Ini adalah pengidentifikasi dan harus mematuhi konvensi penamaan pengidentifikasi.

Subskrip: Saat mendefinisikan sebuah array, subskrip umumnya merupakan konstanta yang digunakan untuk mewakili panjang array yang akan didefinisikan. Dalam situasi lain, ini bisa berupa konstanta, variabel, atau ekspresi yang menunjukkan data mana dalam array yang akan dioperasikan.

Misalnya:

1.2.3 Inisialisasi

Yang disebut inisialisasi berarti bahwa ketika menerapkan ruang untuk suatu variabel, nilai awal diberikan.

Saat menginisialisasi, gabungkan nilai elemen dengan sepasang kurung kurawal, dan pisahkan beberapa nilai dengan koma.

Ada tiga cara untuk menginisialisasi array

1. Inisialisasi semua: Menurut panjang array, inisialisasi nilai beberapa elemen.

int arr[5] = {520, 1415, 666, 999, 1234};

arr[0] arr[1] arr[2] arr[3] arr[4]

2. Inisialisasi parsial: Jumlah elemen yang diinisialisasi kurang dari panjang array. Saat ini, defaultnya adalah menginisialisasi dari elemen sebelumnya, dan elemen yang tidak diinisialisasi diisi dengan 0

int arr[5] = {520, 1415, 666}; 0 0

arr[0] arr[1] arr[2] arr[3] arr[4]

3. Inisialisasi khusus: Saat mendefinisikan dan menginisialisasi array, Anda tidak perlu menentukan panjang array. Panjang array ditentukan oleh jumlah elemen yang diinisialisasi.

int arr[ ] = {520, 1415, 666, 999, 1234};

arr[0] arr[1] arr[2] arr[3] arr[4]

Misalnya:

#termasuk<stdio.h>

int utama(int argc, const char *argv[])
{
//Definisikan array bilangan bulat dengan panjang 5
int arr[5]; //Elemen arraynya adalah: arr[0]--arr[4]
//Definisikan array karakter dengan panjang 10
char brr[10];
//Definisikan array dengan panjang 100 untuk menyimpan desimal
ganda crr[100];
//Jika array tidak diinisialisasi, semua nilai elemen di dalamnya akan diinisialisasi
//nilai acak
cetakf("arr[0] = %d, brr[0] = %c, crr[0] = %lfn", arr[0], brr[0], crr[0]);

//Definisikan array dan inisialisasinya
int drr[5] = {1,2,3,7,6}; //Semua diinisialisasi
int err[5] = {520, 1314, 666}; //Inisialisasi sebagian
int frr[] = {1,3,5,7,9}; //Inisialisasi khusus
printf("ukuran(frr) = %ldn", ukuran(frr)); //20
printf("len dari frr = %ldn", sizeof(frr)/sizeof(frr[0]));

kembali 0;
}

1.3 Operasi konvensional pada elemen array

1.3.1 Masukan dan keluaran

Apa yang disebut input dan output dari sebuah array sebenarnya berarti input dan output berulang dari elemen apa pun.Kami menggunakan loop untuk menyelesaikan tindakan berulang.

Catatan: Bahasa C tidak mengizinkan input dan output seluruh array selain array karakter. Anda hanya dapat menemukan elemen array dan mengoperasikan elemen individual.

1.3.2 Jumlah dan mean

Yang disebut nilai penjumlahan adalah untuk mengakumulasi semua nilai arbitrer. Variabel perlu didefinisikan untuk menyimpan jumlahnya, tetapi variabel tersebut harus dibersihkan sebelum digunakan.

Yang disebut mean adalah membagi jumlah data dengan jumlah totalnya.Rata-rata tidak perlu dihitung dalam satu lingkaran

1.3.3 Temukan nilai maksimum

Rutin: Tetapkan elemen pertama dalam larik ke nilai maksimum saat ini, lalu bandingkan nilai maksimum saat ini dengan elemen mana pun dalam larik. Jika kondisi tidak terpenuhi selama perbandingan, perbarui nilai maksimum hingga semua Setelah membandingkan data dengan nilai maksimum maka diperoleh nilai maksimum.

1.3.4 Pencarian

Pencarian keberadaan: Ketika data yang akan ditemukan muncul dalam array, pencarian segera berakhir

Pencarian statistik: Telusuri semua elemen array dan hitung jumlah data yang dapat ditemukan


Latihan kelas:

#termasuk<stdio.h>
#define MAX 10 //Makro mendefinisikan sebuah konstanta

int utama(int argc, const char *argv[])
{
//Tentukan array untuk menyimpan nilai semua anggota kelas
int skor[MAX] = {0};

//Lengkapi input skor anggota
untuk (int i = 0; i
    {
//Temukan elemen apa pun: skor[i]
printf("Masukkan nilai siswa ke %d:", i+1);
scanf("%d", &skor[i]);
    }

//Program dijalankan hingga titik ini, yang berarti semua elemen array telah berhasil ditetapkan.
//Keluaran elemen array
printf("Elemen-elemen dalam array adalah : ");
untuk (int i = 0; i
    {
printf("%dt", skor[i]);
    }
putchar(10); //Menghasilkan pengembalian kereta dan umpan baris

    //Jumlah nilai, nilai rata-rata
int jumlah = 0; //Catat jumlahnya
rata-rata ganda = 0; //Catat nilai rata-ratanya
untuk(int saya=0; saya
    {
sum += skor[i]; //Akumulasi data apa pun
    }
//Program dijalankan sampai titik ini, menunjukkan bahwa jumlahnya telah dihitung.
rata-rata = 1,0*jumlah/MAKS;
printf("Jumlahnya adalah: %d, rata-ratanya adalah: %.2lfn", jumlah, rata-rata);

    //Temukan nilai maksimum (ambil nilai maksimum sebagai contoh)
int max = 0; //Menyimpan nilai maksimum array
int maxi = 0; //Catat subskrip dimana nilai maksimum berada

//Pertama perlakukan yang pertama dalam array sebagai nilai maksimum
maks = skor[0];
maxi = 0; //Rekam subskrip dari nilai maksimum saat ini
untuk (int i = 0; i
    {
//Bandingkan nilai maksimum saat ini dengan data apa pun
jika (maks &lt; skor[i])
        {
max = score[i]; //Perbarui data dalam nilai maksimum
maxi = i; //Perbarui variabel yang mencatat subskrip maksimum
        }
    }
//Program dijalankan sejauh ini, menunjukkan bahwa nilai maksimum dan subskrip dari nilai maksimum telah dihitung.
printf("Nilai maksimum array saat ini adalah: %d, pada posisi ke %d n array", max, maxi+1);
    

    //Menemukan
int pencarian = 0;
int i = 0; //Variabel loop yang digunakan untuk melintasi array
printf("Masukkan nilai yang anda cari :");
scanf("%d", &pencarian);
//Mulai melintasi array untuk mengimplementasikan pencarian keberadaan
untuk(i=0; i
    {
//Tentukan apakah data tersebut adalah data yang akan ditemukan
jika (pencarian == skor[i])
        {
merusak;
        }
    }
//Tentukan apakah ditemukan
jika (i==MAX)
    {
printf("Gagal menemukan n");
}kalau tidak
    {
printf("Nilai yang anda cari ada pada array n");
    }

    //Melintasi array dan menyelesaikan pencarian statistik
int hitungan = 0; //Penghitung
untuk (int i = 0; i
    {
jika (pencarian == skor[i])
        {
count++; //Penambahan penghitung
        }
    }
//Setelah perulangan berakhir, nilai penghitungnya
jika (jumlah == 0)
    {
printf("Gagal menemukan n");
}kalau tidak
    {
printf("Pencarian berhasil, nilai yang dicari muncul %d kali n",count);
    }
kembali 0;
}


Pekerjaan rumah ekstrakurikuler:

tidak ada.