Bagaimana untuk memulakan tatasusunan dalam bahasa c

青灯夜游
Lepaskan: 2023-01-07 11:45:29
asal
37043 orang telah melayarinya

Kaedah: 1. Berikan nilai awal kepada semua elemen semasa mentakrifkan tatasusunan, contohnya "int a[5]={1,2,3,4,5}" 2. Berikan nilai ​​kepada beberapa elemen, contohnya " int a[5]={1,2}"; {1,2,3,4,5}".

Bagaimana untuk memulakan tatasusunan dalam bahasa c

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi c99, komputer Dell G3.

Pemulaan tatasusunan

Pemulaan tatasusunan boleh dicapai menggunakan kaedah berikut:

1) Apabila mentakrifkan tatasusunan, berikan Semua elemen diberi nilai awal , yang dipanggil "pemulaan lengkap". Contohnya:

int a[5] = {1, 2, 3, 4, 5};
Salin selepas log masuk
Salin selepas log masuk

Dengan meletakkan nilai awal elemen tatasusunan dalam sepasang pendakap kerinting, selepas permulaan, a[1]=2; ]= 3; a[3]=4; a[4]=5, iaitu, diberikan kepada setiap elemen dalam urutan dari kiri ke kanan. Perlu diingat bahawa semasa permulaan, setiap elemen dipisahkan dengan koma, bukan titik bertitik.

2) Anda boleh menetapkan nilai hanya kepada sebahagian daripada elemen , yang dipanggil "pemulaan tidak lengkap". Contohnya: Tatasusunan a yang ditakrifkan oleh

int a[5] = {1, 2};
Salin selepas log masuk

mempunyai 5 elemen, tetapi hanya dua nilai awal disediakan dalam pendakap kerinting, yang bermaksud bahawa hanya dua elemen pertama a[0] dan a[ 1] dimulakan Tiga elemen terakhir belum dimulakan. Apabila tidak dimulakan sepenuhnya, elemen yang belum dimulakan secara automatik ditetapkan kepada 0.

Perlu diambil perhatian bahawa "pemulaan tidak lengkap" adalah berbeza daripada "tidak dimulakan sama sekali". Jika "tidak dimulakan sama sekali", iaitu, hanya tentukan "int a[5];" tanpa permulaan, maka nilai setiap elemen tidak akan menjadi 0, dan semua elemen akan menjadi nilai sampah.

Anda juga tidak boleh menulis "int a[5]={};". Jika anda tidak menulis apa-apa dalam kurung kurawal, ia adalah kesilapan tatabahasa yang serius. Sekurang-kurangnya satu nombor mesti ditulis dalam kurungan kerinting. Contohnya, "int a[5]={0};" adalah untuk "mengosongkan" tatasusunan Pada masa ini, setiap elemen dalam tatasusunan adalah sifar. Di samping itu, jika panjang tatasusunan yang ditentukan adalah kurang daripada bilangan nilai awal yang disediakan dalam pendakap kerinting, ia juga merupakan ralat sintaks, seperti "a[2]={1, 2, 3, 4, 5 };".

3) Jika anda memberikan nilai awal kepada semua elemen dalam tatasusunan semasa mentakrifkan tatasusunan, maka anda tidak perlu menentukan panjang tatasusunan, kerana bilangan elemen telah pun ditentukan. Kami sering menggunakan cara penulisan ini semasa pengaturcaraan, kerana ia mudah, tidak akan ada masalah, dan kami tidak perlu mengira berapa banyak elemen yang ada Sistem akan memperuntukkan ruang secara automatik. Contohnya:

int a[5] = {1, 2, 3, 4, 5};
Salin selepas log masuk
Salin selepas log masuk

boleh ditulis sebagai:

int a[] = {1, 2, 3, 4, 5};
Salin selepas log masuk

Terdapat 5 nombor dalam kurungan kerinting dalam cara penulisan kedua, jadi sistem akan secara automatik menentukan panjang tatasusunan a sebagai 5. Tetapi sila ambil perhatian bahawa anda hanya boleh menulis ini apabila memulakan tatasusunan apabila mentakrifkannya. Jika tatasusunan ditakrifkan tanpa permulaan, mengetepikan panjang tatasusunan ialah ralat sintaks. Contohnya:

int a[];
Salin selepas log masuk

Kemudian ralat akan digesa semasa penyusunan, dan pengkompil akan menggesa anda bahawa panjang tatasusunan tidak ditentukan.

Izinkan saya menulis atur cara mudah untuk anda:

# include <stdio.h>
int main(void)
{
    int a[5] = {1, 2, 3, 4, 5};
    int i;
    for (i=0; i<5; ++i)
    {
        printf("%d\n", a[i]);
    }
    return 0;
}
Salin selepas log masuk

Hasil output ialah:

1
2
3
4
5
Salin selepas log masuk

a mewakili nama tatasusunan, [5] mewakili bahawa tatasusunan mempunyai 5 elemen, masing-masing diwakili oleh a[0], a[1], a[2], a[3], a[4]. Dan tetapkan nombor 1, 2, 3, 4, dan 5 dalam kurungan kerinting kepada pembolehubah a[0], a[1], a[2], a[3] dan a[4] masing-masing. Sekali lagi, subskrip bermula pada 0, a[0], bukan a[1].

Anda juga boleh menggunakan scanf untuk memulakan tatasusunan secara manual daripada papan kekunci:

# include <stdio.h>
int main(void)
{
    int a[5] = {0};  //数组清零初始化
    int i;
    printf("请输入5个数:");
    for (i=0; i<5; ++i)
    {
        scanf("%d", &a[i] );
    }
    for (i=0; i<5; ++i)
    {
        printf("%d\x20", a[i]);
    }
    printf("\n");
    return 0;
}
Salin selepas log masuk

Hasil output ialah:

请输入5个数:1 2 3 4 5
1 2 3 4 5
Salin selepas log masuk

Sama seperti semasa menggunakan scanf untuk memasukkan rentetan ke dalam tatasusunan aksara Perbezaannya ialah anda mesti menggunakan gelung for untuk memasukkan nombor. Tidak perlu menggunakan gelung apabila memasukkan rentetan, hanya gunakan scanf.

Cadangan berkaitan: "Tutorial Video Bahasa C"

Atas ialah kandungan terperinci Bagaimana untuk memulakan tatasusunan dalam bahasa c. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan