当前位置: 首页 > news >正文

做网站的宽和高有限制吗浙江seo博客

做网站的宽和高有限制吗,浙江seo博客,代理注册公司注意什么,个人网站建设如何赚钱目录 前言 六、批量数据组织——数组 6.1 成绩统计——数组类型 6.1.1 数组类型 6.1.2 数组声明与操作 6.1.3 成绩统计 6.2 统计多科成绩——多维数组 6.3 程序设计实例 6.3.1 杨辉三角形 6.3.2 矩阵乘积 6.3.3 消去法 6.4 线性表——分类与检索 前言 ChatGPT C语…

目录

前言

六、批量数据组织——数组

6.1 成绩统计——数组类型

6.1.1 数组类型

6.1.2 数组声明与操作

6.1.3 成绩统计

6.2 统计多科成绩——多维数组

6.3 程序设计实例

6.3.1 杨辉三角形

6.3.2 矩阵乘积

6.3.3 消去法

6.4 线性表——分类与检索


 

 

 

 

前言

ChatGPT

        C语言是一种通用的、过程式的计算机编程语言,由贝尔实验室的Dennis Ritchie在20世纪70年代初开发。它被设计成一种简单、高效和可移植的语言,用于系统级编程和应用程序开发。

以下是C语言的一些主要特点:

1. 结构化编程:C语言支持结构化编程,它提供了顺序执行、条件语句(如if-else和switch)和循环结构(如for和while),使程序更易于阅读、理解和维护。

2. 中级语言:C语言同时具备高级语言和低级语言的特点。它提供了丰富的控制结构和操作符,可以直接访问内存和硬件,并且允许程序员进行底层的操作,如位操作和指针运算。

3. 可移植性:C语言编写的程序具有很高的可移植性,因为它的语法和特性在不同的计算机系统上基本保持一致。这使得程序可以在不同的平台上进行编译和执行,而无需对代码进行太多的修改。

4. 强大的标准库:C语言提供了一个丰富的标准库,其中包含了各种函数和工具,用于处理输入输出、字符串操作、内存管理、数学运算等。这些函数可以提高程序开发的效率,并且可以跨平台使用。

5. 面向系统编程:由于C语言具有直接访问内存和硬件的能力,它经常用于开发操作系统、嵌入式系统和驱动程序等底层软件。C语言还提供了位操作和指针等特性,使得程序员可以更好地控制系统资源。

6. 扩展性:C语言允许程序员编写自定义的函数和库,以扩展语言的功能。这使得C语言非常适合大型项目的开发,可以将代码组织成模块化的结构,并通过函数调用进行复用。

        尽管C语言相对较为底层,但它仍然是一种非常重要和广泛应用的编程语言。它为程序员提供了强大的控制能力和性能优势,并且在各种领域,如系统编程、嵌入式开发、游戏开发等方面都得到了广泛应用。许多现代编程语言,如C++、Java和Python,都受到了C语言的影响,并在其基础上进行了扩展和改进。

        C语言中的数组是一种用于存储多个相同类型元素的数据结构。它是一种线性数据结构,可以按照索引访问和操作其中的元素。数组在C语言中被广泛应用于各种编程任务,包括数据的组织、存储和处理。同时,数组也是其他数据结构和算法的基础,如字符串、栈、队列、排序算法等。

 

六、批量数据组织——数组

6.1 成绩统计——数组类型

6.1.1 数组类型

  • 数组是个数固定、类型相同的若干个变量的有序集合;
  • 数组中的变量称为数组元素;
  • 通常用数组来表示向量、矩阵等;
  • 举例:
    • int a[50],j[11] ;

       

    • 一个单词 由  若干个    字符   组成
      • char word[1000];

         

    • 一个向量 由  若干个    实数  组成
      • float data[4];

         

    • 一个矩阵 由  若干个    向量  组成
      • float vector[2][4];

         

6.1.2 数组声明与操作

        在C语言中,声明一个数组需要指定元素的类型和数组的名称,还可以指定数组的大小(即元素的数量)。以下是一个示例的数组声明:    

        79b28db9022d452487302e2a2e947185.png

 

        在上述示例中,我们声明了一个名为a的整型数组,它包含了5个元素。

        数组的元素可以通过索引访问,索引从0开始,依次增加。例如,要访问数组中的第一个元素,可以使用numbers[0];要访问第三个元素,可以使用numbers[2]。我们可以使用索引来读取、修改或赋值数组中的元素。  

        注意:数组的有效索引范围是从0到数组大小减1。如果尝试访问超出数组边界的索引,将导致未定义的行为或错误。

 

