下標中的加1減1問題

2021-08-28 09:22:18 字數 635 閱讀 5675

在平時寫程式中,那些下標加1減1問題我總是糾結很久,現在總結一下

(1)對稱問題

下標從0開始,是

#include#define rep(i, a, b) for(int i = (a); i < (b); i++) 

#define _for(i, a, b) for(int i = (a); i <= (b); i++)

using namespace std;

int main()

下標從1開始,是

#include#define rep(i, a, b) for(int i = (a); i < (b); i++) 

#define _for(i, a, b) for(int i = (a); i <= (b); i++)

using namespace std;

int main()

(2)距離問題

下標為x到下標為y的距離為多少(x <= y)

(1)如果距離不包含x和y, 距離為y - x - 1

(1)如果距離包含x或包含y, 距離為y - x

(1)如果距離x和y都包含, 距離為y - x - +1

按鍵控制数字加1減1

前面學習了數碼管和按鍵,將兩者結合,完成乙個用兩個按鍵控制加減數字的小程式,乙個按鍵控制加1另乙個控制減1。include sbit keyadd p0 0 加1按鍵 sbit keydec p0 1 減1按鍵 sbit latch1 p2 2 段鎖存sbit latch2 p2 3 位鎖存unsi...

vim數字輸入(加1,減1)大小寫切換

數字加減 普通模式下 ctrl a ctrl x 切換游標所在位置的字元的大小寫形式,大寫轉換為小寫,小寫轉換為大寫 3 將游標位置開始的3個字母改變其大小寫 注意以下均是在,normal mode 普通模式 下操作的。1.單個字元的處理 切換游標所在位置的字元的大小寫形式,大寫轉換為小寫,小寫轉換...

加1的陷阱

我們經常在使用for迴圈的時候有死迴圈的情況,但是我們這次的這個陷阱很淺,但是很容易掉進去。下面我們就開看看我們的陷阱吧。在使用integer的時候,經常會使用到他的最大值,我們迴圈到最大值的時候停止迴圈,但是因為這一點讓我們掉進陷阱的,這個陷阱就是當乙個變數i為integer.max value ...