當前位置:首頁 » 編程語言 » 日語言c語言

日語言c語言

發布時間: 2023-08-17 11:48:17

Ⅰ C語言 輸入一位學生的生日(年 月 日),並輸入當前的日期(年 月 日),輸出該生的實際年齡。

#include<stdio.h>
main()
{
int y0,m0,d0,y1,m1,d1,y,m,d;
while(1)
{
printf("請輸入學生的生日");scanf("%d %d %d",&y0,&m0,&d0);
printf("請輸入當前的日期");scanf("%d %d %d",&y1,&m1,&d1);
y=y1-y0;
m=m1-m0;
d=d1-d0;
//printf("該學生的年齡為%d歲%d月%d天",y,m,d);
if(y>=0)
{
if(m>=0)
{
if(d>=0)printf("1該學生的年齡為%d歲",y);//y>=0,m>=0,d>=0輸出年齡
else
{
m=m-1;//如果d<0,m減1,再判斷m是否大於等於0
if(m>=0)printf("2該學生的年齡為%d歲",y);//y>=0,m>=0,d<0輸出年齡
else
{
y=y-1;//如果m<0,y減1,再判斷y是否大於等於0
if(y>=0)printf("3該學生的年齡為%d歲",y);//y>=0,m<0,d<0輸出年齡
else
{
printf("4輸入有誤");//y<0,m<0,d<0
}
}
}
}
else //那麼在y>=0,而m<0的情況下
{
y=y-1;
if(y>=0)printf("6該學生的年齡為%d歲",y);
else
{
printf("7輸入有誤");
}
}
}
else printf("5輸入有誤");//最先判斷年份,如果y<0,就錯了,因為當前日期不可能小於學生的生日
getchar();
getchar();
}
}

Ⅱ C語言轉換日期的表示形式

這個可以嗎?
#include
void
main()
{
char
num[8];//定義一個字元數組num
int
i;//定義整型變數
printf("請輸入正確的日期!格式為:xxxxxxxx\n");
for(i=0;i<=8;i++)//循環語句,讀入8個字元,依次放到數組num中,作為8個元素
num[i]=getchar();
for(i=0;i<4;i++)//輸出前四個字元(年份)
putchar(num[i]);
putchar('_');
for(;i<6;i++)//輸出(月份)
putchar(num[i]);
putchar('_');
for(;i<8;i++)//輸出(日)
putchar(num[i]);
putchar('\n');//回車
}

Ⅲ C語言程序設計 計算日期

#include<stdio.h>

bool isday(int day,int mouth,int year)
{
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
if((year%400==0)||(year%4==0&&year%100!=0)) a[1]++;
if(day>a[mouth-1]||day<1)
return true;
else
return false;
}

void main()
{
int i,year,mouth,day;
int sum,sign;
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
do
{
sum=0;sign=0;
puts("請輸入年、月、日:");
scanf("%d%d%d",&year,&mouth,&day);
if(((year%400==0)||(year%4==0&&year%100!=0))&&mouth>2)
{
sum=day+1;//閏年,記得加1
}
else sum=day;
for(i=0;i<mouth-1;i++)
sum+=a[i];
if(year<1||mouth<1||mouth>12||isday(day,mouth,year))
{
puts("輸入錯誤,請重新輸入:");
sign=1;
}
}while(sign);
printf("為第%d天\n",sum);
}

Ⅳ C語言編寫日歷

#include <stdio.h>
int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
void print_calendar(int y);
void main()
{
int y;
printf("Calendar system :\n");
printf("Please input a year between 1600 & 2500:");
while(scanf("%d",&y)!=EOF)//輸入年份
{
if (y<1600 || y>2500)
{
printf("Invalid input. Please try again!\n");
printf("Please input a year between 1600 & 2500:");
continue;
}
print_calendar(y);
}
}

void print_calendar(int y) //列印日歷
{
int i,sum,days,k,m;
char monthname[12][20] = {"January","February","March","April","May","June","July","August","September","October","November","December"};
if((0==y%4&&y%100!=0)||0==y%400 ) //閏年判斷
month[2]=29;

for(m=1;m<13;m++)
{
days = 0;
for (i=1;i<m;i++) //計算m月1號是第幾天
days+=month[i];
days++;
sum=y-1+(y-1)/4-(y-1)/100+(y-1)/400+days;
k=sum%7; //k是星期幾,k=0星期日
printf("%s %d\n",monthname[m-1],y);
printf(" S M Tu W Th F S\n");
printf("%*d",3*(k+1)-1,1);//先輸出3*(k+1)-1個空格,在輸出1
k++;
for(i=2;i<=month[m];i++)
{
if(k == 7)
{
printf("\n");
k=0;
}
if (k == 0)
printf("%2d",i);
else
printf("%3d",i);
k++;
}
printf("\n\n");
}
}

Ⅳ C語言中輸入一個日期計算他是今年的第幾天

輸入年月日三個值,先累加該年之前各個月的每月天數,最後累加日期天數即可獲取結果。

一、演算法設計:

1、輸入年月日三個值;

2、為保證程序健壯性,可以對三個值的合法性進行判斷,只對合法數據進行操作;

3、累加之前各月天數;

4、累加當前日值;

5、輸出結果。

二、注意點:

可以使用數組存儲各個月份的天數,用循環累加。需要注意的是閏年的判斷。對於閏年,2月要多加一天。

三、參考代碼:

#include<stdio.h>
intmain()
{
intmdays[12]={31,28,31,30,31,30,31,31,30,31,30,31};//十二個月的天數。
inty,m,d,r=0,i;
scanf("%d%d%d",&y,&m,&d);
if(y%400==0||(y%4==0&&y%100!=0))//閏年。
mdays[1]=29;//設置閏年二月值。
if(y<0||m<=0||m>12||d<=0||d>mdays[m-1])//輸入非法。
{
printf("輸入年月日不合法 ");//提示並退出。
return-1;
}
for(i=0;i<m-1;i++)//累加之前各個月。
r+=mdays[i];
r+=d;//累加日期值。
printf("%d ",r);//輸出結果。
return0;
}
熱點內容
wampphp升級 發布:2025-02-05 18:50:53 瀏覽:918
源碼地帶 發布:2025-02-05 18:46:37 瀏覽:613
我的世界伺服器怎麼騎別人的頭 發布:2025-02-05 18:46:32 瀏覽:89
怎麼卸載ftp賬號 發布:2025-02-05 18:41:52 瀏覽:62
SQL指定的服務並未以 發布:2025-02-05 18:40:09 瀏覽:972
電腦連接不了伺服器什麼意思 發布:2025-02-05 18:34:46 瀏覽:355
2015版dw怎麼配置站點 發布:2025-02-05 18:33:37 瀏覽:429
php數組中重復值 發布:2025-02-05 18:16:59 瀏覽:366
分布式存儲優點 發布:2025-02-05 18:15:29 瀏覽:644
徵婚交友源碼 發布:2025-02-05 17:45:24 瀏覽:918