网站建设资讯

NEWS

网站建设资讯

显示函数c语言程序设计,C语言程序示例

C语言年历显示程序设计

#include stdio.h

十载品牌的成都网站建设公司,超过千家企业网站设计经验.价格合理,可准确把握网页设计诉求.提供定制网站建设、商城网站开发成都微信小程序、响应式网站建设等服务,我们设计的作品屡获殊荣,是您值得信赖的专业网站制作公司。

#include stdlib.h

#include math.h

char* month[]={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nev","Dec"};

char* week[]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};

int j_leapyear(int year) //定义函数检测输入年份是否为闰年

{

if((/*year%400==0*/year%4==0year%100!=0)||(year%400==0))

return (1);

// else if(year%4==0year%100!=0)

// return (1);

else return 0;

}

int month_day(int year,int month) //检测该年月份有多少天

{

int mon_day[]={31,28,31,30,31,30,31,31,30,31,30,31};

if(j_leapyear(year)month==2)

return 29;

else return (mon_day[month-1]);

}

int j_week(int year,int month,int day) //检测该天是星期几

{

int d=0,i; //d表示该天在该年份的累计天数

int w;

/* int month_day[]={31,28,31,30,31,30,31,31,30,31,30,31};

if(j_leapyear(year)==1)

month_day[1]=29;

for(i=0;imonth;i++)

d+=month_day[i];

d=d+day;*/

for(i=1;imonth;i++)

d+=month_day(year,i);

d+=day;

w=(year-1)+(int)(year-1)/4-(int)(year-1)/100+(int)(year-1)/400+d;//网上公式

return ((int)w%7);

}

int allyear(int year) //输出全年日历

{

int i,j,b;

printf("\n%d 日历",year);

for(i=1;i=12;i++)

{

printf("\n\n\t%s\n",month[i-1]);

// printf(" 7 1 2 3 4 5 6 \n");

printf(" S M T W T F S \n");

b=j_week(year,i,1);

for(j=1;j=month_day(year,i)+b;j++)

{

if(j=b)

printf(" ");

else if(j-b10)

printf("%2d ",j-b);

else printf("%2d ",j-b);

//else printf("%2d ",j-b);

if(j%7==0)

putchar('\n');

}

putchar('\n');

}

return 0;

}

void month_print(int year,int month) //输入一个年月,输出这个月的日历

{

int i,c,d;

c=month_day(year,month);

printf("\n\n %d年%d月日历\n",year,month);

printf(" S M T W T F S \n");

d=j_week(year,month,1);

for(i=1;i=c+d;i++)

{

if(i=d)

printf(" ");

else printf("%2d ",i-d);

if(i%7==0)

putchar('\n');

}

putchar('\n');

}

int jisuan_day(int year,int month,int day,int x,int y,int z) //输入年月日,输出距x年y月z日有多少天,星期几,以及是否是公历节日

{

int i,a,b,c=0,d=0,days=0,m=0,n=0,t;

a=year=x?year:x;

b=yearx?year:x;

if(ab)

{

for(i=b+1;ia;i++)

c+=j_leapyear(i);

}

else c=0;

if(year!=x)

d=a-b-1;

else d=0;

m=365*d+c;

if(yearx)

{

for(i=month;i=12;i++)

n+=month_day(year,i);

days=m+n+z-day;

}

else if(yearx)

{

for(i=y;i=12;i++)

n+=month_day(x,i);

for(i=1;imonth;i++)

n+=month_day(year,i);

days=m+n+day-z;

}

else

{

for(i=month=y?y:month;i(month=y?month:y);i++)

n+=month_day(x,i);

days=abs(day-z)+n; //输出距离y月z日有多少天

}

printf("这天离%d年%d月%d号有%d天\n",x,y,z,days);

t=j_week(year,month,day);

if(t==0) //输出星期几

printf("这天星期日");

else if(t==1)

printf("这天星期一");

else if(t==2)

printf("这天星期二");

else if(t==3)

printf("这天星期三");

else if(t==4)

printf("这天星期四");

else if(t==5)

printf("这天星期五");

else if(t==6)

printf("这天星期六");

putchar('\n');

if(month==1day==1)

printf("这天是元旦节");

else if(month==2day==14)

printf("这天是情人节");

else if(month==3day==8)

printf("这天是妇女节");

else if(month==3day==12)

printf("这天是植树节");

else if(month==4day==1)

printf("这天是愚人节");

else if(month==4day==4)

printf("这天是清明节");

else if(month==5day==1)

printf("这天是劳动节");

else if(month==6day==1)

printf("这天是儿童节");

else if(month==8day==1)

printf("这天是建军节");

else if(month==9day==10)

printf("这天是教师节");

else if(month==10day==1)

printf("这天是国庆节");

else if(month==12day==25)

printf("这天是圣诞节");

else printf("这天不是特殊节日");

putchar('\n');

return days;

}

void fish_or_net(int year,int month,int day) //判断是打鱼还是晒网

