c语言 13 - 5
1、
#include <stdio.h> #include <time.h> char filename[] = "timedata.dat"; void put_dat(void) { FILE *fp; if((fp = fopen(filename, "r")) == NULL) printf("\aThe program is running for the first time.\n"); else { int year, month, day, hour, min, sec; char mood[128]; fscanf(fp, "%d%d%d%d%d%d%s", &year, &month, &day, &hour, &min, &sec,mood); printf("The last time the program ran is: %d-%d-%d-%d-%d-%d.\nThe mood in that time is: %s\n", year, month, day, hour, min, sec, mood); fclose(fp); } } void get_dat(void) { FILE *fp; time_t current = time(NULL); struct tm *timer = localtime(¤t); char mood[128]; printf("Please input the mood in this time: "); scanf("%s", mood); if((fp = fopen(filename,"w")) == NULL) printf("\aFile open failed.\n"); else { fprintf(fp, "%d %d %d %d %d %d %s\n", timer -> tm_year + 1900, timer -> tm_mon + 1, timer -> tm_mday, timer -> tm_hour, timer -> tm_min, timer -> tm_sec, mood); fclose(fp); } } int main(void) { put_dat(); get_dat(); return 0; }
2、
#include <stdio.h> #include <time.h> char filename[] = "timedata.dat"; char mood[128]; void put_dat(void) { FILE *fp; if((fp = fopen(filename, "r")) == NULL) { printf("\aThe program is running for the first time.\n"); printf("Please input the mood in this time: "); scanf("%s", mood); } else { int year, month, day, hour, min, sec; fscanf(fp, "%d%d%d%d%d%d%s", &year, &month, &day, &hour, &min, &sec, mood); printf("The program ran in last time is: %d-%d-%d-%d-%d-%d.\nThe mood at that time is: %s\n", year, month, day, hour, min, sec, mood); printf("please input the mood at this time: "); scanf("%s", mood); fclose(fp); } } void get_dat(void) { FILE *fp; time_t current = time(NULL); //time函数获取日历时间 struct tm *timer = localtime(¤t); //localtime函数获取分解时间 if((fp = fopen(filename, "w")) == NULL) { printf("\aFile open failed.\n"); } else { fprintf(fp, "%d %d %d %d %d %d %s\n", timer -> tm_year + 1900, timer -> tm_mon + 1, timer -> tm_mday, timer -> tm_hour, timer -> tm_min, timer -> tm_sec, mood); fclose(fp); } } int main(void) { put_dat(); get_dat(); return 0; }