当前位置:网站首页>C apprentissage des langues - jour 12.
C apprentissage des langues - jour 12.
2022-06-27 09:56:00 【Bad Bad - 5】
Catalogue des articles
- Référence d'apprentissageBVidéo du professeur Hao Bin debout,Le code source de l'article peut être contacté en privé si nécessaire.
Tableau
- Action
- Pour résoudre les problèmes de stockage et d'utilisation de grandes quantités de données du même type
- Pour un grand nombre de données du même type,Il n'est pas nécessaire de redéfinir le nom de la variable
- Pour simuler le monde réel
- Un tableau unidimensionnel:
a[x]Représente une ligne droite - Tableau bidimensionnel:
a[x][y]Plan de représentation - Tableau 3D:
a[x][y][z]Représente l'espace - Un tableau à quatre chiffres:
a[x][y][z][h]Représente l'espace + Temps
- Un tableau unidimensionnel:
- Pour résoudre les problèmes de stockage et d'utilisation de grandes quantités de données du même type
- Format
aEst le nom de la variablenIndique qu'il y anVariables- Le premier est
a[0],Le dernier esta[n-1]
a[n] = {
1, 2, ...,n};
Exemple:
/*Tableau*/
# include <stdio.h>
int main(void)
{
int a[5] = {
1, 2, 3, 4, 5}; //aReprésente le nom du tableau,5Indique qu'il y a cinq éléments
int i;
for (i = 0; i < 5; ++i)
{
printf("%d\n", a[i]);
}
return 0;
}
a[5] = {1, 2, 3, 4, 5}aReprésente le nom du tableau,5Indique qu'il y a cinq éléments, Chacun esta[0]、a[1]...a[4]
/*Résultats des opérations*/
1
2
3
4
5
Press any key to continue
Un tableau unidimensionnel
- Format:
int a[3];- Indique qu'il y a un total de3Éléments
- 3 Les noms des éléments sont
a[0]、a[1]、a[2]
- Définition:
- Pour n Les variables allouent continuellement de l'espace de stockage
- Toutes les variables doivent avoir le même type de données
- Toutes les variables doivent avoir la même taille d'octet
/*Mauvaise écriture1*/
int a[5];
a[5] = {
1, 2, 3, 4, 5};
- Vous ne pouvez assigner une valeur globale qu'en définissant le tableau
- Après la définition
a[5]Ce n'est pas un tableau , C'est le numéro 6Item (s)- Tableau
a[5]Moyenne,Seulementa[0]-a[4]Item (s),Non.a[5]Item (s)
Exemple:a La valeur du tableau est copiée à bTableau
/*Mauvaise écriture2*/
b = a; //a、b Indique l'adresse du premier élément du tableau
//Écrire correctement
for (i = 0; i < 5; ++i)
b[i] = a[i];
Fonctionnement du tableau
- Initialisation
- Affectation
- Trier
- Max./Petite valeur
- Inversion
- Trouver
- Insérer
- Supprimer
Initialisation
- Initialisation complète
int a[5] = {1, 2, 3, 4, 5};
- Initialisation incomplète
int a[5] = {1, 2, 3};- Les éléments non initialisés sont automatiquement 0
- Ne pas initialiser
int a[5];- Tous les éléments sont des valeurs de déchets
- Zéro.
int a[5] = 0- Tous les éléments sont: 0
Affectation
/*Assignation des tableaux*/
# include <stdio.h>
int main(void)
{
int a[5];
int i;
printf("Veuillez entrera[0]Valeur de:");
scanf("%d", &a[0]);
printf("a[0] = %d\n", a[0]);
printf("Veuillez entrera[3]Valeur de:");
scanf("%d", &a[3]);
printf("a[3] = %d\n", a[3]);
printf("---------------\n");
for (i = 0; i < 5; ++i)
printf("a[%d] = %d\n", i, a[i]); // Valeurs des éléments du tableau de sortie du cycle
return 0;
}
/*Résultats des opérations*/
Veuillez entrera[0]Valeur de: 1
a[0] = 1
Veuillez entrera[3]Valeur de:3
a[3] = 3
---------------
a[0] = 1
a[1] = -858993460 // Les éléments qui ne sont pas initialisés sont remplis de données inutiles
a[2] = -858993460
a[3] = 3
a[4] = -858993460
Press any key to continue
Inversion
Exemple: Inverser la sortie des éléments d'un tableau
/* Inverser la sortie des éléments d'un tableau */
# include <stdio.h>
int main(void)
{
int a[5] = {
1, 2, 3, 4, 5};
int i, j;
int t; //Utilisé pour stocker des données temporaires
i = 0;
j = 4;
while (i < j)
{
t = a[i];
a[i] = a[j];
a[j] = t;
++i; // Aucune valeur globale n'est utilisée pour l'auto - augmentation ou l'auto - diminution de la variable ,Alors...i++Et++iPeut être utilisé
--j;
}
printf(" La sortie du tableau inversé est :");
for (i = 0; i < 5; ++i)
printf("%d, ", a[i]);
printf("\n");
return 0;
}
/*Analyse*/
i = 0
j = 4
0 < 4Fondé,En boucle
t = a0 = 1
a0 = a4 = 5
a4 = t = 1
i = 1
j = 3
1 < 3Fondé,En boucle
t = a1 = 2
a1 = a3 = 4
a3 = t = 2
i = 2
j = 2
2 < 2C'est faux.,Cycle de sortie
a[5] ={
5, 4, 3, 2, 1} //a[2]La valeur ne change pas
/*Résultats des opérations*/
La sortie du tableau inversé est :5, 4, 3, 2, 1,
Press any key to continue
- Vérifier si le nombre pair est toujours valide
Tableau bidimensionnel
- Format:
int a[3][4];- Indique qu'il y a un total de12Éléments,Peut être considéré comme3D'accord4 Voir colonne
- 12 Les noms des éléments sont :
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]
a[i][j]Indique le paragraphei + 1D'accord,Noj + 1Colonnes
Initialisation du tableau 2D
- Les deux méthodes sont équivalentes
/*Initialisation du tableau 2D*/
int a[3][4] = {
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}
int a[3][4] = {
{
1, 2, 3, 4},
{
5, 6, 7, 8},
{
9, 10, 11, 12}
};
Fonctionnement d'un tableau bidimensionnel
- Sortie sur un tableau 2D
- Trier un tableau 2D
- Trouvez le maximum pour chaque ligne
- Déterminer si la matrice est symétrique
- Multiplication des matrices
/* Représentation et sortie d'un tableau bidimensionnel */
# include <stdio.h>
int main(void)
{
int a[3][4] = {
{
1, 2, 3, 4},
{
5, 6, 7, 8},
{
9, 10, 11, 12}
};
// Vous pouvez également saisir un tableau bidimensionnel comme suit
//int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
int i,j;
for (i = 0; i < 3; ++i)
{
printf("No %d D'accord:", i + 1);
for (j = 0; j < 4; ++j)
{
printf("%-3d", a[i][j]); //-3d%Indique l'alignement à gauche, Milieu de 3 Position du curseur
}
printf("\n");
}
return 0;
}
/*Résultats des opérations*/
No 1 D'accord:1 2 3 4
No 2 D'accord:5 6 7 8
No 3 D'accord:9 10 11 12
Press any key to continue
Existe - t - il un tableau multidimensionnel
- Il n'y a pas de tableau multidimensionnel
- Parce que la mémoire est linéaire unidimensionnelle
nLes groupes de dimensions peuvent être considérés commen - 1Un tableau unidimensionnel de tableaux de dimensionsint a[3][4];- Le tableau contient 3Un tableau unidimensionnel d'éléments
- Chaque tableau unidimensionnel peut également contenir 4Éléments
【 Article Source référence GitHub】
Tout ce qui précède est original,En cas d'incertitude ou d'erreur,Veuillez noter que.
边栏推荐
猜你喜欢

