只有**沒有講解,作為留念。
#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...