目录
1.1.4.1 循环输入n个数组元素,计算和、max、min
一、思维导图![](https://img-blog.csdnimg.cn/6225d8646b70463487557c100845d991.png)
1.1 一维数组 ![](https://img-blog.csdnimg.cn/7cb9680791bf49fa87e588c0db718240.png)
1.1.1 一维数组初始化
1.1.2 一维数组的引用
1.1.3 一维数组的地址
1.1.4 一维数组的练习
1.1.4.1 循环输入n个数组元素,计算和、max、min
#include <stdio.h>
int main(int argc, const char *argv[])
{
//n个数组和、max、min
int n;
printf("请定义你要输入几个数组:");
scanf("%d",&n);
int a[n],sum=0,max,min;
for(int i=0;i<n;i++)
{
printf("请输入第%d个数字:",i+1);
scanf("%d",&a[i]);
if(i==0)
{
max=min=a[0];
}
if(max<a[i])
{
max=a[i];
}
if(min>a[i])
{
min=a[i];
}
sum+=a[i];
}
printf("sum=%d\nmax=%d\nmin=%d\n",sum,max,min);
return 0;
}
1.1.4.2 循环输入5个数组元素,冒泡排序
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{
//5个元素冒泡
int a[5];
int i,j,t;
for(i=0;i<5;i++)
{
scanf("%d",&a[i]);
}
for(i=1;i<5;i++)//轮数
{
for(j=0;j<5-i;j++)//比较次数
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for(i=0;i<5;i++)
{
printf("%d ",a[i]);
}
return 0;
}
1.1.4.3 终极冒泡
#include <stdio.h>
int main(int argc, const char *argv[])
{
//一维数组冒泡
int a[]={6,5,8,10,11};
int n=sizeof(a)/sizeof(int);
int i,j,t,count;
for(i=1;i<n;i++)
{
count=0;
for(j=0;j<n-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];a[j]=a[j+1];a[j+1]=t;
count++;
}
}
if(count==0)
break;
}
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
putchar(10);
return 0;
}
1.2 二维数组
1.2.1 二维数组的引用
二、作业
2.1 循环输入二维数组,计算所有元素的和
#include <stdio.h>
int main(int argc, const char *argv[])
{
int a[2][3];
int i,j,sum=0;
for(i=0;i<2*3;i++)
{
printf("请输入第%d个元素:",i+1);
scanf("%d",&a[0][i]);
sum+=a[0][i];
}
printf("sum=%d\n",sum);
return 0;
}