# C语言假期学习笔记——6

C语言假期学习笔记——6

数组

  • 主要学习了一位数组和二维数组。
  • 数组是一组具有相同类型的变量的集合。C语言程序通过元素的下标来访问数组中的元素。(下标从0开始)

    一位数组
  • 类型 数组名[元素个数]

    二维数组
  • 类型 数组名[第一维长度][第二维长度]
  • 第一维长度在某些时刻可以省略(当形参被声明为二维数组时),第二维长度永远不可以省略
  • 存储的元素总量=第一维长度*第二维长度

    向函数传递数组
  • 先对数组的容量进行限制例如下面限定数组最多存储40个元素。
#define N 40
void PassArray(int arr[])
{
    int i=-1;
    do
    {
        i++;
        scanf("%d",&arr[i]);
    }while(条件);
}
void PassArray(int arr[],int n)
{
    int i;
    for(i=0;i<n;i++)
    {
        scanf("%d",&arr[i]);
    }
}
int PassArray(int arr[])
{
    int i=-1;
    do
    {
        i++;
        scanf("%d",&arr[i]);
    }while(条件);
    return i;
}
在数组内进行查找
int FindArr(int arr[],int n,int score)
{
    int i;
    for(i=0;i<n;i++)
    {
        if(score==arr[i]) 
        {
            return i;
            break;
        }
    }
    return -1;
}
  • 折半查找
    int binary_research(int arr[],int left,int right,int element)  
    {  
        while(left<=right)  
        {     
            int mid = (left+right)/2;  
            if(arr[mid]>element)  
            {  
                right = mid - 1;  
            }  
            else if(arr[mid]<element)  
            {  
                left = mid + 1;  
            }  
            else   
            {  
                return mid;  
            }  
        }  
        return -1;  
    }  
排序
  • 主要是冒泡排序;
 int i,j;  
    for(j=0;j<COUNT-1;j++){  
        for(i=0;i<COUNT-1-j;i++){  
  
                if (arr[i]>arr[i+1]){  
                    int tmp=arr[i]; arr[i]=arr[i+1];arr[i+1]=tmp;  
                }  
  
        }  
        for(i=0;i<COUNT;i++){  
            printf("%d,",arr[i]);  
  
  
        }  

易错点

-在这章的代码编写中总是有一些小问题出现

  1. 调用函数时max=FindMax(score[],n);编译错误
  2. max=FindMax(int score[],int n);编译错误;
  3. int ReadScore(int score[][],int num[]);编译错误。省略了长度声明

转载于:https://www.cnblogs.com/hpl20155329/p/7251500.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值