C程序设计
----教学过程篇数组
数组是有序数据的集合,数组中的每一个元素都属于同一个数据类型,用统一的数组名和不同的下标来唯一的确定数组中的元素数组
一维数组的定义数据类型 数组名 [常量表达式 ]
例如:
int array[10];
说明
1.数组名定名规则和变量名的相同
2.数组名后的常量表达式要用方括号括起来数组
3.常量表达式表示元素的个数,即数组的长度
4.常量表达式中可以包含常量和符号常量,
但不能够包含变量例如:
正确,#define a 10
int array[a];
错误,int a;
int array[a];
数组
一维数组元素的引用
C语言可以逐个引用数组元素,但不能够一次引用整个数组,引用数组元素的格式为:
数组名 [下标 ] (第一个元素为 a[0])
例如:
int a[10];
a[0]=10;
此引用表示将 a数组的第一个元素赋值为 10
数组
一维数组的初始化
1.在定义数组的同时给数组元素赋初始值例如:
int a[3]={1,2,3};
2.只给部分元素赋值例如:
int a[5]={1,2,3};
则该数组的前三个元素的值为 1,2,
3,后两个元素的值为 0
数组
3.给数组中所有的元素赋初始值零例如:
int a[3]={0,0,0}; 或者
int a[3]={0};
4.如果给所有的数组元素赋值,可以不指定数组的长度例如,int a[3]={1,2,3}
也可以写成,int a[]={1,2,3}系统自己将数组长度定为 3
数组(程序一)
输入 10个字符,将其倒序输出
#include <stdio.h>
#include <stdlib.h>
main()
{
int i;
char a[10];
printf("please input 10 letters:\n");
for(i=0;i<10;i++)
{
scanf("%c",&a[i]);
}
数组(程序一)
for(i=9;i>=0;i--)
{
printf("%c",a[i]);
}
system("pause");
}
数组(程序二)
输入一串数字,对这串数字进行排序,
然后按从小到大的顺序输出,再从键盘上输入一个数字,将该数字与数组中的数字一起按从小到大的顺序输出数组(程序二)
#include <stdio.h>
#include <stdlib.h>
#define n 10
main()
{
int i,j,a[n],temp,temp1,flag=1;
printf("please input %d numbers:\n",n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
数组(程序二)
for(i=9;i>=0;i--)
{
for(j=0;j<i;j++)
{
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
数组(程序二)
printf("请输入你要插入的数字,\n");
scanf("%d",&temp1);
for(i=0;i<10;i++)
{
if(a[i]<temp1)
{
printf("%d ",a[i]);
}
else if(a[i]==temp1)
{
if(flag==1)
{
数组(程序二)
printf("%d ",temp1);
flag=0;
}
printf("%d ",a[i]);
}
else if(a[i]>temp1)
{
if(flag==1)
{
printf("%d ",temp1);
flag=0;
}
数组(程序二)
printf("%d ",a[i]);
}
}
if(flag==1)
{
printf("%d ",temp1);
flag=0;
}
system("pause");
}