C语言,从身份证中获得出生年月日

输入身份证号码,输出出生年、月、日及年月日的和,要求这4项输出各占6个输出位,年输出要求左对齐,其余为右对齐,月、日为个位数的需要补满2位

#include <stdio.h>
#include <string>

int main()
{
char id[18] = "";
printf("input your identify card:\n");
fgets(id, 18, stdin);
char year[4] = "";
char month[2] = "";
char day[2] = "";
memcpy(year, id + 6, 4);
memcpy(month, id + 10, 2);
memcpy(day, id + 12, 2);
printf("%d      %02d    %02d  %d\n", 
atoi(year), atoi(month), atoi(day), atoi(year) + atoi(month) + atoi(day));
return 0;
}

温馨提示:答案为网友推荐,仅供参考
相似回答