解释在 C 编程中的编译时和运行时初始化?
让我们用编译时和运行时初始化的概念来了解数组——
数组
数组是由存储在连续内存中的项目组成的集合,并且可以通过使用索引访问元素。
编译时数组初始化
在编译时初始化中,用户必须在程序本身中输入详细信息。
编译时初始化与变量初始化相同。数组初始化的一般形式如下——
语法
type name[size] = { list_of_values };
//integer array initialization
int rollnumbers[4]={ 2, 5, 6, 7};
//float array initialization
float area[5]={ 23.4, 6.8, 5.5,7.3,2.4 };
//character array initialization
char name[9]={ 'T', 'u', 't', 'o', 'r', 'i', 'a', 'l', '\0' };示例
以下是一个 C 程序,用于显示数组——
#include<stdio.h>
void main(){
//Declaring array with compile time initialization//
int array[5]={1,2,3,4,5};
//Declaring variables//
int i;
//Printing O/p using for loop//
printf("Displaying array of elements :");
for(i=0;i<5;i++){
printf("%d ",array[i]);
}
}输出
Displaying array of elements :1 2 3 4 5
运行时数组初始化
使用运行时初始化,用户可以在程序的不同运行中接受或输入不同的值。
它还用于初始化大型数组或具有用户指定值的数组。还可以使用 scanf() 函数在运行时初始化数组。
示例
以下是一个 C 程序,用于使用运行时编译计算数组中所有元素的总和和乘积——
#include<stdio.h>
void main(){
//Declaring the array - run time//
int A[2][3],B[2][3],i,j,sum[i][j],product[i][j];
//Reading elements into the array's A and B using for loop//
printf("Enter elements into the array A:
");
for(i=0;i<2;i++){
for(j=0;j<3;j++){
printf("A[%d][%d] :",i,j);
scanf("%d",&A[i][j]);
}
printf("
");
}
for(i=0;i<2;i++){
for(j=0;j<3;j++){
printf("B[%d][%d] :",i,j);
scanf("%d",&B[i][j]);
}
printf("
");
}
//Calculating sum and printing output//
printf("Sum array is :
");
for(i=0;i<2;i++){
for(j=0;j<3;j++){
sum[i][j]=A[i][j]+B[i][j];
printf("%d\t",sum[i][j]);
}
printf("
");
}
//Calculating product and printing output//
printf("Product array is :
");
for(i=0;i<2;i++){
for(j=0;j<3;j++){
product[i][j]=A[i][j]*B[i][j];
printf("%d\t",product[i][j]);
}
printf("
");
}
}输出
Enter elements into the array A: A[0][0] :A[0][1] :A[0][2] : A[1][0] :A[1][1] :A[1][2] : B[0][0] :B[0][1] :B[0][2] : B[1][0] :B[1][1] :B[1][2] : Sum array is : 000 000 Product array is : 000 000
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP