導航:首頁 > 編程語言 > 通過日期求某月的天數C編程

通過日期求某月的天數C編程

發布時間:2024-09-07 15:26:30

① C語言編程 從鍵盤輸入一個年份和月份,輸出該月有多少天(考慮閏年)

  1. 用switch選擇的:
    #include<stdio.h>
    int main()
    {
    int y,m;
    printf("請依次輸入年,月: ");
    scanf("%d,%d",&y,&m); //上機時注意打逗號,也可修改為其他格式
    switch(m)
    {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:printf("這個月有31天 ");break;
    case 2 : if(y%4==0&&y%100!=0||y%400==0) //最基本的判斷閏年的條件
    printf("這個月有29天 ");
    else printf("這個月有28天 ");break;
    case 4:
    case 6:
    case 9 :
    case 11:printf("這個月有30天 ");break;
    }
    return 0;
    }

  2. 用指針型列舉的:
    #include<stdio.h>
    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("請依次輸入年·月: ");
    scanf("%d%d",&p1,&p2);
    if(p1%4==0&&p1%100!=0||p1%400==0)
    a[1]=29;
    if(p2>12)
    printf("您的輸入有誤! ");
    printf("這個月的天數為:%d ",a[p2-1]);
    return 0;
    }#include <stdio.h>
    main()
    {int a,b;
    printf("請輸入年份和月份: ");
    scanf("%d%d",&a,&b);
    if (a%4==0&&a%100!=0)
    if(b==2)
    printf("這個月有29天 ");
    else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
    printf("這個月有31天 ");
    else
    printf("這個月有30天 ");
    else if(b==2)
    printf("這個月有28天 ");
    else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
    printf("這個月有31天 ");
    else
    printf("這個月有30天 ");}

  3. 普通

    #include <stdio.h>
    main(){
    int a,b;
    printf("請輸入年份和月份: ");
    scanf("%d%d",&a,&b);
    if (a%4==0&&a%100!=0)
    if(b==2)
    printf("這個月有29天 ");
    else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
    printf("這個月有31天 ");
    else
    printf("這個月有30天 ");
    else if(b==2)
    printf("這個月有28天 ");
    else if (b==1||b==3||b==5||b==7||b==8||b==10||b==12)
    printf("這個月有31天 ");
    else
    printf("這個月有30天 ");}

(1)通過日期求某月的天數C編程擴展閱讀

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語言網路經驗

② 用c語言switch語句編寫程序,輸入某年某月,求該月的天數

判斷一個日期是這一年中那一天。編譯環境vc++6.0#include<iostream>
using namespace std;
void main()
{
int i;
int sum=0;
int year,month,day;
int rick[12]={31,29,31,30,31,30,31,31,30,31,30,31};
int conmon[12]={31,28,31,30,31,30,31,31,30,31,30,31};
cout<<"請輸入一個日期,格式:2010 10 10"<<endl;
cin>>year>>month>>day;
if((year%4==0&&year%100!=0)||(year%400==0))
{
for(i=0;i<month-1;i++)
sum=sum+rick[i];
}
else
{
for(i=0;i<month-1;i++)
sum=sum+conmon[i];
}
sum=sum+day;
cout<<year<<' '<<month<<' '<<day<<"是這一年中的第"<<sum<<"天"<<endl;

閱讀全文

與通過日期求某月的天數C編程相關的資料

熱點內容
劍靈伺服器地理位置有什麼影響 瀏覽:133
javaweb絕對路徑 瀏覽:499
python通過位元組傳輸 瀏覽:165
android啟動service的方法 瀏覽:234
python股票決策 瀏覽:886
linuxvim復制行 瀏覽:367
文件夾多張圖片按順序命名 瀏覽:802
韓國hcc壓縮機 瀏覽:900
蘋果手機截屏被app發現怎麼辦 瀏覽:555
linux的進程調度原理 瀏覽:628
廣東程序員網站有哪些 瀏覽:481
luac編輯後還需要加密嗎 瀏覽:647
解壓小動畫吃披薩和芬達 瀏覽:565
王者榮耀怎麼互轉安卓 瀏覽:704
php獲取股票信息 瀏覽:150
java文件名和類名不一樣怎麼編譯 瀏覽:622
優盤里文件夾太多可以合並嗎 瀏覽:601
php類資料庫操作資料庫 瀏覽:85
加密貨幣最近發生的事 瀏覽:260
單片機啟動代碼 瀏覽:438