新旧两个界面对比

es 根据索引名称和索引字段更新值

Use aspese slides to convert PPT to PDF

Some exercises about binary tree

通俗易懂理解朴素贝叶斯分类的拉普拉斯平滑

【系统设计】邻近服务

手机影像内卷几时休?
![[registration] infrastructure design: from architecture hot issues to industry changes | tf63](/img/75/b83aaf9610987f695eefe350f8170e.jpg)
[registration] infrastructure design: from architecture hot issues to industry changes | tf63

Five page Jump methods for wechat applet learning

How do I get the STW (pause) time of a GC (garbage collector)?
随机推荐
12 necessary tools for network engineers
C# Any()和AII()方法
CPU design (single cycle and pipeline)
为智能设备提供更强安全保护 科学家研发两种新方法
【STM32】HAL库 STM32CubeMX教程十二—IIC(读取AT24C02 )
Quartz (timer)
MySQL proficient-01 addition, deletion and modification
详解各种光学仪器成像原理
隐私计算FATE-离线预测
6月23日《Rust唠嗑室》第三期B站视频地址
谷歌浏览器 chropath插件
js 所有的网络请求方式
Advanced mathematics Chapter 7 differential equations
How do I get the STW (pause) time of a GC (garbage collector)?
How do I get the STW (pause) time of a GC (garbage collector)?
1098 insertion or heap sort (PAT class a)
2-4Kali下安装nessus
快速入门CherryPy(1)
R語言plotly可視化:可視化多個數據集歸一化直方圖(historgram)並在直方圖中添加密度曲線kde、設置不同的直方圖使用不同的分箱大小(bin size)、在直方圖的底部邊緣添加邊緣軸須圖
js的数组拼接「建议收藏」