获取出生日期(多实例测试),输入某人的18位身份证号,输出其出生日期。

题目描述
输入某人的18位身份证号,输出其出生日期。

输入
多实例测试。首先输入一个整数n,表示测试实例的个数,然后是n行,每行是一个18位身份证号。

输出
对于输入的每个身份证号,输出一行,即其对应的出生日期,输出格式为:yyyy-mm-dd。

样例输入
3
410106199411178657
410104198202095479
410122197911218097
样例输出
1994-11-17
1982-02-09
1979-11-21

# include<stdio.h>
int main()
{
	int a,b,c,d,e,f,g;
	scanf("%d",&a);
	for(b=0;b<a;b++)
	{
		scanf("%*6d%4d%1d%1d%1d%1d%*4d",&c,&d,&e,&f,&g);
		printf("%d-%d%d-%d%d\n",c,d,e,f,g);
	 } 
	 return 0;
}

注意:1、scanf()函数中,可用%md指定读取位数。然而%*md的作用是间隔m个不使用。
2、读取一位的时候应该使用%1d,不能错误的用为%d;

发布了82 篇原创文章 · 获赞 4 · 访问量 6356

猜你喜欢

转载自blog.csdn.net/Du798566/article/details/104452301