编写程序,设数组中己经存放若干身份证号。
提示:身份证号一般为字符型
("123123199910110321","123123200010301020", "123123200110110545, "123123200200320910”,“123123202305021032“)(日期错误数据是为了保证系统的纠错能力的测试数据,字符串可直接粘贴复制使用)
1)输入某年某月日期,自动给那天过生日的人显示贺词,如果没有人过生日也请给出提示。日期按 8 位输入。比如输入20221030就显示123123200010301020生日快乐,请问这样的问题用c怎么实现?
#include<stdio.h>
int check(char A[],char B[]){
for (int k = 6; k < 13; k++)
{
if (A[k]!=B[k-6])
{
return 0;
}
}
return 1;
}
int main(){
char *ID[]={"123123199910110321","123123200010301020", "123123200110110545", "123123200200320910","123123202305021032"};
char date[8];
scanf("%s",date);
int flag=1;
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 8; j++)
{
if (check(ID[i],date))
{
flag=0;
printf("%s生日快乐",ID[i]);
break;
}
}
}
if (flag)
{
printf("没有人生日快乐!");
}
return 0;
}