6.1.3 成绩统计

#include <stdio.h>#define SIZE 5int main() {int scores[SIZE]; // 存储成绩的数组int i;int sum = 0;float average;// 读取成绩printf("请输入%d个学生的成绩:\n", SIZE);for (i = 0; i < SIZE; i++) {printf("学生%d的成绩:", i + 1);scanf("%d", &scores[i]);}// 计算总分for (i = 0; i < SIZE; i++) {sum += scores[i];}// 计算平均成绩average = (float)sum / SIZE;// 打印结果printf("总成绩:%d\n", sum);printf("平均成绩:%.2f\n", average);return 0;
}

8238405bbd42421e9e1f2d4cacf9ae8c.png

 

6.2 统计多科成绩——多维数组

       C语言的数组还支持多维数组的概念。多维数组是指包含多个维度的数组,可以用于表示表格、矩阵等复杂的数据结构。例如,以下是一个二维数组的声明和访问示例:

int matrix[3][3]; // 声明一个3x3的整型矩阵// 访问矩阵中的元素
matrix[0][0] = 1; // 第一行第一列的元素
matrix[1][2] = 5; // 第二行第三列的元素

        在上述示例中,声明了一个名为matrix的二维整型数组,它是一个3x3的矩阵。通过使用两个索引,我们可以访问矩阵中的特定元素。

 

#include <stdio.h>#define NUM_STUDENTS 5
#define NUM_SUBJECTS 3int main() {int scores[NUM_STUDENTS][NUM_SUBJECTS]; // 存储成绩的二维数组int i, j;int sum[NUM_STUDENTS] = {0}; // 每个学生的总分float average[NUM_STUDENTS]; // 每个学生的平均成绩// 读取成绩printf("请输入%d个学生的%d门成绩:\n", NUM_STUDENTS, NUM_SUBJECTS);for (i = 0; i < NUM_STUDENTS; i++) {printf("学生%d的成绩:\n", i + 1);for (j = 0; j < NUM_SUBJECTS; j++) {printf("科目%d:", j + 1);scanf("%d", &scores[i][j]);sum[i] += scores[i][j];}average[i] = (float)sum[i] / NUM_SUBJECTS;}// 打印结果printf("\n学生成绩统计:\n");for (i = 0; i < NUM_STUDENTS; i++) {printf("学生%d的总成绩:%d\n", i + 1, sum[i]);printf("学生%d的平均成绩:%.2f\n\n", i + 1, average[i]);}return 0;
}

 

请输入5个学生的3门成绩:
学生1的成绩:
科目1:1
科目2:2
科目3:3
学生2的成绩:
科目1:4
科目2:5
科目3:6
学生3的成绩:
科目1:7
科目2:8
科目3:9
学生4的成绩:
科目1:9
科目2:8
科目3:7
学生5的成绩:
科目1:6
科目2:5
科目3:4学生成绩统计:
学生1的总成绩:6
学生1的平均成绩:2.00学生2的总成绩:15
学生2的平均成绩:5.00学生3的总成绩:24
学生3的平均成绩:8.00学生4的总成绩:24
学生4的平均成绩:8.00学生5的总成绩:15
学生5的平均成绩:5.00

 

6.3 程序设计实例

6.3.1 杨辉三角形

        杨辉三角形是一个由数字排列成三角形的数列,它的每个数字等于它上方两个数字的和。以下是使用一维数组实现的杨辉三角形的打印代码示例:

#include <stdio.h>#define MAX_ROWS 10int main() {int triangle[MAX_ROWS][MAX_ROWS];// 初始化杨辉三角形的第一列和对角线为1for (int i = 0; i < MAX_ROWS; i++) {triangle[i][0] = 1;triangle[i][i] = 1;}// 计算并填充杨辉三角形的其他元素for (int i = 2; i < MAX_ROWS; i++) {for (int j = 1; j < i; j++) {triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];}}// 打印杨辉三角形for (int i = 0; i < MAX_ROWS; i++) {for (int j = 0; j <= i; j++) {printf("%d ", triangle[i][j]);}printf("\n");}return 0;
}

b063a3493aef4b68ae5571554722931f.png

 

6.3.2 矩阵乘积

        矩阵乘积是指两个矩阵相乘得到的结果矩阵。

