1.區域性變數和存放函式呼叫關係的棧幀(可忽略)一起存放在呼叫棧裡,這個空間是有限的,
因為棧幀的關係如果區域性變數過大將會導致棧溢位錯誤。
全域性變數有專門存放的段(data段和bss段)。所以一般比較大的陣列都作為全域性變數放在main外面。
參考柳神**和晴神**
#include#include#include#include#include#include#include#include#includeusing namespace std;
int base[17]=;
int m[11]=;//將x替換成10了
string s;
//istrue包含了所有的主體邏輯
bool istrue()
int temp = (s[17] == 'x') ? 10 : (s[17] - '0');
return m[sum%11] == temp;
}int main();
int m[11]=;//將x替換成10了
int main()
sum+=(s[i]-'0')*base[i];
} if(i<17)elseelse
if(m[sum%11]!=temp)
} }
//放在迴圈外,全部檢測過後才可以
if(flag==0)
return 0;
}
1031 查驗身份證 15
原題 思路 雖然容易,但是不細心,也挺耽誤時間.完整實現 include int main void 17個 int m 11 int wrong1 0 第1種錯誤 int flag 0 只要發生錯誤就標記為1 char id 19 最後一位放 0 int n int sum int i int j...
1031 查驗身份證 15
原題 思路 雖然容易,但是不細心,也挺耽誤時間.完整實現 include int main void 17個 int m 11 int wrong1 0 第1種錯誤 int flag 0 只要發生錯誤就標記為1 char id 19 最後一位放 0 int n int sum int i int j...
C 1031 查驗身份證(15 分)
注意點1 int 陣列的初始化賦值方法 2 char 陣列的初始化賦值方法 3 輸入char 型別的方法 scanf s id 4 cin和c語言的gets或者fgets類似,都會在獲取字串輸入後自動在字串末尾加 0截斷。有效輸入之後的資料為隨機的髒資料。在字元陣列使用前可以使用memset進行初始...