当前位置:首页 » 编程语言 » c语言判断星期几

c语言判断星期几

发布时间: 2022-04-21 08:04:55

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语言计算日期为星期几

#include<stdio.h>
int isRn(int num){
if((num%4==0&&num%400!=0)||num%400==0){
return 1;
}else{
return 0;
}
int monthDay(int year,int month){
if(month==1||month==3||month==5
||month==7||month==8||month==10
||month==12){
return 31;
}else if(month==4||month==6||month==9
||month==11)
{
return 30;
}else if(month==2){
if(isRn(int num)==1){
return 29;
}else{
return 28;
}
}
}
void main(){
int sum=0,year,month,day,i,temp,j;
printf("请输入年份:");
scanf("%d",&year);
while(year<1900){
printf("年份必须从1900年开始!\n\n");
printf("请输入年份:");
scanf("%d",&year);
}
printf("请输入月份:");
scanf("%d",&month);
while(month<1||month>12){
printf("月份必须是1到12之间!\n\n");
printf("请输入月份:");
scanf("%d",&month);
}
printf("请输入日:");
scanf("%d",&day);
while(day>monthDay(year,month)||day<1){
printf("日必须从1开始,并且不能大于该月的天数!\n\n");
printf("请输入日:");
scanf("%d",&day);
}
temp=month;
temp-=1;
for(i=1900;i<=year;i++){
for(j=1;j<=12;j++){
if(i==year&&j==temp){
break;
}
sum+= monthDay(year,j);
}
}
sum+=day;
printf("%d年%d月%d日,是星期",year,month,day)
if(sum%7==0){
printf("日。\n");
}else if(sum%7==1){
printf("一。\n");
}else if(sum%7==2){
printf("二。\n");
}else if(sum%7==3){
printf("三。\n");
}else if(sum%7==4){
printf("四。\n");
}else if(sum%7==5){
printf("五。\n");
}else if(sum%7==2){
printf("六。\n");
}
}

㈢ 怎样用C语言程序计算每月的一号是星期几

1、C语言根据日期判断星期几(使用基姆拉尔森计算公式)
算法如下:
基姆拉尔森计算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
在公式中d表示日期中的日数,m表示月份数,y表示年数。
注意:在公式中有个与其他公式不同的地方:
把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。
以公元元年为参考,公元元年1月1日为星期一。

2、例程:

#include"stdio.h"
voidCaculateWeekDay(inty,intm,intd)
{
if(m==1||m==2){
m+=12;
y--;
}
intiWeek=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;
switch(iWeek)
{
case0:printf("星期一 ");break;
case1:printf("星期二 ");break;
case2:printf("星期三 ");break;
case3:printf("星期四 ");break;
case4:printf("星期五 ");break;
case5:printf("星期六 ");break;
case6:printf("星期日 ");break;
}
}
voidmain()
{
intyear=0,month=0,day=0;
printf("请输入日期: 格式为:1900,1,1 ");
chartemp='1';
while(temp!='0')
{
scanf("%d,%d,%d",&year,&month,&day);
scanf("%c",&temp);
CaculateWeekDay(year,month,day);
printf("输入0退出,其他继续:");
scanf("%c",&temp);
}
}

㈣ 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语言知道日期算星期几

//这定义的是一个二维数组(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>
intmain()
{
charch;
printf("请输入第一个字母:");
scanf("%c",&ch);
if(ch=='m')printf("monday ");
if(ch=='t')
{
getchar();
printf("请输入第二个字母:");
scanf("%c",&ch);
if(ch=='u')printf("tuesday ");
elseprintf("thursday ");
}
if(ch=='w')printf("wednesday ");
if(ch=='f')printf("friday ");
if(ch=='s')
{
getchar();
printf("请输入第二个字母:");
scanf("%c",&ch);
if(ch=='a')printf("saturday ");
elseprintf("sunday ");
}
else
printf("没有相同。 ");
}

㈦ 如何用c语言编一个程序判断黑色星期五

用c语言编一个程序判断黑色星期五的方法如下:

需要设立一个初始点,比方说设定1900年1月1日为初始点,然后依次按7天计算这样就可以同时判断之后的某天是星期几了。然后重叠上那一天是几号就可以用一个if(day==星期五&&day==13号)判断来输出是黑色星期五了,具体的代码可以自己写出来,可以加入当时英国划去了几天的那个事件。

黑色星期五,在西方,星期五和数字13都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”。
输入:年份。
输出:判断该年是否包含黑色星期五,如包含,给出具体日期。

㈧ C语言判断已知某年元旦是星期几判断某月某日是星期几

week=6;
//每年365天,即每年星期数加1;

week += year-2000;
if(year<2000){
for(i=year;i<2000;i--)
{
if(( y%4==0 && y%100!=0) || y%400==0)) week--;
}
}
else
{
for(i=2000;i<year;i++)
{
if(( y%4==0 && y%100!=0) || y%400==0) ) week++;
}
}
for(i=0;i<month;i++)
week += month_day[i];

if(if(( y%4==0 && y%100!=0) || y%400==0) month>=2) week++;
week += day;
week = week%7;//0 =星期日

//以上计算,在2000分界处不完整,自己改进,思路如此,如果想省掉,可手算-32768年的星期,然后只算算加法,但要在中间%7一次,防止数据越界。

㈨ 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>
int j_rn(int y)
{
if(y%4==0&&y%100!=0||y%400==0)
return 1;
else
return 0;
}
main()
{
int y,m,d,s=28,n,num;
printf("\n请输入年月日用空格隔开:");
scanf("%d %d %d",&y,&m,&d);
if(j_rn(y))
s=29;
switch(m)
{
case 1:n=d;break;
case 2:n=31+d;break;
case 3:n=31+s+d;break;
case 4:n=31+s+31+d;break;
case 5:n=31+s+31+30+d;break;
case 6:n=31+s+31+30+31+d;break;
case 7:n=31+s+31+30+31+30+d;break;
case 8:n=31+s+31+30+31+30+31+d;break;
case 9:n=31+s+31+30+31+30+31+31+d;break;
case 10:n=31+s+31+30+31+30+31+31+30+d;break;
case 11:n=31+s+31+30+31+30+31+31+30+31+d;break;
case 12:n=31+s+31+30+31+30+31+31+30+31+30+d;
}
num=(y-1)+(y-1)/4-(y-1)/100+(y-1)/400+n;
printf("那天是星期%d\n",num%7);//星期0代表星期天
//getch();
}

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:335
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:378
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:612
java用什么软件写 发布:2025-05-18 03:56:19 浏览:32
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:107
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:942
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:739
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:802
网卡访问 发布:2025-05-18 03:35:04 浏览:510
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:371