C语言程序.docx
- 文档编号:11671851
- 上传时间:2023-03-30
- 格式:DOCX
- 页数:18
- 大小:23.27KB
C语言程序.docx
《C语言程序.docx》由会员分享,可在线阅读,更多相关《C语言程序.docx(18页珍藏版)》请在冰豆网上搜索。
C语言程序
一、万年历查询
#include
intmain()
{
intleap(intyear);
intYear(intx);
intyear,a,j,c=0,k,h,p,sum,l,i,b,day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31},x;
printf("Theyearis:
");
scanf("%d",&year);
if(year>=2000)
{
for(j=2000;j { a=Year(j); c=c+a; } for(l=1;l<=12;l++) { i=1;b=0; for(i=1,x=1;i { b=b+day_tab[i]; ++i; } sum=c+b; h=(sum-1)%7; printf("Calendar%d--%d\n",year,x); printf("-----------------------------------------------------\n"); printf("SuMoTuWeThFrSa\n"); printf("-----------------------------------------------------\n"); if(h==-1) { for(k=1;k<=42;k++) printf(""); if(x==2&&leap(year)) ++day_tab[x]; for(p=1;p<=day_tab[x];p++) { printf("%7d",p); if((sum-1+p)%7==0) printf("\n"); } } if(h! =0&&h! =-1) { for(k=1;k<=7*h;k++) printf(""); if(x==2&&leap(year)) ++day_tab[x]; for(p=1;p<=day_tab[x];p++) { printf("%7d",p); if((sum-1+p)%7==0) printf("\n"); } } if(h==0) { if(x==2&&leap(year)) ++day_tab[x]; for(p=1;p<=day_tab[x];p++) { printf("%7d",p); if((sum-1+p)%7==0) printf("\n"); } } printf("\n-----------------------------------------------------\n"); printf("\n"); } } else { for(j=1999;j>=year;j--) { a=Year(j); c=c+a; } for(l=1;l<=12;l++) { i=0;b=0; for(i=1,x=1;i { b=b+day_tab[i]; ++i; } sum=c-b; h=(sum+1)%7; printf("Calendar%d--%d\n",year,x); printf("-----------------------------------------------------\n"); printf("SuMoTuWeThFrSa\n"); printf("-----------------------------------------------------\n"); if(h! =0) { for(k=1;k<=7*(7-h);k++) printf(""); if(x==2&&leap(year)) ++day_tab[x]; for(p=1;p<=day_tab[x];p++) { printf("%7d",p); if((sum+1-p)%7==0) printf("\n"); } } if(h==0) { if(x==2&&leap(year)) ++day_tab[x]; for(p=1;p<=day_tab[x];p++) { printf("%7d",p); if((sum+1+p)%7==0) printf("\n"); } } printf("\n-----------------------------------------------------\n"); printf("\n"); } } return0; } intleap(intyear) { intleap; leap=year%4==0&&year%100! =0||year%400==0; return(leap); } intYear(intx) { intn=365; if(leap(x)) ++n; return(n); } 二、做题 #include #include #include intmain() { charp,s,t; p='+';s='-';t='*'; intb,i,c,d=0,n,a[2],j,k; printf("Pleaseselectthenumberofthesubject: "); scanf("%d",&n); for(j=0;j { printf("\nThe%dsubject\n\n",j+1); printf("Pleaseinput123(1=+,2=-,3=*): "); scanf("%d",&k); srand((int)time(0)); for(i=0;i<2;i++) { a[i]=rand()%999; printf("The%dnumberis%d\n",i+1,a[i]); } if(k==1) { b=a[0]+a[1]; printf("%d%c%d=",a[0],'+',a[1]); scanf("%d",&c); } if(k==2) { b=a[0]-a[1]; printf("%d%c%d=",a[0],'-',a[1]); scanf("%d",&c); } if(k==3) { b=a[0]*a[1]; printf("%d%c%d=",a[0],'*',a[1]); scanf("%d",&c); } if(b==c) d=d+1; else printf("\nYourresultiswrong! Thecorrectresultis: %d\n",b); } printf("\nYouhaveworkedout%dsubject(s)\n",d); return0; } 三、字符串的处理 #include intmain() { chara[80],b[80],c[80],d[80],e[80],f[80],g[80]; inti,k=1,j=1,p=0,m=1,h=0,u=0; intstrc(chara[],charb[]); printf("Pleaseinputyoursentence: \n"); gets(a); b[0]=''; for(i=0;a[i]! ='\0';i++) { if(a[i]! ='') { b[j]=a[i]; j=j+1; } else if((a[i-1]>='a'&&a[i-1]<='z')||(a[i-1]>='A'&&a[i-1]<='Z')) { b[j]=a[i]; j=j+1; } } if(b[j]=='') { b[j]='\0'; j=j+1; } b[j]='\0'; for(i=1;i printf("%c",b[i]); printf("\n"); printf("Pleaseinputthewordtobegatherstatistics: "); gets(c); for(;b[k-1]! ='\0';) { for(j=0;b[k]! =''&&b[k]! ='\0';k++,j++) d[j]=b[k]; d[j]='\0'; if(strc(d,c)==1) p=p+1; k=k+1; } printf("Inthesentencehave%d%s\n",p,c); printf("Pleaseinputthewordtobefound: "); gets(e); printf("Pleaseinputthewordtoreplacethewordhavebeenfound: "); gets(f); printf("Thenewsentenceis: "); for(;b[m-1]! ='\0';) { for(h=0;b[m]! =''&&b[m]! ='\0';m++,h++) g[h]=b[m]; g[h]='\0'; if(strc(g,e)==1) printf("%s%c",f,''); else printf("%s%c",g,''); m=m+1; } printf("\n"); return0; } intstrc(chara[],charb[]) { inti,j,k,s; for(i=0;a[i]! ='\0';) i=i+1; for(j=0;b[j]! ='\0';) j=j+1; if(i==j) { for(k=0;k { if(a[k]==b[k]) s=1; elsebreak; } if(s==1&&a[k]=='\0') return1; else return0; } else return0; } 四、成绩查询 #include #include #include #defineMAX2000 typedefstructstudent { intID; charName[8]; intGrade[4]; }STUDENT; voidMainMenu(); intToFindID(STUDENTstu[],intfindID,intMax); intToFindName(STUDENTstu[],charfindname[],intMax); voidInformation(STUDENTstu[],intMax); intInput(STUDENTstu[],intcn); voidQuery(STUDENTstu[],intMax); voidEdition(STUDENTstu[],intMax); voidDelete(STUDENTstu[],intMax); intmain() { charselect; STUDENTstu[MAX]; intcn=0; select=0; while(select! ='0') { MainMenu(); select=getche(); getch(); switch(select) { case'0': printf("您选择的是退出! \n"); break; case'1': printf("您选择的是信息录入! \n"); cn=Input(stu,cn); break; case'2': printf("您选择的是信息修改! \n"); Edition(stu,cn); break; case'3': printf("您选择的是信息查询! \n"); Query(stu,cn); break; case'4': printf("您选择的是信息删除! \n"); Delete(stu,cn); break; default: printf("\n选择错误! 请重新选择! \n"); } } return(0); } voidMainMenu() { printf("********欢迎进入学生信息管理系统*******\n"); printf("\t1-信息录入\t2-信息修改\n"); printf("\t3-信息查询\t4-信息删除\n"); printf("\t0-退出\n"); printf("***************************************\n"); printf("请选择(0-4): "); } intToFindID(STUDENTstu[],intfindID,intMax) { inti; for(i=0;i { if(stu[i].ID==findID)break; } if(i elsereturn-1; } intToFindName(STUDENTstu[],charfindname[],intMax) { inti; for(i=0;i { if(strcmp(stu[i].Name,findname)==0) break; } if(i elsereturn-1; } voidInformation(STUDENTstu[],intMax) { inti; printf("\n序号\t学号\t姓名\t计算机成绩\t数学成绩\t英语成绩\t物理成绩\n"); for(i=0;i { printf("%d\t%d\t%s",i+1,stu[i].ID,stu[i].Name); printf("\t%d\t\t%d\t\t%d\t\t%d\n",stu[i].Grade[0],stu[i].Grade[1],stu[i].Grade[2],stu[i].Grade[3]); } printf("\n"); } intInput(STUDENTstu[],intcn) { intnumber,i; printf("\n请输入此次录入的学生人数: "); scanf("%d",&number); if(number>MAX) { printf("您输入的人数太多,超过了%d人! \n",MAX); return(0); } for(i=cn;i { printf("请输入第%d个学生的学号: ",i+1); scanf("%d",&stu[i].ID); printf("\t\t\t姓名: \t"); scanf("%s",stu[i].Name); printf("\t\t\t计算机成绩: \t"); scanf("%d",&stu[i].Grade[0]); printf("\t\t\t数学成绩: \t"); scanf("%d",&stu[i].Grade[1]); printf("\t\t\t英语成绩: \t"); scanf("%d",&stu[i].Grade[2]); printf("\t\t\t物理成绩: \t"); scanf("%d",&stu[i].Grade[3]); } printf("\n您输入的信息是: \n"); Information(stu,number+cn); return(number+cn); } voidQuery(STUDENTstu[],intMax) { charselect; inti; intfindID; charfindname[8]; printf("************选择查询方式***********\n"); printf("\t1-按学号查询\t2-按姓名查询\n"); printf("***********************************\n"); printf("请选择(1-2): "); select=getche(); getch(); switch(select) { case'1': printf("\n按学号查询请输入学生学号: "); scanf("%d",&findID); if((i=ToFindID(stu,findID,Max))! =-1) { printf("\n查找结果如下: \n"); printf("\n学号\t姓名\t计算机成绩\t数学成绩\t英语成绩\t物理成绩\n"); printf("%d\t%s\t",stu[i].ID,stu[i].Name); printf("%d\t\t%d\t\t%d\t\t%d\n",stu[i].Grade[0],stu[i].Grade[1],stu[i].Grade[2],stu[i].Grade[3]); } else printf("您输入的学号不存在! \n"); break; case'2': printf("\n按姓名查询请输入学生姓名: "); scanf("%s",&findname); if((i=ToFindName(stu,findname,Max))! =-1) { printf("\n查找结果如下: \n"); printf("\n学号\t姓名\t计算机成绩\t数学成绩\t英语成绩\t物理成绩\n"); printf("%d\t%s\t",stu[i].ID,stu[i].Name); printf("%d\t\t%d\t\t%d\t\t%d\n",stu[i].Grade[0],stu[i].Grade[1],stu[i].Grade[2],stu[i].Grade[3]); } else printf("您输入的姓名不存在! \n"); break; default: printf("选择错误! \n"); } } voidEdition(STUDENTstu[],intMax) { inti; intfindID; printf("\n请输入学生的学号: "); scanf("%d",&findID); if((i=ToFindID(stu,findID,Max))! =-1) { printf("原信息: 学号: %d\t姓名: %s\n",stu[i].ID,stu[i].Name); printf("计算机成绩: %d\t数学成绩: %d\t英语成绩: %d\t物理成绩: %d\n",stu[i].Grade[0],stu[i].Grade[1],stu[i].Grade[2],stu[i].Grade[3]); printf("请输入新的信息: \n"); printf("学号: \t"); scanf("%d",&stu[i].ID); printf("姓名: \t"); scanf("%s",stu[i].Name); printf("计算机成绩: \t"); scanf("%d",&stu[i].Grade[0]); printf("数学成绩: \t"); scanf("%d",&stu[i].Grade[1]); printf("英语成绩: \t"); scanf("%d",&stu[i].Grade[2]); printf("物理成绩: \t"); scanf("%d",&stu[i].Grade[3]); } elseprintf("您输入的学号不存在! \n"); } voidDelete(STUDENTstu[],intMax) { inti,j; intfindID; printf("\n请输入学生的学号: "); scanf("%d",&findID); if((i=ToFindID(stu,findID,Max))! =-1) { for(j=i;j { strcpy(stu[j].Name,stu[j+1].Name); stu[j].ID=stu[j+1].ID; stu[j].Grade[0]=stu[j+1].Grade[0]; stu[j].Grade[1]=stu[j+1].Grade[1]; stu[j].Grade[2]=stu[j+1].Grade[2]; stu[j].Grade[3]=stu[j+1].Grade[3]; } Max=Max-1; printf("现在的信息为: \n"); Information(stu,Max); } } 五、螺旋方阵 (1) #include voidmain() { inti,j,r,l,b,d,pl,N; printf("InputHeight: "); scanf("%d",&N); for(i=1;i<=N;i++) { for(j=1;j<=N;j++) { r=i; d=0; pl=j-r; if(r>N-j+1) { r=N-j+1; d=1; pl=i-r; } if(r>N-i+1) { r=N-i+1; d=2;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 程序