收藏 分销(赏)

C语言源代码.doc

上传人:w****g 文档编号:2384251 上传时间:2024-05-29 格式:DOC 页数:19 大小:105.05KB 下载积分:8 金币
下载 相关 举报
C语言源代码.doc_第1页
第1页 / 共19页
C语言源代码.doc_第2页
第2页 / 共19页


点击查看更多>>
资源描述
剪刀石头布源代码 #include<stdio.h> #include<stdlib.h> main() { int d,x; { printf("请输入:1是剪刀,2是石头,3是布"); scanf("%d",&d); x=rand()%3; if(d==x) printf("双方平局"); else if((d==1&&x==2)||(d==2&&x==3)||(d==3&&x==1)) printf("你赢了"); else printf("电脑赢了"); } } 简单计算器 #include<stdio.h> main() { int a,b,d=0; char c; while(d==0) { printf("请开始计算,请输入需要运算的数字和运算法则,数字 符号 数字:"); scanf("%d%c%d",&a,&c,&b); switch(c) { case'+': printf("%d+%d=%d\n",a,b,a+b); break; case'-': printf("%d-%d=%d\n",a,b,a-b); break; case'*': printf("%d*%d=%d\n",a,b,a*b); break; case'/': if(0==b) printf("除法被除数不能为零!\n") ; else printf("%d/%d=%d\n",a,b,a/b); break; } } } 加油站加油问题 #include<stdio.h> int main() { double a = 3.25, b = 3.00, c= 2.75; double d = 0.05, e = 0.10, m; int x,y,z; printf("请输入您要的加油量:"); scanf("%d",&x); printf("请输入您要的汽油种类,1-a型汽油售价3.25元/千克, 2-b型汽油售价3.00元/千克, 3-c型汽油售价2.75元/千克:"); scanf("%d",&y); printf("请输入您要的服务类型,1-自己加 服务优惠0.05,2-协助加 服务优惠0.10:"); scanf("%d",&z); switch(y) { case 1: y = a;break; case 2: y = b;break; case 3: y = c;break; } if(z == 1) m = (1 - d) * y * x; else if(z == 2) m = (1 - e) * y * x; printf("您需要支付:%f 元,谢谢惠顾,欢迎下次再来",m); return 0; } 猜数字游戏 #include<stdio.h> #include<stdlib.h> int main() { int d=1,e=0; int a,b,t; printf ("请输入1-10以内的整数,\n "); while(d==1) { printf("玩家的选择: "); scanf("%d",&a); do { if((a>=0)&&(a<11))break; else {printf("错误"); scanf("%d",&a);} } while(e==0); b=rand()%10+1; printf("npc:%d",b); t=a-b; if(t==0) printf("\nRight!\n"); else if(t<0) printf("\n Wrong !太小了\ n"); else if(t>0) printf("\n Wrong !太大了\ n"); } return 0; } 万年历 #include<stdio.h> #include<stdlib.h> void setmonth(int r); void main(void) { int year,month,day,a,b,i,j,d,x,mon,k; do { printf("----------------------------------------------------\n"); printf(" 查全年,输入 1!\n"); printf(" 查月份,输入 2!\n"); printf(" 查日期,输入 3!\n"); printf(" 继续?输入 4!\n"); printf(" 退出,输入 5!\n"); printf("-----------------------------------------------------\n"); printf("请输入:"); scanf("%d",&x); if(x==1) { month=12; printf("输入年份:"); scanf("%d",&year); } if(x==2) { printf("输入年份:"); scanf("%d",&year); printf("输入月份:"); scanf("%d",&month); } if(x==3) { printf("输入年份:"); scanf("%d",&year); printf("输入月份:"); scanf("%d",&mon); printf("输入日期:"); scanf("%d",&day); month=mon-1; } if(x==5) exit(100); a=((year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400)%7; for(i=1,d=0;i<=month;i++) { switch(i) { case 1: case 3: case 5: case 7: case 8: case 10: case 12:d=31;break; case 2:if(!(year%4)&&(year%100)||!(year%400)) d=29; else d=28; break; case 4: case 6: case 9: case 11:d=30; } b=a%7; a+=d; if(x==1) { printf("========================================================\n"); setmonth(i); printf("************************************************\n"); printf("========================================================\n"); printf(" 星期一 星期二 星期三 星期四 星期五 星期六 星期天\n"); for(j=1;j<=b;j++) printf("%8c",' '); for(j=1;j<=d;j++) { printf("%8d",j); if((j+b)%7==0) printf("\n"); } } if(x==1) printf("\n"); } if(x==2) { printf("========================================================\n"); setmonth(i-1); printf("************************************************\n"); printf("========================================================\n"); printf(" 星期一 星期二 星期三 星期四 星期五 星期六 星期天\n"); for(j=1;j<=b;j++) printf("%8c",' '); for(j=1;j<=d;j++) { printf("%8d",j); if((j+b)%7==0) printf("\n"); } printf("\n"); } if(x==3) { a+=day; a%=7; switch(a) { case 0:printf("%d.%d.%d 星期一!",year,mon,day);break; case 1:printf("%d.%d.%d 星期二!",year,mon,day);break; case 2:printf("%d.%d.%d 星期三!",year,mon,day);break; case 3:printf("%d.%d.%d 星期四!",year,mon,day);break; case 4:printf("%d.%d.%d 星期五!",year,mon,day);break; case 5:printf("%d.%d.%d 星期六!",year,mon,day);break; default:printf("%d.%d.%d 星期天!",year,mon,day); } printf("\n"); } printf("是否继续?输入4继续,输入5退出:"); scanf("%d",&k); } while(k==4); if(k==5) exit(100); } void setmonth(int r) { switch(r) { case 1:printf("%4c 一月份",' ');break; case 2:printf("%4c 二月份",' ');break; case 3:printf("%4c 三月份",' ');break; case 4:printf("%4c 四月份",' ');break; case 5:printf("%4c 五月份",' ');break; case 6:printf("%4c 六月份",' ');break; case 7:printf("%4c 七月份",' ');break; case 8:printf("%4c 八月份",' ');break; case 9:printf("%4c 九月份",' ');break; case 10:printf("%4c 十月份",' ');break; case 11:printf("%2c 十一月份",' ');break; default:printf("%2c 十二月份",' '); } } ATM机 # include<stdio.h> # include<stdlib.h> # define Password 123456 main () { int a,i,b,q,c; float m; m=3000.00; for (i=0;i<=2;i++) {printf("请输入密码\n"); scanf("%d",&a); if(a==Password) {printf("密码正确,欢迎使用\n"); break;} else printf("密码错误,请重新输入\n");} {if (a!=Password) printf("您的操作错误超过3次,请取回卡\n"); else {system("cls"); printf("1.取款\n2.存款\n3.查询余额\n4.退出\n"); }} while(b!=4) { scanf("%d",&b); switch(b) { case 1: system("cls");printf("请输入你要取款的金额\n"); scanf(" %d",&q); printf("取款成功,请选择你要进行的操作\n");m=m-q;break; case 2: system("cls");printf("请输入你要存入的金额\n");scanf(" %d",&c);m=m+c; ;printf("存款成功,请选择你要进行的操作\n");break; case 3: system("cls");printf("您的余额为%.2f\n",m);break; case 4: system("cls");printf("谢谢使用");break; } } return 0;} 学生成绩 #include <stdio.h> #include <stdlib.h> float s[3][4]; int r=0,c=0; void pjf(void) { int i,j,cour = 0; for(j=0;j<4;j++) { for(i=0;i<3;i++) cour+=s[i][j]; printf("第%d课的平均分是%d\n",(j+1),cour/3); cour = 0; } } void dkzg(void) { int i,j,high=0; for(j=0;j<4;j++) { for(i=0;i<3;i++) { if(s[i][j]>high) { high=s[i][j]; r=i+1; c=j+1; } } printf("最高分是%d,学生是%d,课程是%d\n",high,r,c); r=0; c = 0; high = 0; } } int main() { int i,j; float score=0; for(i=0;i<3;i++) { printf("enter NO.%d score\n",i+1); for(j=0;j<4;j++) { scanf("%f",&s[i][j]); score += s[i][j]; } printf("第%d个学生的平均分是%f\n",(i+1),score/4); score = 0; } pjf(); dkzg(); return 0; } 选票问题 #include <stdio.h> void main() { int i=1; char j; int num[4]={0,0,0,0}; printf("3位候选人,分别为A,B,C D为无效票,开始投票\n"); while(i<=10) { printf("请输入第%d个的选票",i); scanf("%c",&j); switch(j) { case 'A':num[0]++;i++;break; case 'B':num[1]++;i++;break; case 'C':num[2]++;i++;break; case 'D':num[3]++;i++;break; } getchar(); } printf("A获得%d张选票\n",num[0]); printf("B获得%d张选票\n",num[1]); printf("C获得%d张选票\n",num[2]); printf("无效票为%d张 \n",num[3]); } 打字母游戏 #include <graphics.h> #include <conio.h> #include <time.h> #include <stdlib.h> #include <dos.h> #include <stdio.h> // 欢迎界面 void welcome() { // 输出屏幕提示 cleardevice(); //清除屏幕内容,用当前背景色清空屏幕,并将当前点移至 (0, 0)。 setcolor(RED); //设置当前绘图前景色为红色,字体颜色为红色 setfont(64, 0, "黑体");//设置当前字体样式为黑体,大小为64 outtextxy(160, 50, "打字母游戏");//在指定位置输出字符串。 setcolor(GREEN);//设置当前绘图前景色为绿色,即文字颜色为绿色 setfont(16, 0, "宋体");//设置当前字体样式为宋体 outtextxy(200, 200, "本游戏是一个简单传统的游戏");//在指定位置输出字符串。 outtextxy(200, 240, "就是随机出现些字母然后游戏");//在指定位置输出字符串。 outtextxy(200, 280, "者敲键盘把它消除用以锻炼游");//在指定位置输出字符串。 outtextxy(200, 320, "者的反应能力,来试试吧");//在指定位置输出字符串。 // 实现闪烁的"按任意键继续" int c=255; while(!kbhit()) //没有按键时循环继续 { setcolor(RGB(c, 0, 0));//设置当前绘图前景色为红色色 outtextxy(280, 400, "按任意键继续");//在指定位置输出字符串 c -= 8; //变量c的值自减去8 if (c < 0) c = 255; Sleep(20);//调用Sleep()函数延时20毫秒 } getch();//等待用户从键盘按任意一个键,退出循环 cleardevice();//用当前背景色清空屏幕,并将当前点移至 (0, 0)。 } // 难度界面 int welcome2() { int i;// 输出屏幕提示 cleardevice(); //清除屏幕内容,用当前背景色清空屏幕,并将当前点移至 (0, 0)。 setcolor(YELLOW); //设置当前绘图前景色为黄色,字体颜色为黄色 setfont(64, 0, "黑体");//设置当前字体样式为黑体,大小为64 outtextxy(160, 50, "难度选择");//在指定位置输出字符串。 setcolor(GREEN);//设置当前绘图前景色为绿色,即文字颜色为绿色 setfont(16, 0, "宋体");//设置当前字体样式为宋体 outtextxy(100, 160, "初级");//在指定位置输出字符串。 outtextxy(100, 200, "中级");//在指定位置输出字符串。 outtextxy(100, 240, "高级");//在指定位置输出字符串。 outtextxy(100, 280, "终极");//在指定位置输出字符串。 outtextxy(100, 380, "初级选择1,中级选择2,高级选择3,终极4,退出5"); scanf("%d",&i); return i; } //过关界面 void ok() { cleardevice(); setcolor(YELLOW); setfont(48, 0, "黑体"); outtextxy(104, 180, "恭喜过关,再接再厉"); getch(); } //未过界面 void gameover() { cleardevice(); setcolor(YELLOW); setfont(48, 0, "黑体"); outtextxy(104, 180, " GAME OVER"); getch(); } // 退出界面 void goodbye() { cleardevice();//用当前背景色清空屏幕,并将当前点移至 (0, 0)。 setcolor(BLUE);//设置当前绘图前景色为蓝色 setfont(48, 0, "黑体");//设置输出字符串的字体为黑体,大小为48 outtextxy(40, 180, "其实游戏可以适当玩玩的!"); getch();//等待用户从键盘按任意一个键 } // 主函数 void main() { int a; initgraph(640, 480); // 初始化屏幕为 640x480 welcome(); // 显示欢迎界面 bb:a=welcome2(); cleardevice(); //清除屏幕内容,用当前背景色清空屏幕,并将当前点移至 (0, 0)。 srand(time(NULL)); // 设置随机种子 setfont(20, 0, "黑体"); // 设置字母的字体和大小 setfillstyle(BLACK); // 设置清除字母的填充区域颜色 char target,target1; // 目标字母 char key; // 用户的按键 int x, y,b=51,c=48; // 字母的位置 switch(a) { case 1: { while(true) { target = 65 + rand() % 26; // 产生任意大写字母 x = rand() % 550; // 产生任意下落位置 for (y=0; y<460; y++) { setcolor(GREEN); // 设置字母的颜色 outtextxy(x, y, target); setcolor(RED); outtextxy(550, 80, "生\t命\t值"); outtextxy(600, 120, b); setcolor(GREEN); outtextxy(560, 450, "分值"); outtextxy(600, 450, c); if(kbhit()) { key = getch(); // 获取用户按键 if((key != target) && (key != target + 32)) b=b-1; if((key == target) || (key == target + 32)) { // 按键正确,"击落"字母(画黑色方块擦除) bar(x, y, x + 20, y + 20); c=c+1; break; // 跳出循环,进行下一个字母 } else if (key == 27) { goto EXIT; // 如果按 ESC,退出游戏主循环 } } if(y==459) b=b-1; if(b==48) goto over; if(c==57) goto win; Sleep(10); bar(x, y, x + 20, y + 20); } } }break; case 2: { while(true) { target = 65 + rand() % 26; // 产生任意大写字母 x = rand() % 550; // 产生任意下落位置 for (y=0; y<460; y=y+2) { setcolor(GREEN); // 设置字母的颜色 outtextxy(x, y, target); outtextxy(x+160,y,target1);// 显示字母 setcolor(RED); // 显示字母 outtextxy(550, 80, "生命值"); outtextxy(600, 120, b); setcolor(GREEN); outtextxy(560, 450, "分值"); outtextxy(600, 450, c); if(kbhit()) { key = getch(); // 获取用户按键 if((key != target) && (key != target + 32)) b=b-1; if((key == target) || (key == target + 32)) { bar(x, y, x + 20, y + 20); c=c+1; break; } else if (key == 27) goto EXIT; // 如果按 ESC,退出游戏主循环 } if(y==459) b=b-1; if(b==48) goto over; if(c==57) goto win; Sleep(1); bar(x, y, x + 20, y + 20); } } }break; case 3: { while(true) { target = 65 + rand() % 26; // 产生任意大写字母 x = rand() % 550; // 产生任意下落位置 for (y=0; y<460; y=y+1) { setcolor(GREEN); // 设置字母的颜色 outtextxy(x, y, target); setcolor(RED); // 显示字母 outtextxy(550, 80, "生\t命\t值"); outtextxy(600, 120, b); setcolor(GREEN); outtextxy(560, 450, "分值"); outtextxy(600, 450, c); if(kbhit()) { key = getch(); // 获取用户按键 if((key != target) && (key != target + 32)) b=b-1; if((key == target) || (key == target + 32)) { // 按键正确,"击落"字母(画黑色方块擦除) bar(x, y, x + 20, y + 20); c=c+1; break; // 跳出循环,进行下一个字母 } else if (key == 27) goto EXIT; // 如果按 ESC,退出游戏主循环 } if(y==459) b=b-1; if(b==48) goto over; if(c==57) goto win; int i; for(i=0;i<1000000;i++); bar(x, y, x + 20, y + 20); } } }break; case 4: { while(true) { target = 65 + rand() % 26; // 产生任意大写字母 x = rand() % 550; // 产生任意下落位置 for (y=0; y<460; y++) { setcolor(GREEN); // 设置字母的颜色 outtextxy(x, y, target); outtextxy(x+160,y,target1);// 显示字母 setcolor(RED); // 显示字母 outtextxy(550, 80, "生命值"); outtextxy(600, 120, b); setcolor(GREEN); outtextxy(560, 450, "分值"); outtextxy(600, 450, c); if(kbhit()) { key = getch(); // 获取用户按键 if((key != target) && (key != target + 32)) b=b-1; if((key == target) || (key == target + 32)) { bar(x, y, x + 20, y + 20); c=c+1; break; } else if (key == 27) goto EXIT; // 如果按 ESC,退出游戏主循环 } if(y==459) b=b-1; if(b==48) goto over; if(c==57) goto win; int i; for(i=0;i<1000000;i=i+2); bar(x, y, x + 16, y + 16); } } }break; case 5: goto EXIT;break; } over: gameover(); goto bb; win: ok(); goto bb; EXIT: goodbye(); closegraph(); // 关闭图形界面 }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服