由这样一道题引入本篇要讲解的知识点 。
一、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; }