【发布时间】:2023-03-31 03:44:02
【问题描述】:
请忽略,无能是最好的!
实际上只是在一些嵌套的 for 循环中弄乱了一些基本的文件 i/o,但输出并不是我想要的,尽管我似乎无法让它工作。
#include <stdio.h>
int main(void) {
FILE *pFile;
pFile = fopen("dates.txt", "w");
int day, month, year;
for(day = 1; day <= 31; day++) {
for(month = 1; month <= 12; month++) {
for(year = 1900; year <= 2050; year++) {
if(day < 10 && month < 10) {
fprintf(pFile, "0%d/0%d/%d\n", day, month, year);
}else {
fprintf(pFile, "%d/%d/%d\n", day, month, year);
}
}
}
}
return 0;
}
非常感谢任何提示!请注意,这不是家庭作业,实际上只是一些实验。
干杯。
【问题讨论】:
-
别忘了免费
pFile。 -
尝试
%02d作为格式规范,它会为您节省中间的if。 -
@Adban:
free()?您可能想到了fclose()。好点子。 -
您将在 2 月、4 月、6 月、9 月和 11 月有太多的日子。最好使用像下面的 Shiplu 这样的解决方案。
-
你说输出不是你想要的。你想要什么?没有这些信息有点难以回答。