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

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

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

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

C語言基礎(chǔ)知識(shí)(6)--數(shù)組與函數(shù)

嵌入式技術(shù) ? 來源:嵌入式技術(shù) ? 作者:嵌入式技術(shù) ? 2023-06-15 10:35 ? 次閱讀

1.數(shù)組概念

數(shù)組:相同數(shù)據(jù)類型的集合。

定義格式:數(shù)據(jù)類型 數(shù)組名[成員個(gè)數(shù)];

示例:char buff[10]; --表示定義一個(gè)char類型數(shù)組buff,buff可以存放10個(gè)char類型變量;

2.數(shù)組特性

1.數(shù)組空間連續(xù)的,下標(biāo)是0開始的,最后一個(gè)成員下標(biāo)為成員個(gè)數(shù)-1;
2.數(shù)組名字表示數(shù)組首地址。
3.數(shù)組可以整體賦值(必須在定義數(shù)組時(shí)完成),也可以單個(gè)成員賦值;
4.數(shù)組空間大小計(jì)算:sizeof(數(shù)組名);成員個(gè)數(shù):sizeof(數(shù)組名)/sizeof(數(shù)組名[0]);
5.數(shù)組整體初始化時(shí),未初始化的成員默認(rèn)初始化為0;單個(gè)成員賦值時(shí),未初始化的成員為隨機(jī)值。

pYYBAGSKdpCANmIAAABW7atE-d0405.png

示例:

