久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4131|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

C語(yǔ)言實(shí)現(xiàn)數(shù)組的循環(huán)左移,右移,翻轉(zhuǎn)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:125275 發(fā)表于 2017-12-12 08:44 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
數(shù)組結(jié)合指針可以實(shí)現(xiàn)很多有趣的功能,比如下面這個(gè)程序:

假設(shè)數(shù)組為 : 12345

如果左移一次即為:23451 ,依次類推

如果右移一次即為:51234 ,依次類推

翻轉(zhuǎn)則為:54321

我們來實(shí)現(xiàn)下這個(gè)程序:

  1.     #include <stdio.h>  
  2.     #include <stdlib.h>  
  3.     #include <string.h>  
  4.     #define  NR(x)  (sizeof(x)/sizeof(x[0]))  
  5.     //數(shù)組左移   
  6.     int buffer_left_move(int *buffer , int buf_len)  
  7.     {  
  8.         int i ;  
  9.         char tmp = buffer[0];  
  10.         for(i = 1 ; i < buf_len ; i++)  
  11.         {  
  12.             buffer[i-1] = buffer[i] ;  
  13.         }  
  14.         buffer[buf_len-1] = tmp ;  
  15.     }  
  16.     //數(shù)組右移   
  17.     int buffer_right_move(int *buffer , int buf_len)  
  18.     {  
  19.         int i ;  
  20.         char tmp = buffer[buf_len - 1];  
  21.         for(i = buf_len ; i > 0 ; i--)  
  22.         {  
  23.             buffer[i] = buffer[i-1] ;   
  24.         }  
  25.         buffer[0] = tmp ;  
  26.     }  
  27.     //數(shù)組翻轉(zhuǎn)   
  28.     int buffer_turn_over(int *buffer , int buf_len)  
  29.     {  
  30.         int size = buf_len ;   
  31.         int i , tmp;   
  32.         for(i = 0 ; i < size/2 ; i++)  
  33.         {  
  34.             tmp = buffer[i] ;   
  35.             buffer[i] = buffer[size-1-i] ;  
  36.             buffer[size-1-i] = tmp;  
  37.         }  
  38.     }  
  39.     //打印數(shù)組   
  40.     void print_buffer(int *buffer, int buf_len)  
  41.     {  
  42.         int i ;  
  43.         system("cls");  
  44.         printf("please input \'a' or \'b' or \'w' \n");  
  45.         for(i = 0 ; i < buf_len ; i++)  
  46.         {  
  47.             printf("%d",buffer[i]);  
  48.         }  
  49.         putchar('\n');  
  50.     }  
  51.       
  52.     int main(void)  
  53.     {  
  54.         int buffer[5] = {1,2,3,4,5} ;  
  55.          
  56.         print_buffer(buffer,NR(buffer));  
  57.         while(1)  
  58.         {  
  59.             switch(getch())  
  60.             {     
  61.                 //左邊   
  62.                 case 'a':   
  63.                         buffer_left_move(buffer,NR(buffer)) ;  
  64.                         print_buffer(buffer,5);  
  65.                         break ;  
  66.                 //右邊   
  67.                 case 'd':   
  68.                         buffer_right_move(buffer,NR(buffer));  
  69.                         print_buffer(buffer,5);  
  70.                         break ;  
  71.                 //翻轉(zhuǎn)   
  72.                 case 'w':  
  73.                         buffer_turn_over(buffer,NR(buffer)) ;  
  74.                         print_buffer(buffer,5);  
  75.                         break ;  
  76.             }  
  77.         }  
  78.         return 0 ;   
  79.     }  
復(fù)制代碼


運(yùn)行結(jié)果:

please input 'a' or 'b' or 'w'

12345

按下a為不斷左移,按下d為不斷右移,按下w則為翻轉(zhuǎn)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:230970 發(fā)表于 2017-12-15 19:23 | 只看該作者
單片機(jī)里面的程序中左移右移也是這樣的嗎?
回復(fù)

使用道具 舉報(bào)

板凳
ID:304731 發(fā)表于 2018-4-10 10:37 | 只看該作者
單片機(jī)也能用吧
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人三区| 在线观看国产视频 | 天天综合国产 | 欧美在线一区二区三区 | 一级片aaa| 国产一二三区精品视频 | 日本韩国欧美在线观看 | 久久久精品综合 | 亚洲精品3 | 欧美日韩国产一区二区 | 在线欧美亚洲 | 久久精品国产精品青草 | 欧美激情视频一区二区三区免费 | 欧美aaaaaaaa | 国产精品久久久久久av公交车 | 一区二区三区视频在线 | 欧美日韩在线免费 | 91五月婷蜜桃综合 | 免费国产网站 | 97起碰| 亚洲视频二区 | 99久久精品免费看国产四区 | 午夜精品| 97在线超碰 | 国产亚洲网站 | 亚洲国产高清在线 | 麻豆成人在线视频 | 免费在线性爱视频 | 在线啊v| 精品国产1区2区3区 在线国产视频 | 欧洲一级毛片 | 91短视频网址 | 久久国产一区 | 日本精品一区二区三区视频 | jlzzjlzz欧美大全 | 天天爽夜夜骑 | 中文字幕高清av | 国产精品视频网 | 少妇一区在线观看 | 国产精品大片在线观看 | 日韩av在线一区二区三区 |