#include <stdioh>
#include <timeh>
int main()
{
time_t rawtime;
struct tm timeinfo;
time ( &rawtime );
timeinfo = localtime ( &rawtime );
int year,month,day,hour,min,sec;
year = 1900+timeinfo->tm_year;
month = 1+timeinfo->tm_mon;
day = timeinfo->tm_mday;
hour = timeinfo->tm_hour;
min = timeinfo->tm_min;
sec = timeinfo->tm_sec;
printf ( "当前时间:%4d-%02d-%02d %02d:%02d:%02d\n\n",year, month,day,hour,min,sec);
printf ( "你需要的格式:%4d%02d%02d%02d%02d%02d\n\n",year, month,day,hour,min,sec);
char hyy[2],lyy[2],MM[2],dd[2],hh[2],mm[2],ss[2];
sprintf(hyy,"%02X",year/100);
sprintf(lyy,"%02X",year%100);
sprintf(MM,"%02X",month);
sprintf(dd,"%02X",day);
sprintf(hh,"%02X",hour);
sprintf(mm,"%02X",min);
sprintf(ss,"%02X",sec);
printf("转化为16进制:%02s%02s%02s%02s%02s%02s%02s\n",hyy,lyy,MM,dd,hh,mm,ss);
//exit(0);
return 0;
}
说明:我用VC60现写的,运行结果截图如下:
用switch选择的:
#include<stdioh>
int main()
{
int y,m;
printf("请依次输入年,月:\n");
scanf("%d,%d",&y,&m); //上机时注意打逗号,也可修改为其他格式
switch(m)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:printf("这个月有31天\n");break;
case 2 : if(y%4==0&&y%100!=0||y%400==0) //最基本的判断闰年的条件
printf("这个月有29天\n");
else printf("这个月有28天\n");break;
case 4:
case 6:
case 9 :
case 11:printf("这个月有30天\n");break;
}
return 0;
}
用指针型列举的:
#include<stdioh>
int a[]={31,28,31,30,31,30,31,31,30,31,30,31},p1,p2,p3,i=1,k=0;
int main()
{
int p1,p2;
printf("请依次输入年·月:\n");
scanf("%d%d",&p1,&p2);
if(p1%4==0&&p1%100!=0||p1%400==0)
a[1]=29;
if(p2>12)
printf("您的输入有误!\n");
printf("这个月的天数为:%d\n",a[p2-1]);
return 0;
}#include <stdioh>
main()
{int a,b;
printf("请输入年份和月份:\n");
scanf("%d%d",&a,&b);
if (a%4==0&&a%100!=0)
if(b==2)
printf("这个月有29天\n");
else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
printf("这个月有31天\n");
else
printf("这个月有30天\n");
else if(b==2)
printf("这个月有28天\n");
else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
printf("这个月有31天\n");
else
printf("这个月有30天\n");}
普通
#include <stdioh>
main(){
int a,b;
printf("请输入年份和月份:\n");
scanf("%d%d",&a,&b);
if (a%4==0&&a%100!=0)
if(b==2)
printf("这个月有29天\n");
else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
printf("这个月有31天\n");
else
printf("这个月有30天\n");
else if(b==2)
printf("这个月有28天\n");
else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
printf("这个月有31天\n");
else
printf("这个月有30天\n");}
扩展资料
switch 语句可以处理多分支选择问题,根据其中break 语句的使用方法,一般分三种情况。
在switch 语句的每个语句段中都使用break 语句,这是switch 语句的主要使用方法,一般形式为:
switch (表达式)
case 常量表达式1: 语句段1; break;
case 常量表达式2: 语句段2; break;
case常量表达式n: 语句段n; break;
case常量表达式n+1:语句段n+ 1; break;
default :
参考资料c语言百度经验
#include<stadioh>
main()
{ int year,year1,month,month1,day,day1,age;
printf("请输入您的生日:");
scanf("%d %d %d",&year,&month,&day);
printf("请输入当前日期:");
scanf("%d %d %d",&year1,&month1,&day1);
if(year1==year)
age=0;
else
{age=year1-year;
if(month1<month||(month1==month&&day1<day))
age=age-1;
}
printf("您的年龄是:%d",age);
}
大概就是这个样子,我没有调试,可能有错误,但应该都是小问题,你自己调试一下,觉得哪儿不妥,可以自己改动。
#include
using namespace std;
class date{
int year, month, day;
public:
date();
date(int y, int n , int d);
int getyear();
int getmonth();
int getday();
void setdate(int y, int m, int d);
void print();
void addoneday();
};
date::date()
{
}
date::date(int y, int m, int d)
{
year = y;
month = m;
day = d;
}
int date::getyear()
{
return year;
}
int date::getmonth()
{
return month;
}
int date::getday()
{
return day;
}
void date::setdate(int y, int m, int d)
{
year = y;
month = m;
day =d;
}
void date::print()
{
cout<< year << "/" << month << "/" << day;
}
void date::addoneday()
{
day = day + 1;
//这里需要判断一下day;
//大小月、二月、润年这些
//如果day超出了当前month的日,day就为1,month就加1
//自己添加这里
}
int main()
{
// 举例给你,你自己写吧, 分太少,只能帮到这里了。
//初始化为构造函数
date date(2015, 4, 21);
cout<< "today is:";
dateprint();
dateaddoneday();
cout<< "tomorrow is:";
dateprint();
//初始化为用setdate();
date date2;
date2setdate(2015, 4, 21);
cout<< "today is:";
date2print();
date2addoneday();
cout<< "tomorrow is:";
date2print();
}
首先判定年份是不是闰年,其次你使用各数组把年份的月存储下来(分闰年和平年),然后用一个循环来叠加和你输入的第二个数做笔记如果小了继续叠加,在叠加的过程中使用一个计数器,那个就是月份,当叠加的数大于那个天数了,再做差计算式那个月的第几天!
你试试下面的程序:
#include
#include
#include
int
main()
{
clock_t
start,
finish;
double
elapsed_time;
start=clock();
//do
sonething
finish=clock();
elapsed_time
=
finish-start;
}
我在vc++
60下运行,可以得到以毫秒为单位的计时
以上就是关于用C语言实现:首先获取系统时钟,然后时钟数据格式为:年月日时分秒(YYYYMMDDHHMMSS)全部的内容,包括:用C语言实现:首先获取系统时钟,然后时钟数据格式为:年月日时分秒(YYYYMMDDHHMMSS)、C语言编程 从键盘输入一个年份和月份,输出该月有多少天(考虑闰年)、c语言编写程序 获取当前日期并计算X天后的年月日。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)