阵列变数

阵列是一群具有相同的资料型态元素集合的资料型态。在记忆体中,一个阵列会使用一段连续的记忆体空间来存放。

阵列的变数定义:

元素资料型态  阵列变数名称 [元素个数] ;   int var[3];

初始化时最少需要指定一个值,而未指定值的元素会被自动指定为0

int counter[6] = {0};

在初始化时,阵列元素个数值可以省略,会以初始化元素个数取代。

int counter[] = {0, 0, 0, 0, 0, 0};

骰子点数出现的次数的统计(未使用阵列)

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main() {
    srand(time(0));
    int counter1 = 0, counter2 = 0, counter3 = 0;
    int counter4 = 0, counter5 = 0, counter6 = 0;
    int i;
    for (i = 1; i <= 6000; ++i) {
        int dice = rand() % 6 + 1;
        switch (dice) {
            case 1: counter1++; break;
            case 2: counter2++; break;
            case 3: counter3++; break;
            case 4: counter4++; break;
            case 5: counter5++; break;
            case 6: counter6++; break;

        }
    }
    printf("1: %d\n", counter1);
    printf("2: %d\n", counter1);
    printf("3: %d\n", counter1);
    printf("4: %d\n", counter1);
    printf("5: %d\n", counter1);
    printf("6: %d\n", counter1);
    return 0;

}

使用阵列

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main() {
    srand(time(0));
    int counter[6] = {0}; //初始化
    int i;
    for (i = 1; i <= 6000; ++i) {
        int dice = rand() % 6 + 1;
        switch (dice) {
            case 1: counter[0]++; break;
            case 2: counter[1]++; break;
            case 3: counter[2]++; break;
            case 4: counter[3]++; break;
            case 5: counter[4]++; break;
            case 6: counter[5]++; break;

        }
    }
    printf("1: %d\n", counter[0]);
    printf("2: %d\n", counter[1]);
    printf("3: %d\n", counter[2]);
    printf("4: %d\n", counter[3]);
    printf("5: %d\n", counter[4]);
    printf("6: %d\n", counter[5]);
    return 0;

}

1: 982
2: 1014
3: 992
4: 1032
5: 1039
6: 941

Process returned 0 (0x0)   execution time : 13.322 s
Press any key to continue.

猜你喜欢

转载自www.cnblogs.com/pxxfxxxx/p/10795293.html