最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

c語言練習(xí)

2021-11-23 22:12 作者:風(fēng)菩提樹  | 我要投稿

一、兩個數(shù)交換的4種方法

1.使用第三個變量來進行替換

#include

int main()

{

int a , b ,c;

printf("請輸入a,b的值\n");

scanf("%d %d",&a,&b);

printf("交換前:a = %d,b = %d\n",a,b);

c = a;

a = b;

b = c;

printf("交換后,a=%d,b=%d\n",a,b);

return 0;

}

2.使用一個封裝函數(shù)來進行交換

#include

int swap ( int *a , int *b)

{

 int temp;

 temp = *a;

 *a = *b;

 *b = temp;

 return 0;

}

int main()

{

 ?int a,b;

 ?printf("請輸入a,b的值\n");

 scanf("%d %d",&a,&b);

 printf("交換前:a = %d,b = %d\n",a,b);

 swap(&a,&b);

 printf("交換后:a = %d,b = %d\n",a,b);

 return 0;

}

3.使用加減法來進行交換

#include

int main()

{

 int a , b;

 printf("請輸入a,b的值\n");

 scanf("%d %d",&a,&b);//如a=10,b=20

 a = a + b;//a=30

 b = a - b;//b=30-20=10

 a = a - b;//a=30-10=20

 printf("交換后,a=%d,b=%d\n",a,b);

 return 0;

}

4.使用異或來進行交換

#include

int main()

{

 int a,b;

 printf("請輸入a,b兩個數(shù)的值");

 scanf("%d %d",&a,&b);

 printf("交換前 a=%d,b=%d\n",a,b);//a=01,b=11

 a = a^b;//a=10

 b = a^b;//b=10^11=01

 a = a^b;//a=10^01=11

 printf("交換后 a=%d,b=%d\n",a,b);

 return 0;

}

二、整型數(shù)組中的數(shù)據(jù)內(nèi)容從小到大排序:

1.分析的圖片

2.代碼:

#include 

#include 

#include 

int main()

{

int a[5],i,max,j;

srand((unsigned)time(NULL));//初始化隨機數(shù)的值,以時間作為參考

/* ? 給數(shù)組a 賦值 隨機值*/

for( i = 0; i <5;i++)

{

a[i] = rand()%51 + 10;//產(chǎn)生10 到 60的隨機數(shù)

}

/* 打印數(shù)組沒排列之前的值*/

printf("%d %d %d %d %d\t",a[0], a[1],a[2],a[3],a[4]);

printf("\n");

/* 進行數(shù)組元素大小的排列*/

for ( i = 0 ;i <5;i++)

{

/* 第一輪:a[0] 與a[1] 比較 且 進行換值

a[1] 與a[2] 比較 且 進行換值

a[2] 與a[3]...

a[3] 與a[4]....

a[4]會得到最大值

第二輪 : 可以不讓a[4] 參與比較

直到第四輪結(jié)束

*/

for ( j ?= 0 ; j <4;j++

{

/* 數(shù)組元素 進行比較大小 并交換值*/

if ( a[j] > a[ j+1 ] )

{

max = a[j]; a[j] = a[j+1];

 ? ? a[j+1] = max;

}

}

}

//打印排列后的數(shù)組

printf("%d %d %d %d %d\t",a[0],a[1],a[2],a[3],a[4]);

printf("\n");

return 0;

}

三、遞歸函數(shù)

1)函數(shù)調(diào)用自己本身

2)使用遞歸函數(shù)的時候,一定要有中斷條件

3)代碼分析如下:

int Fun(int data)

{

int result;

if(data != 1)

{

result = data *Fun(data - 1);

return result;

}

return 1;

}

Fun(4) 是:result = 4 *fun(3)//再次調(diào)用fun(3)函數(shù)

Fun(3) ----> result = 3*fun(2)

Fun(2)--->result = 2*fun(1)--->此時執(zhí)行fun(1)函數(shù)---》返回1

則fun(2)的返回值--》2*fun(1)=2*1=1

Fun(3)的返回值--》3*fun(2) = 3*2=6

Fun(4)的返回值--》4*fun(3)=4*6=28


c語言練習(xí)的評論 (共 條)

分享到微博請遵守國家法律
深泽县| 神池县| 武宣县| 敦煌市| 靖远县| 叶城县| 芮城县| 遵化市| 黑水县| 象州县| 鄂托克前旗| 普兰店市| 图木舒克市| 罗甸县| 抚远县| 揭阳市| 衡阳市| 潮州市| 泰来县| 巫溪县| 蒙城县| 南丰县| 晋中市| 石柱| 从化市| 荃湾区| 泾阳县| 金川县| 枣阳市| 阳泉市| 巴里| 千阳县| 新河县| 天全县| 株洲县| 吉木萨尔县| 眉山市| 颍上县| 育儿| 保康县| 平阳县|