当前位置:首页 » 编程语言 » c语言假如知道今天星期几
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言假如知道今天星期几

发布时间: 2022-04-22 02:20:36

c语言程序,输入年月日算出当天星期几

似乎是有时间函数,看看说明
其实弄个语言,主要的是使用中间的函数、工具、各种包,
语言本身比较简单,相对的,而那是不够的,
那些函数,也不都是语言本身写的,

⑵ 怎样用c语言程序对所输入的日期知道它的星期几数

1. 接受日期输入
2. 使用mktime和成tm结构
3. 使用localtime再转换成tm
4. 取出tm中的tm_wday

#include <time.h>
#include <stdio.h>

int main(int argc, char* argv[])
{
int year, mon, day;
time_t t;
struct tm tmval;
static char* weekdays[7]={"Sunday", "Monday", "Tuesday", "Wednsday", "Thursday", "Friday", "Saturday"};

puts("Please input a date(yyyy-mm-dd):");
scanf("%d-%d-%d", &year, &mon, &day);
printf("year=%d, mon=%d, day=%d\n", year, mon, day);
time(&t);
tmval = *localtime(&t); /* for tm_isdst field */
tmval.tm_year = year-1900;
tmval.tm_mon = mon-1;
tmval.tm_mday = day;
tmval.tm_hour = 0;
tmval.tm_min =0;
tmval.tm_sec = 1;
t = mktime(&tmval);
if( t == -1){
puts("Invalid time value!");
return -1;
}
tmval = *localtime(&t);
printf("%d-%d-%d is %s\n", tmval.tm_year + 1900, tmval.tm_mon+1, tmval.tm_mday, weekdays[tmval.tm_wday]);
return 0;
}

⑶ c语言知道日期算星期几

