C语言数组如何高效处理海量数据批量操作?

2026-04-11 22:121阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计582个文字,预计阅读时间需要3分钟。

C语言数组如何高效处理海量数据批量操作?

一维数组、二维数组、字符串数组 + 环境:CentOS7 + PS:数组是有序数据集合(每个元素属于同一数据类型,通过统一数组名和下标唯一确定元素)。一维数组(类似类型)。

C语言数组如何高效处理海量数据批量操作?


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

环境: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.

本文共计582个文字,预计阅读时间需要3分钟。

C语言数组如何高效处理海量数据批量操作?

一维数组、二维数组、字符串数组 + 环境:CentOS7 + PS:数组是有序数据集合(每个元素属于同一数据类型,通过统一数组名和下标唯一确定元素)。一维数组(类似类型)。

C语言数组如何高效处理海量数据批量操作?


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

环境: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.