C语言题目:定义一个一维数组,并给数组赋值
展开全部
1 定义数组;
2 给定初始化值;
3 打印初始化值;
4 循环输入,并赋值给数组;
5 输出赋值后的数组。
代码:
int main()
{
int a[5]={1,2,3,4,5};
int i,n;
for(i = 0; i < 5; i ++)
printf("%d ", a[i]);
printf("\n");
for(i = 0; i < 5; i ++)
{
scanf("%d",&n);
a[i] = n;
}
for(i = 0; i < 5; i ++)
printf("%d ", a[i]);
printf("\n");
}
展开全部
我写的这个程序应该比较容易理解。
#include <stdio.h>
main(void)
{
int a[10],i,max;
float ave,s;
max=a[0];
s=0;
printf("请输入10个数:\n");
for(i=0;i<=9;i++)
{
scanf("%d",&a[i]);
if(max<a[i])
max=a[i];
s+=a[i];
}
printf("该数组为:\n");
for(i=0;i<9;i++)
printf("%4d",a[i]);
printf("\n");
printf("该数组逆序输出为:\n");
for(i=9;i>=0;i--)
printf("%4d",a[i]);
printf("\n");
printf("\n该数组最大值为:%d\n",max);
ave=s/10;
printf("\n该数组平均值为:\t%f\n",ave);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一位数组赋值的几种方式
int
a[10]={1,2,3,4,5,6,7,8,9,10};
.一般初始化,例:
int
a[10]={3,10,5,3,4,5,6,7,8,9};
int
array[5]={2,3,4,5,6};
其结果是给每一个数组元素都指定了初值。
2.部分元素初始化,其余元素均为零。
例:
int
a[10]={7,8,9,67,54};
仅给前5个元素赋初值,后5个元素初值为0。
3.全部元素均初始化为1。
int
a[10]
=
{1,1,1,1,1,1,1,1,1,1};
不允许简写为 int
a[10]={1};或int
b[10]={1*10};
同学们想一想上述定义a和b数组后,初始化结果是什么?
注意:当程序不给数组指定初始值时,编译器作如下处理:
(1)部分元素初始化,编译器自动为没有初始化的元素初始化为0。
(2)数值数组如果只定义不初始化,编译器不为数组自动指定初始值,即初值为一些随机值(值不确定)。
4.如果全部元素均指定初值,定义中可省略元素的个数。
例:
int
a[5]={9,28,3,4,5};可以写为:
int
a[
]={9,28,3,4,5};
数组元素的引用
c语言规定,不能整体引用数值数组,只能逐个引用数组元素;
元素引用方式:数组名[下标表达式]
例:a[0]
=
a[5]
+
a[7]
-
a[2*3]
“下标表达式”可以是任何非负整型数据。
特别强调:1.一个数组元素,实质上就是一个变量,它具有和相同类型单个变量一样的属性,可以对它进行赋值和参与各种运算。
2.在c语言中,数组作为一个整体,不能参加数据运算,只能对单个的元素进行处理。
int
a[10]={1,2,3,4,5,6,7,8,9,10};
.一般初始化,例:
int
a[10]={3,10,5,3,4,5,6,7,8,9};
int
array[5]={2,3,4,5,6};
其结果是给每一个数组元素都指定了初值。
2.部分元素初始化,其余元素均为零。
例:
int
a[10]={7,8,9,67,54};
仅给前5个元素赋初值,后5个元素初值为0。
3.全部元素均初始化为1。
int
a[10]
=
{1,1,1,1,1,1,1,1,1,1};
不允许简写为 int
a[10]={1};或int
b[10]={1*10};
同学们想一想上述定义a和b数组后,初始化结果是什么?
注意:当程序不给数组指定初始值时,编译器作如下处理:
(1)部分元素初始化,编译器自动为没有初始化的元素初始化为0。
(2)数值数组如果只定义不初始化,编译器不为数组自动指定初始值,即初值为一些随机值(值不确定)。
4.如果全部元素均指定初值,定义中可省略元素的个数。
例:
int
a[5]={9,28,3,4,5};可以写为:
int
a[
]={9,28,3,4,5};
数组元素的引用
c语言规定,不能整体引用数值数组,只能逐个引用数组元素;
元素引用方式:数组名[下标表达式]
例:a[0]
=
a[5]
+
a[7]
-
a[2*3]
“下标表达式”可以是任何非负整型数据。
特别强调:1.一个数组元素,实质上就是一个变量,它具有和相同类型单个变量一样的属性,可以对它进行赋值和参与各种运算。
2.在c语言中,数组作为一个整体,不能参加数据运算,只能对单个的元素进行处理。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main(void)
{
int a[]={9,19,34,13,13,56};
int max = a[0];
int sum = 0;
float average;
int i = 0;
for(i=0;i<6;++i)
{
if(a[i] >= max)
max = a[i];
printf("%d ",a[i]);
}
putchar('\n');
/*逆序输出*/
for(i=5;i>=0;--i)
printf("%d ",a[i]);
putchar('\n');
for(i=0;i<6;++i)
{
sum += a[i];
}
average = sum/6;
printf("数组平均值:%.2f\n",average);
printf("最大值:%d\n",max);
return 0;
}
int main(void)
{
int a[]={9,19,34,13,13,56};
int max = a[0];
int sum = 0;
float average;
int i = 0;
for(i=0;i<6;++i)
{
if(a[i] >= max)
max = a[i];
printf("%d ",a[i]);
}
putchar('\n');
/*逆序输出*/
for(i=5;i>=0;--i)
printf("%d ",a[i]);
putchar('\n');
for(i=0;i<6;++i)
{
sum += a[i];
}
average = sum/6;
printf("数组平均值:%.2f\n",average);
printf("最大值:%d\n",max);
return 0;
}
追问
请问该数组中最大的元素该怎么求?
追答
我给的代码中:
for(i=0;i= max)
max = a[i];
printf("%d ",a[i]);
}
max用来存储最大元素的值,初值被赋值为数组的第一个元素-----max = a[0];
通过循环遍历数组所有元素,并通过一个if判断语句比较各个元素与max的值,如果元素大于max,
则max被改写为那个数组元素的值.遍历完成后,max自然就是数组元素中的最大值.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询