C语言实现身份证号码校验:判断正确编码数量
```c #include <stdio.h> #include <string.h> int checkIdCard(char idCard[]) { int weights[] = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1}; int sum = 0; for (int i = 0; i < 17; i++) { if (idCard[i] >= '0' && idCard[i] <= '9') { sum += (idCard[i] - '0') * weights[i]; } } char checkCode = idCard[17]; if (checkCode >= '0' && checkCode <= '9') { sum += (checkCode - '0'); } else if (checkCode == 'X' || checkCode == 'x') { sum += 10; } return (sum % 11 == 1); } int main() { int n; scanf("%d", &n); char idCard[19]; int count = 0; for (int i = 0; i < n; i++) { scanf("%s", idCard); if (checkIdCard(idCard)) { count++; } } printf("%d\n", count); return 0; } // 额外需要注意的逻辑点: // 1. 输入的身份证号码长度必须严格为 18 位。 // 2. 对于输入的号码字符,要做好错误输入的处理,比如包含非数字和 'X' 或 'x' 以外的字符。 // 3. 在计算加权和时,要注意数据类型的范围,防止溢出。 ``` ######[AI写代码神器 | 435点数解答 | 2025-05-15 21:59:17]
- 易语言读取文本文件并显示到超级列表框:代码示例与注意要点(DeepSeek | 571点数解答 | 2025-08-23 20:54:40)250
- 易语言:读取并显示特定文本到超级列表框,还能增加新数据的方法与要点(DeepSeek | 1317点数解答 | 2025-08-23 20:58:40)251
- mallshop商城网站:数据库设计与强大业务功能全揭秘(GPT | 257点数解答 | 2024-12-09 14:08:15)295
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)368
- 微信授权第三方登录:实名信息隐私保护揭秘!(百度文心 | 109点数解答 | 2024-03-07 18:06:00)226
- 哈夫曼编码:基于字符频率实现(0,1)编码及Python代码详解(讯飞星火 | 794点数解答 | 2024-06-19 23:42:13)245
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)337
- Python 实现移位与仿射密码:精准加密解密及关键逻辑解析(字节豆包 | 798点数解答 | 2024-12-18 15:55:47)275
- C++ 实现:快速判断正整数是否为“超级整数”(字节豆包 | 239点数解答 | 2025-11-10 18:52:28)107
- C++实现:判断正整数是否为“超级整数”(字节豆包 | 242点数解答 | 2025-11-10 20:27:49)151
- 用Python处理商品销售数据:替换类别、合并类目并输出前5行(百度文心 | 486点数解答 | 2024-08-23 09:14:21)323
- Python 破解:计算序列中满足特定取余条件元素的数量(字节豆包 | 174点数解答 | 2025-05-13 21:29:55)201