c语言一维数组赋值
⑴ c语言 定义一个一维数组,并给数组赋值
#include<iostream>
using namespace std;
int main(){
const int MAX=10;//此处自己改
int a[MAX],sum=0,max=0;
for(int i=0;i<MAX;++i){
cin>>a[i];
sum+=a[i];//求和
if(a[i]>max)max=a[i];//找最大元素
}
for(int i=0;i<MAX;++i){
cout<<a[i]<<' '
}
cout<<endl;//遍历
for(int i=MAX-1;i>-1;--i){
cout<<a[i]<<' '
}
cout<<endl;//逆序遍历
double avg=(double)sum/(double)MAX;
cout<<"The average is "<<avg<<endl;
cout<<"The max is "<<max<<endl;
return 0;
}
⑵ C语言中怎么把一维数组赋给另外一个一维数组
可以采用两种方式:
1、按元素赋值:
遍历一维数组,并将每个元素赋值到二维数组的对应元素上。
或者遍历二维数组,将每个元素赋值为一维数组对应值上。
优点为操作灵活,可以按照需要任意赋值。
2、当一维数组和二维数组类型相同,而且赋值顺序与一维数组中的存储顺序完全相同时,可以用memcpy的方式,直接一次性赋值。
如一维数组为a,二维数组为b,基础类型为TYPE,需赋值元素个数为n,可以调用
memcpy(b,a,sizeof(TYPE)*n);
该方法有点为操作简单,执行效率高。
不过所需满足的前提条件多。在满足上述所有条件时,用memcpy的方式更为简单。
(2)c语言一维数组赋值扩展阅读:
C语言中,赋值运算的操作是有方向的,即将右侧表达式的值(也称为右值)赋值左侧的变量,只能是标识一个特定存储单元的变量名。
由于变量名只能出现在赋值运算符的左边,因此它也被称为左值;由于常量只能出现在赋值运算符的右边,因此它也被称为右值。左值可以用作右值,但右值不能用作左值。
结构体的相关操作规则:
1、可以引用一个结构体变量中的一个成员的值:
例如,student1.num表示结构体变量student1中的成员的值,student1.num的值为10001。引用结构体变量中成员的一般方式为:结构体变量名.成员名。例如可以这样对变量的成员赋值:student1.num=10010;
2、不能将一个结构体变量作为一个整体进行输入和输出:
例如,已定义student1和student2为结构体变量,并且它们已有值。不能企图这样输出结构体变量中的各成员的值:cin>>student1;只能对结构体变量中的各个成员分别进行输入和输出。
⑶ C语言一维数组赋值方法
不单能用for语句
一维数组的声明:
类型说明符 数组名[常量表达式]
例如 int C[10],它表明数组名为C,此数组有十个整型变量。
注:常量表达式中可以包括常量和符号常量,不可以包括变量。也就是说,C不允许对数组的大小做动态定义,即数组的大小不依赖于程序运行过程中变量的值。
一维数组的引用:
C语言规定只能逐个引用数组元素而不能一次引用整个数组。
数组元素的表现形式为:数组名[下标] 下标可以是整型常量或整型表达式。例如 C[0]=C[5]+C[7]-C[3*2]
一维数组的初始化:
可以用赋值语句或输入语句使数组中的元素得到值,但这样会影响速度。可以使数组在运行之前初始化,即在编译阶段使之得到初值。在定义数组时对数组元素赋以初值。static int a[5]={0,1,2,3,4}
⑷ C语言用函数实现数组赋值
void
Chg_Array(int
array[],
int
size,
int
value)
{
int
i;
for(i=0;i<size;i++)
array[i]=value;
}
Chg_Array(M_a,
31,
9)
//将数组
M_a
的31个元素赋值为9.
一维数组不需要二维指针。