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");
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-05-29

我写的这个程序应该比较容易理解。


#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); 
}


第2个回答  2019-09-20
一位数组赋值的几种方式
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语言中,数组作为一个整体,不能参加数据运算,只能对单个的元素进行处理。
第3个回答  推荐于2017-09-10
#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;
}追问

请问该数组中最大的元素该怎么求?

追答

我给的代码中:

for(i=0;i= max)
max = a[i];
printf("%d ",a[i]);
}
max用来存储最大元素的值,初值被赋值为数组的第一个元素-----max = a[0];
通过循环遍历数组所有元素,并通过一个if判断语句比较各个元素与max的值,如果元素大于max,
则max被改写为那个数组元素的值.遍历完成后,max自然就是数组元素中的最大值.

本回答被提问者采纳

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){ c...

C语言编程,题目1:定义一个一维数组,用指针引用的方法对该数组各元素赋值...
题目1 void main(){ int i;char a[3];a=1;(a+1)=2;(a+2)=3;for(i=0;i<3;i++){ printf("%d.\\n",a[i]);} return;} 题目二 include<stdio.h> void main(){ int i,j;int A[3][4]= { {1,2,3,4},{5,6,7,8},{9,10,11,12} };int (*p)[4]=A;for(i...

C语言一维数组赋值方法
int a[2] = {1,2};char str[20] = "hello world";2、逐个赋值 int a[4];a[0] = 1,a[1]=2, a[2] = 3, a[4]=4;等同于。for (int inx=0; inx!=4; ++inx) a[inx]=inx+1;3、通过函数复制数据以实现赋值 比如下面的代码,通过memcpy函数来实现数据的复制,以实现数组赋...

C语言程序:定义一个一维数组,存10个学生的成绩(赋值)并打印出平均分及...
include <stdio.h>int main(){int a[10]={0},i=0,total=0;float avr = 0;for (i=0;i<10;i++){scanf("%d",&a[i]);total+=a[i];}avr = (float)(total\/10.0);for (i=0;i<10;i++){if (a[i]>avr){printf("%d\\n",a[i]);}}return 0;}66 55 77 88 99 66 ...

在C语言如何在定义数组时给数组赋值?
第一种 定义并初始化 int u[3][3] = {{1,1,1},{2,2,2},{3,3,3}};第二种 从键盘手动输入 int i,j;for(i=0; i<3; i++){ for(j=0; j<3; j++){ scanf("%d",&u[i][j]);} }

C语言定义一个整数类型的一维数组,长度为10,然后通过键盘录入10个数赋值...
include <stdio.h> int main(void){ int arr[10];int i;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=9;i>=0;i--)printf("%d ",a[i]);printf("\\n");}

C语言:创建一个一维(int)数组(维数为6),输入数组元素,并输出数组元素中 ...
include <stdio.h> int main(){ int a[6],i,j,temp;printf("输入6个数:\\n");for(i=0;i<6;i++)scanf("%d",&a[i]);for(i=0;i<6;i++)for(j=i+1;j<6;j++)if(a[i]

C语言 一维数组赋值
c语言规定,不能整体引用数值数组,只能逐个引用数组元素;元素引用方式:数组名[下标表达式]例:a[0]= a[5]+ a[7]- a[2*3]“下标表达式”可以是任何非负整型数据。特别强调:1.一个数组元素,实质上就是一个变量,它具有和相同类型单个变量一样的属性,可以对它进行赋值和参与各种运算。2.在c...

C语言设定一个数组,从键盘给数组赋值。然后判断输入数的个数,如果小于...
int main(){ float a[4],s,area;int i;char ss[80];do { while(1){ printf("input side lengths a b c:\\n");gets(ss);i = sscanf(ss,"%f %f %f %f",&a[0],&a[1],&a[2],&a[3]);if (i==3 && a[0]>0 && a[1]>0 && a[2]>0) break;if (i<3) printf(...

定义一个有10个元素的一维整型数组,从键盘输入给数组的每个元素赋值,并...
printf("输出你输入的元素:\\n");for(int i=0;i<10;i++){ printf("arr[%d]=%d\\n",i,arr[i]);} printf("数组总和为:%d\\n",sum);} 与结构或类中的字段 数组中的所有元素都具有相同类型(这一点和结构或类中的字段不同,它们可以是不同类型)。数组中的元素存储在一个连续性的内存...

相似回答