c语言清空一维数组,C语言(一维数组)

本篇将对一维数组相关知识,进行归纳整理

掌握一维数组,是进行批量数据处理程序设计的基石

包含一位数组的概念知识

相关问题及代码

一,定义一维数组的一般形式为:

类型符 数组名[常量表达式];

数组名的命名规则和变量名相同 int a[10];//10为数组长度

int a[4+6]; 合法

int n=10;

int a[n];

int n=5,a[10];

a[n]=20;

初始化

在定义数组的同时,给各数组元素赋值

int a[10]={0,1,2,3,4,5,6,7,8,9};

int a[10]={0,1,2,3,4};相当于

int a[10]={0,1,2,3,4,0,0,0,0,0};

int a[10]={0,0,0,0,0,0,0,0,0,0};相当于

int a[10]={0};

int a[5]={1,2,3,4,5};可写为

int a[ ]={1,2,3,4,5};

批量求取累加和及其平均数(任意个数)

#include#define N 100 //定义符号常量100,表示数据的最大范围

main()

{

int i,a[N],n,sum=0; //定义循环变量i,存放正整数的数组a,接受到的正整数个数n, 累加和变量sum,注意定义时初始化为零。

printf(“please input/输入 the data/数据\n:”);

printf(“输入任意负整数,即可结束循环\n”);

for(i=0; ;i++) //利用for循环,循环输入

{ scanf("%d ",&a[i]);

if(a[i]<0)

break;

}

n=i;

for(i=0;isum+=a[i];

printf(“the sum is %d \n”,sum);

printf(“the average is %0.2f \n”,1.0*sum/n);

return 0;

}

运行截图:

725cfe017ff8210b69349bbf2edc9380.png

逆序输出 :

#includemain()

{ int i,n,arr[50],t;//数组定义,相关变量定义

printf(“please input the size of array/数组大小:\n”);

scanf("%d",&n);//个数n的输入

printf("\nplease input %d integers/整数:\n",n);

for(i=0;iscanf("%d",&arr[i]);//数组元素的输入

for(i=0;i{

t=arr[i];

arr[i]=arr[n-i-1]; //第一 与 倒一 交换,实现逆序

arr[n-i-1]=t;

}

for(i=0;iprintf("%d “,arr[i]);

}

运行截图:

c656ab119c9128fb33abeb0b555085e9.png

同样的逆序输出也可以借助一个for循环实现

#include int main()

{ int i,a[10];

for (i=0; i<=9;i++)

a[i]=i;

for(i=9;i>=0; i–)

printf(”%d “,a[i]);

printf(”\n");

return 0;

}

运行截图

550a196ee07c560533bb40e180dd58e4.png

来实现整数的有序插入

详细代码

includemain()

{

int a[10]={1,30,50,200,900};//数组a已经初始化为递增的 有序序列

int i, data, n=5; //定义了下标i ,待插的数组元素data,以及目前元素的总个数n

printf(“please input a integer//翻译 请输入一个整数\n”);

scanf("%d",&data);

printf(“完成有序插入后的数组为\n:”);

for(i=n-1;i>=0;i–) //从后往前 ,依次比较

{

if(a[i]>data) //插入元素较小,

a[i+1]=a[i]; //数组元素,从后往前移动,开始搬家

else //直至元素进入 合适位置

break; //退出,搬家活动即可

}

a[i+1]=data; // 正式插入

n=n+1;

for(i=0;iprintf("%d ",a[i]);//记得加空格哦

}

运行截图:

0cfc6da17d2d6b12ce66fc6b6a5126b2.png

#includeint main()

{

printf(“请输出前20项的 Fibonaacci\n”);

int a[20]={1,1},i;

for(i=2;i<=19;i++)

{a[i]=a[i-1]+a[i-2];}//求取

for(i=0;i<=19;i++) //利用for循环输出

{ if(i%5==0) //每5个换行

printf("\n");

printf(" %d ",a[i]);

}

printf("\n");

return 0;

}

运行截图

9d20d4805803466fe198d5f290e5cfc5.png

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值