一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語言數(shù)組是什么

汽車電子技術(shù) ? 來源:嵌入式悅翔園 ? 作者: JamesBin ? 2023-02-17 14:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

C 語言支持?jǐn)?shù)組數(shù)據(jù)結(jié)構(gòu),它可以存儲一個固定大小的相同類型元素的順序集合。數(shù)組是用來存儲一系列數(shù)據(jù),但它往往被認(rèn)為是一系列相同類型的變量。

一、一維數(shù)組

一維數(shù)組的定義

數(shù)據(jù)類型 數(shù)組名[常量表達(dá)式];

數(shù)組特點(diǎn):[ ] :數(shù)組運(yùn)算符,單目運(yùn)算符,優(yōu)先級(1),左結(jié)合,不能用( )

編譯時分配連續(xù)內(nèi)存

內(nèi)存字節(jié)數(shù)=數(shù)組維數(shù)*
sizeof(元素?cái)?shù)據(jù)類型)
數(shù)組名表示內(nèi)存首地址,
是地址常量

二、數(shù)組的引用

int data[5];     
      data[5]=10;     //C語言對數(shù)組不作越界檢查,使用時要 注意

數(shù)組必須先定義,后使用v只能逐個引用數(shù)組元素,不能一次引用整個數(shù)組v數(shù)組元素表示形式: 數(shù)組名[下標(biāo)]其中:下標(biāo)可以是常量或整型表達(dá)式。

int a[10];
           printf(“%d”,a);      
必須   for(j=0;j<10;j++)
                  printf(“%d\\t”,a[j]);
int a[5]={1,2,3,4,5}; 
 等價于:a[0]=1;  a[1]=2; a[2]=3; a[3]=4; a[4]=5;

說明:

數(shù)組不初始化,其元素值為隨機(jī)數(shù)

對static數(shù)組元素不賦初值,系統(tǒng)會自動賦以0值

只給部分?jǐn)?shù)組元素賦初值

當(dāng)全部數(shù)組元素賦初值時,可不指定數(shù)組長度

static int a[5];
等價于:a[0]=0;  a[1]=0; a[2]=0; a[3]=0; a[4]=0;

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

編譯系統(tǒng)根據(jù)初值個數(shù)確定數(shù)組維數(shù)

三、程序舉例

用冒泡法對10個數(shù)排序

算法分析:如果有n個數(shù),則要進(jìn)行n-1趟比較。
在第1趟比較中要進(jìn)行n-1次相鄰元素的兩兩比較,
在第j趟比較中要進(jìn)行n-j次兩兩比較。
比較的順序從前往后,經(jīng)過一趟比較后,
將最值沉底(換到最后一個元素位置),
最大值沉底為升序,最小值沉底為降序。

排序過程:

(1)比較第一個數(shù)與第二個數(shù),若為逆序a[0]>a[1],則交換;然后比較第二個數(shù)與第三個數(shù);依次類推,直至第n-1個數(shù)和第n個數(shù)比較為止——第一趟冒泡排序,結(jié)果最大的數(shù)被安置在最后一個元素位置上

(2)對前n-1個數(shù)進(jìn)行第二趟冒泡排序,結(jié)果使次大的數(shù)被安置在第n-1個元素位置.

(3)重復(fù)上述過程,共經(jīng)過n-1趟冒泡排序后,排序結(jié)束

#include
int main()
{
  int i,j,t,a[10]={5,4,8,3,6,9,7,222,64,88};

  //排序
  for(i=1;i<10;i++)    //外循環(huán)控制排序趟數(shù),n個數(shù)排n-1趟
  {
    for(j=0;j<10-1;j++)      //內(nèi)循環(huán)每趟比較的次數(shù),第j趟比較n-i次
    {
      if(a[j]>a[j+1])     //相鄰元素比較,逆序則交換
      {
        t=a[j];
        a[j]=a[j+1];
        a[j+1]=t;
      }
    }
  }

  printf("排序后的結(jié)果是:\\n");
  for(i=0;i<10;i++)
  {
    printf("%d  ",a[i]);
  }
  printf("\\n");

  return 0;
}

四、多維數(shù)組

定義方式:
數(shù)據(jù)類型數(shù)組名[常量表達(dá)式][常量表達(dá)式];

例  int a[3][4];  
     float b[2][5];
     int c[2][3][4];
     int a[3,4];           (x)

數(shù)組元素的存放順序l原因:內(nèi)存是一維的

二維數(shù)組:按行序優(yōu)先

多維數(shù)組:最右下標(biāo)變化最快

圖片

五、二維數(shù)組

二維數(shù)組a是由3個元素組成,每個元素a[i]由包含4個元素的一維數(shù)組組成

圖片

圖片

二維數(shù)組元素的引用

形式:數(shù)組名[下標(biāo)][下標(biāo)]

將二維數(shù)組行列元素互換,存到另一個數(shù)組中

