当前位置 : 主页 > 编程语言 > c语言 >

C语言数组处理批量数据

来源:互联网 收集:自由互联 发布时间:2023-09-06
一维数组、二维数组、字符串数组 环境:CentOS7 PS:数组是有序数据的集合(每个元素都属于同一个数据类型,用一个统一的数组名和下标来唯一的确定数组中的元素。) 一维数组(类


一维数组、二维数组、字符串数组

环境:CentOS7
PS:数组是有序数据的集合(每个元素都属于同一个数据类型,用一个统一的数组名和下标来唯一的确定数组中的元素。)

  • 一维数组(类型符 数组名 [常量表达式])
    例子:先用循环结构给数组元素a[0]~a[9]赋值0到9,然后再按照9-0输出
#include <stdio.h>
int main() {
    int i, a[10]; #定义整型变量i和整型数组a
    for (i = 0; i <= 9; i ++) #先后对10个元素赋值
        a[i] = i;
    for (i = 9; i >= 0; i --) #按照反顺序输出
        printf ("%d\n", a[i]);
    printf("\n");
    return 0;
}
[root@chenshuyi c]# gcc -o for2 for2.c
[root@chenshuyi c]# ./for2
9
8
7
6
5
4
3
2
1
0
  • 二维数组(类型名 数组名[常量表达式] [常量表达式])
    例子:行列转置
#include <stdio.h>
int main() {
    int a[2] [3] = {
        {1, 2, 3}, {4,5,6}
     };
    int b[3] [2], i, j;
    printf ("array a:\n");
    for (i = 0; i < 2; i ++) {
        for (j = 0; j < 3; j ++) {
            printf ("%5d", a[i] [j]);
            b[j] [i] = a [i] [j];
            }
         printf ("\n");
         }
     printf ("array b:\n");
     for (i = 0; i < 3; i ++) {
         for (j = 0; j < 2; j ++)
             printf ("%5d", b[i] [j]);
         printf ("\n");
     }
     return 0;
}
[root@chenshuyi c]# gcc -o for3 for3.c
[root@chenshuyi c]# ./for3
array a:
    1    2    3
    4    5    6
array b:
    1    4
    2    5
    3    6
  • 字符数组
    例子:菱形
#include <stdio.h>
int main() {
    char a[][5] = {
         {' ',' ','*'},
         {' ','*',' ','*'},
         {'*',' ',' ',' ','*'},
         {' ','*',' ','*'},
         {' ',' ','*'}
         };
    int i, j;
    for (i = 0; i < 5; i ++) {
        for (j = 0; j < 5; j ++)
            printf ("%c", a[i][j]);
        printf ("\n");
        }
    return 0;
}
[root@chenshuyi c]# gcc -o for4 for4.c
[root@chenshuyi c]# ./for4
  *
 * *
*   *
 * *
  *
  • 统计单词数量
#include <stdio.h>
int main() {
    char b[100];
    int i, num = 0, word = 0;
    char c;
    gets (b);
    for (i = 0; (c = b[i]) != '\0'; i ++)
        if (c == ' ') word = 0;
        else if (word == 0) {
             word = 1;
             num ++;
             }
    printf ("you have %d words in this line.\n", num);
    return 0;
}
[root@chenshuyi c]# ./for5
huang hong zhang
you have 3 words in this line.

网友评论