由这样一道题引入本篇要讲解的知识点 。
一、C语言中,%d 为最常用的整型输入输出类型;
如:
int a = 0;
scanf("%d",&a);
//输入a
printf("%d",a);
//输出a
二、scanf函数中使用 %md (m为一个常数值)
%md 中 m用于指定输入域宽(输入数据的列数),按此宽度截取所需数据
如开篇中所给题目:
#include <stdio.h>
int main()
{
int year =0;
int month =0;
int date =0;
scanf("%4d%2d%2d",&y,&m,&d);
//%4d 截取输入数据中的前4位整数
//...
return 0;
}
所以,当我们输入 "20130225 " 这样一串数据时, year 截取到2013 —— year = 2013,...
year =2013;
month =2;
date =25;
三、printf函数中的 %0md
printf函数中使用 %0md,输出数值时指定左面不使用的空位置自动填0
如果我们只将 上面赋值得到的结果 简单输出:
#include <stdio.h>
int main()
{
int year =0;
int month =0;
int date =0;
scanf("%4d%2d%2d",&y,&m,&d);
//printf("year=%d\n month=%2d\n date=%2d\n", year, month, date);
//将 %2d 改成 %02d
printf("year=%d\n month=%02d\n date=%02d\n", year, month, date);
return 0;
}