欢迎使用CSDN-markdown编辑器
来源:互联网 发布:飞机晚点软件 编辑:程序博客网 时间:2024/05/21 03:15
c语言编程某年日历的输出。
直接来说今天所遇到的问题:
1.程序输出死循环;
2.上述原因找出后,程序在输入年份是并没有反应,当再次输入任意值时,才可以得到结果。
解决方案:
1.程序中的if( i == 1)写成了if(i = 1),造成了死循环,这个造成4小时困扰真的让我难以忘记 == 为等于的意思了。
2.sacnf(“%d”,&y)在%d后多了个空格,以致程序输入量不对。
代码块
代码块语法遵循标准markdown代码,例如:
#include <stdio.h>main(){ int a,b,c; int y; long d = 1; int year; int month; int i; static int m[12] = {31,0,31,30,31,30,31,31,30,31,30,31}; printf("The year is(after 1990) : "); scanf("%d",&y); for(year = 1990; year < y;year++) { if(0 == year % 4 && 0 != year % 100 || 0 == year % 400) { d += 366; } else { d += 365; } } a = d % 7; c = a; printf(" 一 二 三 四 五 六 日\n"); if(0 == y % 4 && 0 != y % 100 || 0 == y % 400) { m[1] = 29; } else { m[1] = 28; } for(month = 0;month < 12;month++) { for(i = 1;i <= m[month];i++) { if(i == 1) { for(b = 1;b < c;b++) { printf(" "); } if(0 == c % 7) { printf(" %d\n",i); } else { printf(" %d",i); } c = c + 1; } else if( 1 != i) { if(0 == c % 7) { printf(" %d\n",i); } else { printf(" %d",i); } c = c + 1; } c = c % 7; } printf("\n"); } return 0;}
由于后期二位数的出现,所以固定的空距因为多位数出来显得并不是那么完美,至于年份的范围,可以通过调节部分数据以扩大,毕竟自己想出来的,还是挺开心的。新手请见谅~
0 0
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- Android Studio2.3小米真机测试报错
- 快速理解VirtualBox的四种网络连接方式
- android中打开软键盘视图界面内容整体上移的实现
- 教程 | 理解和实现自然语言处理终极指南(附Python代码)
- ubuntu14.04安装QT4.7.4
- 欢迎使用CSDN-markdown编辑器
- 各种距离
- hadoop1.2.1伪集群搭建
- 布局
- Linux上的GetTickCount函数
- <%@ include file="URL" %>
- javascript中this对象的指向问题
- http协议基础知识总结
- texmacs 源码安装