//这定义的是一个二维数组(7行10列)
//每一个字符串,比如:"星期天"就是一行,共七个字符。
//汉字占两个字符,所以"星期天"就是7个字符(末尾应该还有一个''结束符)。
//这里的10确实是随便定义的数,但是要保证大于等于7
charstr[7][10]={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
intyear,month,day;

//这是定义一个子函数,IsLeapYear也是随便取的,
//但是要符合C语言的命名规范,并且最好有实际意义
intIsLeapYear()
{
if((year%4==0&&year%100!=0)||(year%400==0))
return1;
else
return0;
}

//这和上面一样,定义子函数,名字是随便取的,
//下划线也是符合c语言命名规范的,所以可用
//intm是一个参数,用来保存主函数传递过来的值
intmonth_day(intm)
{
//这是数组初始化的一种格式,由于有初始值列表,
//系统会自动根据初始化数据确定数组大小
//比如这里相当于intmon_day[12]
intmon_day[]={31,28,31,30,31,30,31,31,30,31,30,31};

这些都是基础,还是看看书吧

⑷ C语言计算今天是星期几 如下图………求大神

#include<stdio.h>
intdysforcompeleteyears(intstartyear,intendyear){
intsum=0;
for(inti=startyear;i<endyear;i++)
if(i%400==0||i%4==0&&i%100!=0)
sum+=366;
else
sum+=365;
returnsum;
}
intdaysforcurrentyear(intyear,intmonth,intday){
intss[13]={31,28,31,30,31,30,31,31,30,31,30,31};
for(inti=0;i<month-1;i++)
day+=ss[i];
if((year%400==0||(year%4==0&&year%100!=0))&&month>2)
day++;
returnday;
}
intmain(){
intyear,month,day;
scanf("%d-%d-%d",&year,&month,&day);
intsum=0;
sum+=dysforcompeleteyears(1900,year);
sum+=daysforcurrentyear(year,month,day);
sum%=7;
if(sum==0)
printf("星期日 ");
else
printf("星期%d ",sum);
return0;

}

⑸ C语言中知道今天星期几,再判断某日星期几的方法

不用知道今天是星期几.
就能知道某日是星期几

#include <time.h>
#include <stdio.h>

int main(void)
{
struct tm date,*ptm;
time_t t;

memset(&date, 0x0, sizeof(struct tm));

//2009-4-21
date.tm_year = 2009 -1900;
date.tm_mon = 4 - 1;
date.tm_mday = 21;

t = mktime(&date);
ptm = localtime(&t);

printf("Week: [0-6] [Sunday:0]: %d\n", ptm->tm_wday);

return 0;
}

⑹ C语言 星期几

#include<stdio.h>

int main()

{

int n,m;

char a[8][20]={"www","星期一","星期二","星期三","星期四","星期五","星期六","星期日",};

scanf("%d%d",&n,&m);

for(int i=1;i<=m;i++)//从星期n开始过m天;也就是循环m次;

{//n在[1,7]之间不停的循环;

if(n!=7)//不等于星期日,星期数加一;

n++;

if(n==7)//直到星期数等于星期日

{

n=1;//将星期数又重置为星期一;

}

}

for(int i=0;i<=7;i++)

{

if(n==i)

printf("%s",a[i]);

}

return 0;

}

希望能帮到你,望采纳

⑺ C语言程序,输入年月日算出当天星期几

先做一个函数,计算1900年1月1日到该天的天数,然后用膜除求出星期几并输出。

具体代码如下:

#include<stdio.h>
#include<stdlib.h>

intDay(inty,intm,intd);

intmain(intargc,char*argv[]){
inti;//循环变量
intyear,month,day;//读取用户输入的年月日
intdays;//储存从1900-1-1到该天的天数
intweek=0;//储存求余后的星期
//字符串组合输出星期
charb[]={"星期"};
charc[7][4]={"日","一","二","三","四","五","六"};

loop:printf("请输入年月日:(空格分隔) ");
scanf("%d%d%d",&year,&month,&day);
days=Day(year,month,day);
//增强程序的健壮性
if(days==-1)
{
printf("输入格式有误,");
fflush(stdin);//防止用户输入字母等其他非数字字符
gotoloop;
}
else
{
week=days%7;//用求余计算星期几
printf("%d年%d月%d日是%s%s ",year,month,day,b,c[week]);
}
system("pause");
return0;
}

//函数功能:输入年月日,输出1900-1-1到该天的天数,-1位输入不合法
intDay(inty,intm,intd)
{
inti;
intr=0;//储存1900到该天的闰年个数
inta[]={31,28,31,30,31,30,31,31,30,31,30};//m给每出月的天数

if(y>=1900&&m>0&&m<13&&d>0&&d<32)
{
for(i=1900;i<=y;i++)//计算闰年的个数
{
if(i%400==0||i%100!=0&&i%4==0)
r++;
}
for(i=0;i<m-1;i++)//统计当年1月1日到当月的天数
{
d+=a[i];
}
if((y%400==0||y%100!=0&&y%4==0)&&m<3)//如果当年是闰年但不到二月就不能算进去
r--;
return365*(y-1900)+r+d;
}
else
return-1;
}

⑻ c语言 判断某天星期几

#include
"stdio.h"
#include
"conio.h"
main()
{
int
day,month,year,sum,leap;
printf("\nplease
input
year,month,day\n");
scanf("%d,%d,%d",&year,&month,&day);
switch(month)
/*先计算某月以前月份的总天数*/
{
case
1:sum=0;break;
case
2:sum=31;break;
case
3:sum=59;break;
case
4:sum=90;break;
case
5:sum=120;break;
case
6:sum=151;break;
case
7:sum=181;break;
case
8:sum=212;break;
case
9:sum=243;break;
case
10:sum=273;break;
case
11:sum=304;break;
case
12:sum=334;break;
default:printf("data
error");break;
}
sum=sum+day;
/*再加上某天的天数*/
if(year%400==0||(year%4==0&&year%100!=0))
/*判断是不是闰年*/
leap=1;
else
leap=0;
if(leap==1&&month>2)
/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
printf("It
is
the
%dth
day.",sum);
getch();
}

⑼ C语言输入今天星期几

#include<stdio.h>
intmain(void)
{
enumweekday{sun,mon,tue,wed,thu,fri,sat};
intn;
printf("输入星期数(0-6):");
scanf("%d",&n);
switch(n)
{
casesun:printf("今天是星期天. ");break;
casemon:printf("今天是星期一. ");break;
casetue:printf("今天是星期二. ");break;
casewed:printf("今天是星期三. ");break;
casethu:printf("今天是星期四. ");break;
casefri:printf("今天是星期五. ");break;
casesat:printf("今天是星期六. ");break;
default:
break;
}
return0;
}

⑽ 用c语言输入日期输出星期几

#include<stdio.h>

intmain(intargc,charconst*argv[])
{
intdata;
scanf("%d",&data);
printf("星期%d ",(data+1)%7+1);
return0;
}