當前位置:首頁 » 編程語言 » 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-01-24 22:44:21 瀏覽:462
安卓手機哪裡調屏幕常亮 發布:2025-01-24 22:44:15 瀏覽:545
linux下安裝vmware 發布:2025-01-24 22:44:10 瀏覽:297
蘋果6密碼忘記怎麼辦啊 發布:2025-01-24 22:38:46 瀏覽:832
微博android 發布:2025-01-24 22:38:40 瀏覽:531
安卓自帶的剪輯軟體哪個好用 發布:2025-01-24 22:15:22 瀏覽:391
centosyumphpfpm 發布:2025-01-24 22:14:19 瀏覽:154
反編譯看不懂代碼 發布:2025-01-24 22:04:52 瀏覽:139
zip4j加密 發布:2025-01-24 21:57:57 瀏覽:455
安卓錄屏功能在哪裡找到 發布:2025-01-24 21:55:24 瀏覽:651