{

int q;

int i,a,b,c=0,d=0,days=0,m=0,n=0;

a=year=1990?year:1990;

b=year1990?year:1990;

if(ab)

{

for(i=b+1;ia;i++)

c+=j_leapyear(i);

}

else c=0;

if(year!=1990)

d=a-b-1;

else d=0;

m=365*d+c;

if(year1990)

{

for(i=month;i=12;i++)

n+=month_day(year,i);

days=m+n+1-day;

}

else if(year1990)

{

for(i=1;i=12;i++)

n+=month_day(1990,i);

for(i=1;imonth;i++)

n+=month_day(year,i);

days=m+n+day-1;

}

else

{

for(i=month=1?1:month;i(month=1?month:1);i++)

n+=month_day(1990,i);

days=abs(day-1)+n; //先确定这天离1990年1月1日有多少天

}

q=days%5+1;

if(q==1||q==2||q==3) //判断打鱼还是晒网

printf("渔人今天打鱼");

else printf("渔人今天晒网");

putchar('\n');

}

/*int main() //这部分内容用来校检

{

int j_leapyear(int year);

int month_day(int year,int month);

int j_week(int year,int month,int day);

int allyear(int year);

void month_print(int year,int month);

int jisuan_day(int year,int month,int day,int x,int y,int z);

void fish_or_net(int year,int month,int day);

int x,y,z,year,month,day;

// allyear(2015);

//month_print(2016,12);

printf("请输入今天的日期(按年,月,日输入,如2016,1,14表示2016年1月14日):");

scanf("%d,%d,%d",x,y,z);

printf("\n请随便输入一个日期,格式同上:");

scanf("%d,%d,%d",year,month,day);

jisuan_day(year,month,day,x,y,z);

// fish_or_net(x,y,z);

return 0;

} // 这部分内容是用来检测上述函数是否出错的

*/

int main()

{

int j_leapyear(int year);

int month_day(int year,int month);

int j_week(int year,int month,int day);

int allyear(int year);

void month_print(int year,int month);

int jisuan_day(int year,int month,int day,int x,int y,int z);

void fish_or_net(int year,int month,int day); //函数声明

int option,year,month,day,x,y,z;

char ny;

system("color 1f");

while (1)

{

printf("\n\n\t 欢迎来到由...编写的程序\n\n");

printf(" 请选择您需要的服务,输入编号回车结束\n");

printf(" 1.输入一个年份,输出该年的日历\n");

printf(" 2.输入年月,输出这个月的日历。\n");

printf(" 3.输入年月日,输出据今天还有多久,星期几,是否是公历节日。\n");

printf(" 4.某人自1990年1月1日开始打鱼,“三天打鱼,两天晒网”,输入一个1990年以后的日期,输出他这一天是打鱼还是晒网。\n");

printf(" 5.退出\n");

scanf("%d",option);

switch(option) //switch分支结构

{

case 1:

while(1) //while循环,后面的1是常数,表示一直到break才结束循环

{

printf("请输入一个年份:");

scanf("%d",year);

allyear(year);

printf("你想继续查询日历么?(y表示继续,n表示结束)");

scanf("%c",ny);

if(ny=='n')

break;

}

break;

case 2:

while (1)

{

printf("输入年月:");

scanf("%d,%d",year,month);

month_print(year,month);

printf("你想继续查询日历么?(y表示继续,n表示结束):");

scanf("%c",ny);

if(ny=='n')

break;

}

break;

case 3:

while (1)

{

printf("输入年月日:");

scanf("%d,%d,%d",year,month,day);

printf("请输入今天的日期:");

scanf("%d,%d,%d",x,y,z);

jisuan_day(year,month,day,x,y,z);

printf("你想继续查询么?(y表示继续,n表示结束):");

scanf("%c",ny);

if(ny=='n')

break;

}

break;

case 4:

while (1)

{

printf("输入1990年1月1日以后的一个日期:");

scanf("%d,%d,%d",year,month,day);

fish_or_net(year,month,day);

printf("你想继续查询渔人是打鱼还是晒网么?(y表示继续,n表示结束):");

scanf("%c",ny);

if(ny=='n')

break;

}

break;

case 5:

while (1)

{

printf("确认么?y表示是的,n表示不是");

scanf("%c",ny);

if(ny=='y')

exit(1); //表示退出程序

else if(ny=='n')

break;

}

break;

default:printf("对不起,暂时没有这个服务");

break;

}

}

return 0;

}

C语言 函数程序设计

#include "stdafx.h"

#include "string.h"

void main(void)

{

char src[100]={0};

char cmd[10]={0};

char cmd1[]="out -2";

char cmd2[]="out +6";

char output[7]={0};

char *p=NULL;

int len=0;

int i;

printf("please input str:");

gets(src);

len=strlen(src);

p=src;

printf("please input cmd:");

gets(cmd);

if(strstr(cmd,cmd1)!=NULL)

{

printf("out -2: %s\n",(p+len-2));

}

else if(strstr(cmd,cmd2)!=0)

{

memcpy(output,src,6);

printf("out +6: %s\n",output);

}

else

{

printf("default: %s\n",len10?(p+len-10):p);

}

}

please input str:12345 abdkdi jikl

please input cmd:out -2

out -2: kl

Press any key to continue

唉,写得有点乱,字符串也是输入的.

如何利用C语言编出显示函数图象?(qijiaogeweiguhuijirenwu)

以前做过,就是用C里面自己的函数把这个函数表达出来就可以了,然后让x在一个范围内递增就可以了。。。

------------------

兄弟,以前做的资料都丢了也忘了,你自己去网上搜索资料或者买个C语言函数介绍的书籍。

祝好运。


文章名称:显示函数c语言程序设计,C语言程序示例
本文URL:http://cdweb.net/article/dsioggp.html