#include 
main()
{   int a[2][3]={{1,2,3},{4,5,6}};
     int b[3][2],i,j;
    printf("array a:\\n");
    for(i=0;i<=1;i++)
    {   for(j=0;j<=2;j++)
  {   printf("%5d",a[i][j]);
      b[j][i]=a[i][j];
  }
  printf("\\n");
    }

求二維數(shù)組中最大元素值及其行列號

#include 
main()
{  int a[3][4]={{1,2,3,4},
                        {9,8,7,6},
                        {-10,10,-5,2}};
    int i,j,row=0,colum=0,max;
    max=a[0][0];
    for(i=0;i<=2;i++)
       for(j=0;j<=3;j++)
           if(a[i][j]>max)
    {  max=a[i][j];
       row=i;
       colum=j;
    }
    printf("max=%d,row=%d, \\
colum=%d\\n",max,row,colum);
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    C語言數(shù)組詳解

    介紹C語言數(shù)組的知識點(diǎn)。
    的頭像 發(fā)表于 05-19 10:15 ?6694次閱讀

    C語言數(shù)組和指針的區(qū)別

    大家好,我是嵌入式老林,從事嵌入式軟件開發(fā)多年,今天分享的內(nèi)容是C語言數(shù)組和指針的區(qū)別,希望能對你有所幫助。
    發(fā)表于 07-11 12:40 ?529次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>數(shù)組</b>和指針的區(qū)別

    單片機(jī)以太網(wǎng)小工具:html文件轉(zhuǎn)化為C語言數(shù)組

    最近在弄LwIP,發(fā)現(xiàn)要把HTML文件轉(zhuǎn)化為C語言數(shù)組,比較麻煩,就自己寫了個小程序。 現(xiàn)在拿來與壇友們分享。
    發(fā)表于 04-24 15:26

    C語言數(shù)組格式介紹

    C語言數(shù)組的格式
    發(fā)表于 12-17 07:40

    c語言-數(shù)組

    = "abcde";char book[][80]={"計(jì)算機(jī)應(yīng)用基礎(chǔ)","C語言","C++程序設(shè)計(jì)","
    發(fā)表于 04-07 09:16

    C語言數(shù)組類型有哪些?

    C語言數(shù)組類型有哪些?
    發(fā)表于 10-15 09:06

    C語言數(shù)組詳解

    上述的語句把數(shù)組中第五個元素的值賦為 50.0。所有的數(shù)組都是以 0 作為它們第一個元素的索引,也被稱為基索引,數(shù)組的最后一個索引是數(shù)組的總大小減去 1。以下是上面所討論的
    的頭像 發(fā)表于 09-25 15:43 ?1.5w次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>數(shù)組</b>詳解

    C語言數(shù)組的學(xué)習(xí)教程說明

    同樣我們在程序中也需要容器,只不過該容器有點(diǎn)特殊,它在程序中是一塊連續(xù)的,大小固定并且里面的數(shù)據(jù)類型一致的內(nèi)存空間,它還有個好聽的名字叫數(shù)組??梢詫?b class='flag-5'>數(shù)組理解為大小固定,所放物品為同類的一個購物袋,在該購物袋中的物品是按一定順序放置的。
    發(fā)表于 07-29 08:00 ?0次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>數(shù)組</b>的學(xué)習(xí)教程說明

    C語言總結(jié)_數(shù)組全方位練習(xí)

    C語言數(shù)組的練習(xí)題:涉及到數(shù)組插入、數(shù)組刪除、數(shù)組下標(biāo)數(shù)據(jù)的左移右移、
    的頭像 發(fā)表于 08-14 09:34 ?1214次閱讀

    C語言_數(shù)組的查找、替換、排序、拼接

    這篇文章主要是總結(jié)C語言的位運(yùn)算幾個實(shí)戰(zhàn)例子,接著介紹數(shù)組的基本定義用法、數(shù)組排序、插入、拼接、刪除、字符串查找替換等。
    的頭像 發(fā)表于 08-14 09:48 ?2912次閱讀

    C語言-數(shù)組

    C語言數(shù)組是一個同類型數(shù)據(jù)的集合,主要用來存儲一堆同類型的數(shù)據(jù)。
    的頭像 發(fā)表于 08-14 09:59 ?1578次閱讀

    C語言數(shù)組元素的指針

    C語言調(diào)用函數(shù)時虛實(shí)結(jié)合的方法都是采用“值傳遞”方式,當(dāng)用變量名作為函數(shù)參數(shù)時傳遞的是變量的值,當(dāng)用數(shù)組名作為函數(shù)參數(shù)時。 由于數(shù)組名代表的是
    的頭像 發(fā)表于 03-10 14:45 ?1225次閱讀

    C語言數(shù)組和指針的區(qū)別

    指針是一個變量,它存儲了一個內(nèi)存地址,該地址指向一個變量的存儲位置。通過指針,可以訪問和修改指向的變量。
    的頭像 發(fā)表于 05-30 10:55 ?1111次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>數(shù)組</b>和指針的區(qū)別

    C 語言數(shù)組的基本結(jié)構(gòu)

    數(shù)組是最基本的數(shù)據(jù)結(jié)構(gòu),關(guān)于數(shù)組的面試題也屢見不鮮,本文羅列了一些常見的面試題,僅供參考。目前有以下18道題目。 數(shù)組求和 求數(shù)組的最大值和最小值 求
    的頭像 發(fā)表于 06-22 10:56 ?847次閱讀

    C語言數(shù)組應(yīng)用計(jì)算機(jī)導(dǎo)論A第6講:數(shù)組

    C語言數(shù)組應(yīng)用計(jì)算機(jī)導(dǎo)論A第6講:數(shù)組
    發(fā)表于 11-20 15:33 ?1次下載