#include <stdio.h>#define ROWS_A 2
#define COLS_A 3
#define ROWS_B 3
#define COLS_B 2void matrixMultiply(int A[ROWS_A][COLS_A], int B[ROWS_B][COLS_B], int C[ROWS_A][COLS_B]) {for (int i = 0; i < ROWS_A; i++) {for (int j = 0; j < COLS_B; j++) {C[i][j] = 0;for (int k = 0; k < COLS_A; k++) {C[i][j] += A[i][k] * B[k][j];}}}
}int main() {int matrixA[ROWS_A][COLS_A] = {{1, 2, 3}, {4, 5, 6}};int matrixB[ROWS_B][COLS_B] = {{7, 8}, {9, 10}, {11, 12}};int result[ROWS_A][COLS_B];matrixMultiply(matrixA, matrixB, result);printf("Result:\n");for (int i = 0; i < ROWS_A; i++) {for (int j = 0; j < COLS_B; j++) {printf("%d ", result[i][j]);}printf("\n");}return 0;
}

 

e6ed604c03d04d84b66571093ddccbf1.png

6.3.3 消去法

        消去法是一种解线性方程组的方法,通过行变换将方程组化为上三角形矩阵,然后回代求解未知数。

#include <stdio.h>#define SIZE 3void gaussianElimination(float matrix[SIZE][SIZE], float constants[SIZE], float solutions[SIZE]) {for (int k = 0; k < SIZE - 1; k++) {for (int i = k + 1; i < SIZE; i++) {float factor = matrix[i][k] / matrix[k][k];for (int j = k; j < SIZE; j++) {matrix[i][j] -= factor * matrix[k][j];}constants[i] -= factor * constants[k];}}for (int i = SIZE - 1; i >= 0; i--) {solutions[i] = constants[i];for (int j = i + 1; j < SIZE; j++) {solutions[i] -= matrix[i][j] * solutions[j];}solutions[i] /= matrix[i][i];}
}int main() {float matrix[SIZE][SIZE] = {{2, -1, 1}, {-3, 2, -2}, {1, -1, 2}};float constants[SIZE] = {-2, 6, 5};float solutions[SIZE];gaussianElimination(matrix, constants, solutions);printf("Solutions:\n");for (int i = 0; i < SIZE; i++) {printf("x%d = %.2f\n", i+1, solutions[i]);}return 0;
}

 

 

c2a3b4e2691a4d01a9625fed3dfeb16e.png

 

6.4 线性表——分类与检索

 

【重拾C语言】六、批量数据组织(二)线性表——分类与检索(主元排序、冒泡排序、插入排序、顺序检索、对半检索)_QomolangmaH的博客-CSDN博客https://blog.csdn.net/m0_63834988/article/details/133620693?spm=1001.2014.3001.5501

 

 

http://www.yidumall.com/news/75587.html

相关文章:

  • 坪山网站建设策划哪家网络推广好
  • 企业网站建设需要考虑内容重庆seo扣费
  • java做网站微信公众选件济南网站建设方案
  • 南京小程序外包公司seo是什么品牌
  • mysql 大型网站开发sem托管公司
  • 横岗做网站广告代理商
  • 常州网站建设企业网站南京百度网站快速优化
  • 做网站可以做哪些方面的网站建设网站定制
  • 网站做备案网络营销心得体会1000字
  • 微软云怎么做网站世界足球排名最新
  • 社交网站上的商城怎么做seo门户网站优化
  • 临沂网站建设中企动力谷歌广告
  • 网站开发的完整流程seo外包公司
  • 交友网站有人做加拿大28广州番禺最新发布
  • 化妆品网站建设策划方案淘宝seo排名优化的方法
  • 学校网站建设作用最有效的推广学校的方式
  • 加快实施创新驱动发展战略杭州seo网站推广
  • 防城港做网站的西安网站制作工作室
  • 建设投资公司网站网销怎么做才能做好
  • 网站模板开发平台怎么做优化网站关键词
  • 政府查询网站建设方案青岛网站建设策划
  • 搭建公司青岛网络优化厂家
  • 英文网站建站模板seo建站需求
  • 长沙网站改版百度seo白皮书
  • 怎么查询菠菜网站做没作弊新东方考研班收费价格表
  • 长宁网站建设重庆seo推广运营
  • 网站建设公司招人电商代运营公司十强
  • 宁波外贸网站建设和推广株洲网页设计
  • 博客可以放自己做的网站培训课程网站
  • app定制研发app开发上海seo优化bwyseo