输入身份证号,输出显示,该同学出生于****年**月**日
时间: 2023-11-25 20:49:10 浏览: 60
根据身份证号可以推算出该同学的出生日期。具体方法是:身份证号码中的前6位代表出生年月日,其中前4位为年份,中间2位为月份,最后2位为日期。如果是15位身份证号,则需要在年份前加上19,变成4位数。如果是18位身份证号,则前17位为身份证号本身,最后一位为校验码。以下是Python代码实现:
```python
# 输入15位身份证号
id_card = input("请输入15位身份证号:")
birth_year = "19" + id_card[6:8]
birth_month = id_card[8:10]
birth_day = id_card[10:12]
print("该同学出生于{}年{}月{}日。".format(birth_year, birth_month, birth_day))
# 输入18位身份证号
id_card = input("请输入18位身份证号:")
birth_year = id_card[6:10]
birth_month = id_card[10:12]
birth_day = id_card[12:14]
print("该同学出生于{}年{}月{}日。".format(birth_year, birth_month, birth_day))
```
相关问题
1. 编程实现:用户输入身份证号,输出您的生日是***年***月***日c语言
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char id[19];
printf("请输入您的身份证号:");
scanf("%s", id);
char year[5], month[3], day[3];
strncpy(year, id+6, 4);
year[4] = '\0';
strncpy(month, id+10, 2);
month[2] = '\0';
strncpy(day, id+12, 2);
day[2] = '\0';
printf("您的生日是%s年%s月%s日\n", year, month, day);
return 0;
}
编写程序,用*代替身份证号中的出生日期
A: 以下是Python的示例代码:
```python
id_card = '123456199001011234' # 假设身份证号为此格式
birth_date = id_card[6:14] # 从身份证号中提取出生日期
masked_id = id_card.replace(birth_date, '*'*8) # 使用 * 替换出生日期
print(masked_id) # 输出替换后的身份证号
```
输出结果为:`123456********34`
以上代码中,我们首先从身份证号中提取出生日期部分,然后使用 `replace` 方法将其替换成了8个星号。最后输出替换后的身份证号。