C語言實現陣列資料旋轉

2021-08-17 02:38:59 字數 2147 閱讀 6785

/*

* 檔名:陣列旋轉.c

* 功能描述:把陣列資料順時針或逆時針旋轉

*/#include

#include

#define row 4

// 行數

#define col 4

// 列數

/* 按鍵輸入列舉 */

enum key_e

;/* 函式宣告 */

void

initial

(void);

// 初始化介面

intgetinput

(void);

// 獲取使用者輸入

void

showarray

(int ar[row]

[col]);

// 顯示陣列結果

void

turnright

(int ar[row]

[col]);

// 陣列往右旋轉

void

turnleft

(int ar[row]

[col]);

// 陣列往左旋轉

/* 從主函式開始 */

intmain

(void),

,,,}

;int loop =1;

// 迴圈標誌位

int key;

// 使用者輸入

/* 初始化介面 */

initial()

;/* 顯示陣列 */

showarray

(ar)

;/* 進入使用者互動 */

while

(loop)

showarray

(ar)

;// 顯示操作完之後的陣列資料

}system

("stty icanon");

// 恢復緩衝

system

("stty echo");

// 恢復回顯

fprintf

(stdout

,"\033[?25h");

// 恢復滑鼠顯示

fflush

(stdout);

return0;

}/** 函式名:initial

* 函式功能:初始化螢幕並顯示功能選單

* 函式引數:無

* 返回值:無

*/void

initial

(void)/*

* 函式名:getinput

* 函式功能:獲取使用者輸入

* 函式引數:無

* 返回值:返回使用者輸入對應的列舉值

*/int

getinput

(void)}

else

if(ch ==

'q')

// q鍵退出

else

return key;}/*

* 函式名:showarray

* 函式功能:顯示數元素結果

* 函式引數:待顯示的陣列

* 返回值:無

*/void

showarray

(int ar[row]

[col]

)else

}fputc

('\n'

,stdout);

}}/* * 函式名:turnright

* 函式功能:陣列元素往右旋轉

* 函式引數:待旋轉的陣列

* 返回值:無

*/void

turnright

(int ar[row]

[col])}

/* 把旋轉後的資料賦值給原來的陣列 */

for(y =

0; y < row; y++)}

}/** 函式名:turnleft

* 函式功能:陣列元素往左旋轉

* 函式引數:待旋轉的陣列

* 返回值:無

*/void

turnleft

(int ar[row]

[col])}

/* 把旋轉後的資料賦值給原來的陣列 */

for(y =

0; y < row; y++)}

}

c語言實現螺旋陣列

螺旋陣列 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 分析 這是乙個一維維度和二維維度相等的陣列arr len len 將num 1開始從arr 0 0 賦值,直到num len len結束賦值。在賦值過程中,如...

C語言實現動態陣列

include include 要使用malloc是要包含此標頭檔案 include 要使用memset是要包含此標頭檔案 intmain for i 0 i 列印陣列 free p 釋放記憶體,malloc和free一定要記得成組使用,不然會導致程式吃記憶體 getchar 讓程式停頓,觀察輸出 ...

陣列查詢 C 語言實現

本文主要包含常見的陣列查詢方法。線性查詢是最為簡單粗暴的查詢方法了,直接從陣列首元素開始查詢,直到找到要查詢的元素為止。include include int linesearch int p,int length,int search int binarysearch int p,int low,...