PAT1031查驗身份證

2021-10-07 16:24:02 字數 820 閱讀 6651

只有**沒有講解,作為留念。

#include

#include

using

namespace std;

int n;

int quan=

;//權重

const

int maxn =

100;

//可輸入的最大值

string s[maxn]

;//用於儲存身份證資訊的陣列

char

getdata

(int value)

return ch;

}/**

* 根據權重值陣列計算前17位的加權和並取模

*/int

getquan

(string cell)

sum +

= quan[i]

* juli;

//計算加權和

}return sum %11;

//返回加權和對11取模

}void

prtans()

}//前邊只遍歷了n-1個資料,因為最後乙個資料的輸出不能出現換行,所以最後乙個單獨處理,處理方法如上

value =

getquan

(s[n-1]

);ch =

getdata

(value);if

(ch != s[n-1]

[17]|| value ==-1

)if(count ==0)

}int

main()

prtans()

;}

PAT乙級1031 查驗身份證

思路 看題知意,按照題目意思模擬一下即可 如下,提交使用g include using namespace std intmain char check 11 int n,count 0,wsum string id cin n for int k 1 k n k else 否則這個id前17有不是...

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...