메모리에서 2차원 배열의 저장 순서는 행 단위입니다. 즉, 한 행이 배치된 후 두 번째 행이 배치됩니다. 즉, "a[0]" 행이 먼저 저장됩니다. 그런 다음 "a[1]" 행이 저장됩니다. 그런 다음 모든 요소가 배치될 때까지 "a[2]" 행을 저장합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, c99 버전, Dell G3 컴퓨터.
2차원 배열 정의의 일반적인 형식은 다음과 같습니다.
dataType arrayName[length1][length2];
여기서 dataType은 데이터 유형이고, arrayName은 배열 이름이고, length1은 첫 번째 차원 첨자의 길이이고, length2는 두 번째 차원 첨자의 길이입니다. .
2차원 배열은 행과 열이 있는 Excel 테이블로 생각할 수 있습니다. length1은 행 수를 나타내고 length2는 2차원 배열에서 요소를 찾으려면 행과 열 수를 모두 나타냅니다. 열을 지정해야 합니다. 예:
int a[3][4];
는 총 3×4=12개의 요소로 구성된 3개의 행과 4개의 열로 구성된 2차원 배열을 정의합니다. 배열 이름은 a입니다. 즉,
a[0][0], a[0][1], a[0][2], a[0][3] a[1][0], a[1][1], a[1][2], a[1][3] a[2][0], a[2][1], a[2][2], a[2][3]
요소를 표현하려는 경우입니다. 행 2와 열 1에는 [2][1]을 작성해야 합니다.
2차원 배열을 x축과 y축이 있는 좌표계로 생각할 수도 있습니다. 평면의 한 점을 결정하려면 x축과 y축을 모두 알아야 합니다.
2차원 배열은 개념적으로 2차원이지만 메모리에 연속적으로 저장됩니다. 즉, 2차원 배열의 요소는 서로 간격 없이 나란히 있습니다. 그렇다면 선형 메모리에 2차원 배열을 저장하는 방법은 무엇일까요? 두 가지 방법이 있습니다.
하나는 행별로 정렬하는 것입니다. 즉, 한 행을 배치한 후 두 번째 행을 배치합니다. 배치되면 두 번째 행이 List로 배치됩니다.
- C 언어에서는 2차원 배열을 행으로 배열합니다. 즉, a[0] 행이 먼저 저장되고, 그 다음 a[1] 행이 저장되고, 마지막으로 a[2] 행이 저장됩니다. 각 행의 4개 요소도 순서대로 저장됩니다. 배열 a는 int 유형이고 각 요소는 4바이트를 차지하며 전체 배열은 총 4×(3×4)=48바이트를 차지합니다.
이렇게 생각하시면 2차원 배열은 같은 길이의 1차원 배열 여러 개로 구성됩니다.
예:스터디 그룹에 5명이 있고, 각 사람은 3개 과목의 시험 점수를 가지고 있으며, 각 과목의 평균 점수와 그룹의 전체 평균 점수를 구합니다.
--C | English | Zhang Tao | |
75 | 92 | Wang Zhenghua | |
65 | 71 | 이자오쿳안 | |
87 | 90 | 저우 멍젠 | |
77 | 85 | 이 질문에 대해 2차원 배열 a[5][3]은 3개 과목의 5명의 점수를 저장하고, 1차원 배열 v[3]을 정의하여 각 과목의 평균 점수를 저장한 후 변수 평균을 정의한다. 총 평균 점수를 저장합니다. 최종 프로그래밍은 다음과 같습니다: | |
Input score: 80 61 59 85 76 75 65 63 87 77 92 71 70 90 85↙ Math: 72 C Languag: 73 English: 81 Total: 75 | 프로그램은 중첩 루프를 사용하여 모든 과목에서 모든 학생의 점수를 읽습니다. 내부 루프에서는 특정 과목의 각 학생의 점수를 순서대로 읽어서 이 점수를 누적하고, 내부 루프를 빠져나간 후(외부 루프로 진입) 누적된 점수를 5로 나누어 v[i]로 보낸다. ] 는 해당 강좌의 평균 점수입니다. 외부 루프는 총 3회 반복되며, 세 과목 각각의 평균 성적을 계산하여 배열 v에 저장합니다. 모든 루프가 완료된 후 v[0], v[1], v[2]를 더하고 3으로 나누어 전체 평균 점수를 얻습니다. 관련 추천: " | C 언어 비디오 튜토리얼 | "
위 내용은 C 언어에서 2차원 배열이 메모리에 저장되는 순서는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

VScode中怎么配置C语言环境?下面本篇文章给大家介绍一下VScode配置C语言环境的方法(超详细),希望对大家有所帮助!

在C语言中,node是用于定义链表结点的名称,通常在数据结构中用作结点的类型名,语法为“struct Node{...};”;结构和类在定义出名称以后,直接用该名称就可以定义对象,C语言中还存在“Node * a”和“Node* &a”。

c语言将数字转换成字符串的方法:1、ascii码操作,在原数字的基础上加“0x30”,语法“数字+0x30”,会存储数字对应的字符ascii码;2、使用itoa(),可以把整型数转换成字符串,语法“itoa(number1,string,数字);”;3、使用sprintf(),可以能够根据指定的需求,格式化内容,存储至指针指向的字符串。

在c语言中,没有开根号运算符,开根号使用的是内置函数“sqrt()”,使用语法“sqrt(数值x)”;例如“sqrt(4)”,就是对4进行平方根运算,结果为2。sqrt()是c语言内置的开根号运算函数,其运算结果是函数变量的算术平方根;该函数既不能运算负数值,也不能输出虚数结果。

C语言数组初始化的三种方式:1、在定义时直接赋值,语法“数据类型 arrayName[index] = {值};”;2、利用for循环初始化,语法“for (int i=0;i<3;i++) {arr[i] = i;}”;3、使用memset()函数初始化,语法“memset(arr, 0, sizeof(int) * 3)”。

c语言合法标识符的要求是:1、标识符只能由字母(A~Z, a~z)、数字(0~9)和下划线(_)组成;2、第一个字符必须是字母或下划线,不能是数字;3、标识符中的大小写字母是有区别的,代表不同含义;4、标识符不能是关键字。

c语言编译后生成“.OBJ”的二进制文件(目标文件)。在C语言中,源程序(.c文件)经过编译程序编译之后,会生成一个后缀为“.OBJ”的二进制文件(称为目标文件);最后还要由称为“连接程序”(Link)的软件,把此“.OBJ”文件与c语言提供的各种库函数连接在一起,生成一个后缀“.EXE”的可执行文件。

c语言可以处理的文件类型是:文本文件和二进制文件。C语言所能够处理文件是按照存放形式分为文本文件和二进制文件:1、文本文件存储的是一个ASCII码,文件的内容可以直接进行输入输出;2、二进制文件直接将字符存储,不能将二进制文件的内容直接输出到屏幕上。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

Dreamweaver Mac版
시각적 웹 개발 도구

뜨거운 주제