#include 
int main()
{
	int buff[5]={10};/*定義一個(gè)int類型數(shù)組*/
	int data[]={10,20,20};/*定義一個(gè)int類型數(shù)組并完成初始化*/
	printf("buff數(shù)組空間:%ldn",sizeof(buff));
	printf("data數(shù)組空間:%ldn",sizeof(data));
	printf("buff數(shù)組成員個(gè)數(shù):%ldn",sizeof(buff)/sizeof(int));
	printf("data數(shù)組成員個(gè)數(shù):%ldn",sizeof(data)/sizeof(data[0]));
	int count=sizeof(buff)/sizeof(int);
	int i=0;
	/*數(shù)組遍歷*/
	for(i=0;i
pYYBAGSKdsaAffIdAAHWJ7IsChk959.png

示例2:定義一個(gè)5個(gè)成員整型數(shù)組,從鍵盤上獲取5個(gè)整數(shù),輸出數(shù)組所有成員(正向和逆向);輸出最大值,最小值和平均值;

#include 
int main()
{	
	int buff[5];
	int count=sizeof(buff)/sizeof(buff[0]);
	printf("請(qǐng)輸入%d個(gè)整數(shù):",count);
	int i;
	for(i=0;i=0;i--)
	{
		printf("%d ",buff[i]);
	}
printf(“n”);
	int min,max;
	float avg=0;
	min=max=buff[0];
	for(i=0;ibuff[i])
		{
			min=buff[i];
		}
		if(max

3.二維數(shù)組

一維數(shù)組僅有一行,二維數(shù)組則有行和列。

二維數(shù)組定義格式:數(shù)據(jù)類型 變量名[參數(shù)1][參數(shù)2];

示例:int buff[3][4];

行列性質(zhì):定義一個(gè)int類型的二維數(shù)組,二維數(shù)組有3行4列;

數(shù)組關(guān)系:定義一個(gè)int類型的二維數(shù)組,[3]表示在二維數(shù)組中存放3個(gè)一維數(shù)組,[4]表示每一個(gè)一維數(shù)組中有4個(gè)int類型成員。

二維數(shù)組空間計(jì)算:sizeof(buff);
二維數(shù)組行計(jì)算:sizeof(buff)/sizeof(buff[0])
二維數(shù)組列計(jì)算:sizeof(buff[0])/sizeof(int )

  • 二維數(shù)組定義及輸出示例:
#include 
int main()
{
	int array[3][4];
	int array2[][4]={10,20,30,20,20};
	printf("array=%lun",sizeof(array));//3*4*4=48
	printf("array2=%lun",sizeof(array2));//2*4*4=32
	int line=sizeof(array2)/sizeof(array2[0]);//計(jì)算行
	printf("line=%dn",line);
	int row=sizeof(array2[0])/sizeof(int);//sizeof(int)等同于sizeof(array2[0][0])
	printf("row=%dn",row);
	int i,j;
    //二維數(shù)組遍歷
	for(i=0;i

4.函數(shù)

函數(shù)作用:提高代碼利用率,是程序結(jié)構(gòu)更簡(jiǎn)潔、清晰。
函數(shù)特性:函數(shù)功能單一,重復(fù)利用性高;

4.1 函數(shù)格式

返回值類型 函數(shù)名(形參)
{
  語句塊;
}

函數(shù)沒有返回值時(shí),返回值類型則用void表示
函數(shù)不需要傳參時(shí),形參則用void表示。

4.2 注意事項(xiàng)

1.函數(shù)形參不能為靜態(tài)變量
原因:

1.靜態(tài)變量只會(huì)初始化一次,而函數(shù)形參每一次函數(shù)調(diào)用都會(huì)重新賦值。
2.靜態(tài)變量生存周期是和main函數(shù)一樣,而函數(shù)形參只能作用于當(dāng)前函數(shù)。

2.函數(shù)形參與實(shí)參

1.函數(shù)形參是變量時(shí)不能改變實(shí)參的值。形參要改變實(shí)參的值需要通過指針方式。

2.函數(shù)形參只能作用于當(dāng)前函數(shù),形參名和實(shí)參名可以不一樣,但形參類型和實(shí)參類型必須一一匹配。函數(shù)形參由調(diào)用函數(shù)時(shí)分配空間,在函數(shù)結(jié)束時(shí)釋放空間。

3.函數(shù)返回值

1.函數(shù)返回值可以返回函數(shù)局部變量的值,不能返回局部變量的地址。

4.3 函數(shù)示例

形參為int類型,返回值為int類型。
寫一個(gè)函數(shù)實(shí)現(xiàn)求兩個(gè)數(shù)之和;

#include 
int func(int,int);/*聲明函數(shù)*/
int main()
{
	int data;
	int a=10;
	int b=20;
	data=func(a,b);
	printf("data=%dn",data);
}
/*
寫一個(gè)函數(shù)實(shí)現(xiàn)求兩個(gè)數(shù)之和;
*/
int func(int a,int b)
{
	return a+b;
}

形參為數(shù)組類型,返回值為void;

編寫一個(gè)函數(shù),實(shí)現(xiàn)數(shù)組遍歷。

#include 
void array_print(int buff[],int count);//聲明函數(shù)
int main()
{
	int buff[]={10,20,30,42,20,20};
	printf("數(shù)組空間大小:%ldn",sizeof(buff));
	array_print(buff,sizeof(buff)/sizeof(int));
}
/*
實(shí)現(xiàn)函數(shù):完成數(shù)組遍歷
形參:buff[]  --要遍歷的數(shù)組
     count  -- 數(shù)組成員個(gè)數(shù)
返回值:無
*/
void array_print(int buff[],int count)
{
	int i=0;
	//printf("數(shù)組空間大小:%ldn",sizeof(buff));//錯(cuò)誤,不能對(duì)形參進(jìn)行空間計(jì)算,對(duì)地址sizeof返回值永遠(yuǎn)都為8
	for(i=0;i

編寫一個(gè)函數(shù),實(shí)現(xiàn)二維數(shù)組遍歷。

#include 
void twoarray_print(int [][4],int ,int );
int main()
{
	int array2[][4]={10,20,30,20,20};
	int line=sizeof(array2)/sizeof(array2[0]);//計(jì)算行
	printf("line=%dn",line);
	//計(jì)算列
	int row=sizeof(array2[0])/sizeof(int);//sizeof(array2[0][0])
	printf("row=%dn",row);
	twoarray_print(array2,line,row);
}
void twoarray_print(int buff[][4],int line,int row)
{
	int i,j;
	for(i=0;i

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7628

    瀏覽量

    139667
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4365

    瀏覽量

    63847
  • 數(shù)組
    +關(guān)注

    關(guān)注

    1

    文章

    419

    瀏覽量

    26291
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    C語言數(shù)組詳解

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

    C語言基礎(chǔ)知識(shí)科普

    C語言是單片機(jī)開發(fā)中的必備基礎(chǔ)知識(shí),本文列舉了部分STM32學(xué)習(xí)中比較常見的一些C語言基礎(chǔ)知識(shí)。
    發(fā)表于 07-21 10:58 ?2019次閱讀

    STM32單片機(jī)中的C語言基礎(chǔ)知識(shí)

    C語言是單片機(jī)開發(fā)中的必備基礎(chǔ)知識(shí),本文列舉了部分STM32學(xué)習(xí)中比較常見的一些C語言基礎(chǔ)知識(shí)。
    發(fā)表于 09-21 17:21 ?4787次閱讀

    C語言基礎(chǔ)知識(shí)(5)--循環(huán)語句

    C語言基礎(chǔ)知識(shí)(5)--循環(huán)語句
    的頭像 發(fā)表于 06-15 10:18 ?2824次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>基礎(chǔ)知識(shí)</b>(5)--循環(huán)語句

    c語言基礎(chǔ)知識(shí)

    c語言基礎(chǔ)知識(shí)
    發(fā)表于 08-17 17:03

    C語言基礎(chǔ)知識(shí)(一)

    、嵌入式系統(tǒng)和科學(xué)計(jì)算等領(lǐng)域。作為一名程序員,了解C語言基礎(chǔ)知識(shí)是非常重要的。本文將詳細(xì)介紹C語言的基礎(chǔ)概念,包括數(shù)據(jù)類型、變量、運(yùn)算符、
    發(fā)表于 08-10 15:16

    C51語言基礎(chǔ)知識(shí)點(diǎn)實(shí)例講解

    本文檔的主要內(nèi)容詳細(xì)介紹的是C51語言的18個(gè)基礎(chǔ)知識(shí)點(diǎn)實(shí)例講解包括了:C51控制語句和C51數(shù)組
    發(fā)表于 06-04 17:52 ?12次下載
    <b class='flag-5'>C</b>51<b class='flag-5'>語言</b>的<b class='flag-5'>基礎(chǔ)知識(shí)</b>點(diǎn)實(shí)例講解

    為什么C語言函數(shù)不能返回數(shù)組?

    C語言函數(shù)可以返回指針、結(jié)構(gòu)體,為什么不能返回數(shù)組? 下面一步一步來分析: 1 函數(shù)不能返回數(shù)組
    的頭像 發(fā)表于 03-29 11:18 ?2160次閱讀

    C語言基礎(chǔ)知識(shí)講解

    C語言基礎(chǔ)知識(shí)講解
    發(fā)表于 05-19 17:39 ?15次下載

    C語言總結(jié)_數(shù)組知識(shí)

    當(dāng)前文章復(fù)盤C語言數(shù)組數(shù)組定義規(guī)則、數(shù)組空間類型、數(shù)組下標(biāo)使用、
    的頭像 發(fā)表于 08-14 09:38 ?1494次閱讀

    C語言-函數(shù)的定義、聲明、傳參

    C語言函數(shù)是非常重要的知識(shí)點(diǎn),一個(gè)完整的C語言程序就是由主
    的頭像 發(fā)表于 08-14 09:57 ?2179次閱讀

    單片機(jī)C語言基礎(chǔ)知識(shí)

    單片機(jī)C語言基礎(chǔ)知識(shí)
    發(fā)表于 10-08 09:30 ?7次下載

    C語言函數(shù)參數(shù)介紹

    C語言數(shù)組元素作函數(shù)實(shí)參 數(shù)組元素可以用作函數(shù)實(shí)參,不能用作形參。
    的頭像 發(fā)表于 03-10 14:30 ?2694次閱讀

    STM32中C語言基礎(chǔ)知識(shí)

    C語言是單片機(jī)開發(fā)中的必備基礎(chǔ)知識(shí),本文列舉了部分STM32學(xué)習(xí)中比較常見的一些C語言基礎(chǔ)知識(shí),
    的頭像 發(fā)表于 04-27 17:42 ?1473次閱讀
    STM32中<b class='flag-5'>C</b><b class='flag-5'>語言</b>的<b class='flag-5'>基礎(chǔ)知識(shí)</b>

    C++語言基礎(chǔ)知識(shí)

    電子發(fā)燒友網(wǎng)站提供《C++語言基礎(chǔ)知識(shí).pdf》資料免費(fèi)下載
    發(fā)表于 07-19 10:58 ?8次下載