c语言判断星期几
㈠ 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个字符(末尾应该还有一个'