[CS study]スキーム
整列
アレイを使用する理由
3つの数字があるときは、最大の数字を求めるプログラムを書くことを考えてみましょう.
デフォルトでは、変数の名前をa、b、cに設定できます.
では、100個の数字があれば、どうすればいいのでしょうか.
効率は低いが、100個の変数を作成して宣言することができる.
しかし、数字が10万個なら?変数を1つずつ作成して処理することはできません.
したがって、同じデータ型を複数収容する技術が必要です.これがレイアウトです.
配列は、同じ性質を有する複数のデータを表すことができる.
アレイの宣言と初期化
配列の宣言方法
자료형 배열명[배열의 크기] = (초기화 값); // 초기화 값은 없을 수도 있다.
다음과 같은 문법으로 배열을 초기화하고 개별적인 값에 접근할 수 있습니다.
#include <stdio.h>
int main(void) {
int a[10] = { 6, 5, 4, 3, 9, 8, 0, 1, 2, 7 };
int i;
for (i = 0; i < 10; i++) {
printf("%d ", a[i]);
}
system("pause");
}
例)配列内で最も近い要素の検索#include <stdio.h>
#include <limits.h>
int main(void) {
int a[10] = { 6, 5, 4, 3, 9, 8, 0, 1, 2, 7 };
int i, maxValue = INT_MIN;
for (i = 0; i < 10; i++) {
if (maxValue < a[i]) maxValue = a[i];
}
printf("%d\n", maxValue);
system("pause");
}
INT MIN 1)INT MINは最低価格を求める常用機能です.2)ヘッダファイルで定義されたint範囲の最大値を返します.3)INT MAXも使用できます.
文字列と配列
デフォルトでは、元のC言語では独自の文字列ライブラリは提供されません.
したがって、C言語は文字列を複数文字の組み合わせとして表す.
C++はこれらの不便な点を知っているので,独自の文字列タイプを提供している.
C言語では、1文字に1バイトしか含まれていないため、文字配列を使用します.
すなわち,文字列は実際には配列である.char a[20] = "HELLO WORLD"
デフォルトでは、文字列を宣言するときに、配列のサイズが文字列のサイズより大きいことを確認します.
文字列の受信と出力には%sというフォーマット指定子が使用されます.#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void) {
char a[20];
scanf("%s", &a);
printf("%s\n", a);
system("pause");
}
C言語では、文字列を使って文字を並べることを習い始めたばかりの頃は、面倒に感じるかもしれません.
しかし、C言語の利点は、特定のインデックスの文字に直接アクセスできることです.#include <stdio.h>
int main(void) {
char a[20] = "Hello World";
a[4] = ',’;
printf("%s\n", a);
system("pause");
} // 'Hell, World'가 출력
例)出力文字列に含まれる「l」の数#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void) {
char a[] = "Hello World";
int count = 0;
for (int i = 0; i <= 10; i++) {
if (a[i] == 'l') count++;
}
printf("%d\n", count);
system("pause");
return 0;
} //3이 출력
1)アレイを使用すると、大量のデータを簡単に処理できます.
2)C言語の文字列は内部で文字の配列である.
Reference
この問題について([CS study]スキーム), 我々は、より多くの情報をここで見つけました
https://velog.io/@younara/CSstudy-배열
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
자료형 배열명[배열의 크기] = (초기화 값); // 초기화 값은 없을 수도 있다.
다음과 같은 문법으로 배열을 초기화하고 개별적인 값에 접근할 수 있습니다.
#include <stdio.h>
int main(void) {
int a[10] = { 6, 5, 4, 3, 9, 8, 0, 1, 2, 7 };
int i;
for (i = 0; i < 10; i++) {
printf("%d ", a[i]);
}
system("pause");
}
#include <stdio.h>
#include <limits.h>
int main(void) {
int a[10] = { 6, 5, 4, 3, 9, 8, 0, 1, 2, 7 };
int i, maxValue = INT_MIN;
for (i = 0; i < 10; i++) {
if (maxValue < a[i]) maxValue = a[i];
}
printf("%d\n", maxValue);
system("pause");
}
文字列と配列
デフォルトでは、元のC言語では独自の文字列ライブラリは提供されません.
したがって、C言語は文字列を複数文字の組み合わせとして表す.
C++はこれらの不便な点を知っているので,独自の文字列タイプを提供している.
C言語では、1文字に1バイトしか含まれていないため、文字配列を使用します.
すなわち,文字列は実際には配列である.
char a[20] = "HELLO WORLD"
デフォルトでは、文字列を宣言するときに、配列のサイズが文字列のサイズより大きいことを確認します.文字列の受信と出力には%sというフォーマット指定子が使用されます.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void) {
char a[20];
scanf("%s", &a);
printf("%s\n", a);
system("pause");
}
C言語では、文字列を使って文字を並べることを習い始めたばかりの頃は、面倒に感じるかもしれません.しかし、C言語の利点は、特定のインデックスの文字に直接アクセスできることです.
#include <stdio.h>
int main(void) {
char a[20] = "Hello World";
a[4] = ',’;
printf("%s\n", a);
system("pause");
} // 'Hell, World'가 출력
例)出力文字列に含まれる「l」の数#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void) {
char a[] = "Hello World";
int count = 0;
for (int i = 0; i <= 10; i++) {
if (a[i] == 'l') count++;
}
printf("%d\n", count);
system("pause");
return 0;
} //3이 출력
1)アレイを使用すると、大量のデータを簡単に処理できます.2)C言語の文字列は内部で文字の配列である.
Reference
この問題について([CS study]スキーム), 我々は、より多くの情報をここで見つけました https://velog.io/@younara/CSstudy-배열テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol