ImageVerifierCode 换一换
格式:DOCX , 页数:48 ,大小:159.46KB ,
资源ID:20681437      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20681437.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言小游戏Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言小游戏Word文件下载.docx

1、 / 电脑出拳 int result; / 比赛结果 / 为了避免玩一次游戏就退出程序,可以将代码放在循环中 while (1) printf(这是一个猜拳的小游戏,请输入你要出的拳头:n);A:剪刀nB:石头nC:布nD:不玩了n scanf(%c%*c,&gamer); switch (gamer) case 65 | 97: / A | a gamer=4; break; case 66 | 98: / B | b gamer=7; case 67 | 99: / C | c gamer=10; case 68 | 100: / D | d return 0; default:你的选择为

2、 %c 选择错误,退出.n,gamer); getchar(); system(cls / 清屏 srand(unsigned)time(NULL); / 随机数种子 computer=rand()%3; / 产生随机数并取余,得到电脑出拳 result=(int)gamer+computer; / gamer 为 char 类型,数学运算时要强制转换类型电脑出了 switch (computer) case 0:剪刀nbreak; /4 1 case 1:石头n /7 2 case 2:布n /10 3你出了 switch (gamer) case 4: case 7: case 10: i

3、f (result=6|result=7|result=11) printf(你赢了! else if (result=5|result=9|result=10) printf(电脑赢了! else printf(平手pausenul& / 暂停并清屏代码分析1) 首先,我们需要定义3个变量来储存玩家出的拳头(gamer)、电脑出的拳头(computer)和最后的结果(result),然后给出文字提示,让玩家出拳。接下来接收玩家输入:scanf(注意:由于每次输入以回车结束,缓冲区中除了玩家输入的字母,还有回车符。回车符要跳过,以免影响下次输入。Scanf() 函数的格式控制字符串个数可以多于

4、参数个数,scanf(的作用是从缓冲区多输出一个字符(回车符),却不赋给任何变量。玩家输入结束,使用 switch 语句判断输入内容,65(A)、97(a)、66(B)、98(b)、67(C)、99(c)、68(D)、100(d)为相应字符的ASCII码。system( 语句的作用是清屏。System() 函数用来执行 dos 命令,这里相当于在 dos 里输入 cls 命令。2) 玩家出拳结束,电脑开始出拳。电脑通过产生随机数来出拳:srand(unsigned)time(NULL); /为了避免多次运行结果相同,故在前面加入上(需要time.h)computer=rand()%3; /获取

5、02的随机数最后通过玩家和电脑出拳的和来判断输赢:result=(int)gamer+computer;/ .if (result=6|result=7|result=11) printf(else if (result=5|result=9|result=10) printf(else printf(这是一个很巧妙的算法,玩家和电脑出拳不同,result 的值就不同,且不会重复,见下表:电脑 - 玩家石头(4)剪刀(7)布(10)石头(0)10剪刀(1)11布(2)9123) 每次猜拳结束,暂停并清屏,进入下一次猜拳: /暂停运行和清屏C语言输出九九乘法表(5种解法)九九乘法表共9行9列,重

6、点考察for循环的掌握情况。下面给出了输出完整乘法表、右上、右下、左上、左下乘法表的代码。【代码一】输出完整的三角形:int main() int i,j; / i, j控制行或列 for(i=1;i=9;i+) for(j=1;jj+) / %2d 控制宽度为两个字符,且右对齐;如果改为 %-2d 则为左对齐 / t为tab缩进%d*%d=%2dt, i, j, i*j);运行结果:1*1= 1 1*2= 2 1*3= 3 1*4= 4 1*5= 5 1*6= 6 1*7= 7 1*8= 8 1*9= 92*1= 2 2*2= 4 2*3= 6 2*4= 8 2*5=10 2*6=12 2*

7、7=14 2*8=16 2*9=183*1= 3 3*2= 6 3*3= 9 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=274*1= 4 4*2= 8 4*3=12 4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=365*1= 5 5*2=10 5*3=15 5*4=20 5*5=25 5*6=30 5*7=35 5*8=40 5*9=456*1= 6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 6*7=42 6*8=48 6*9=547*1= 7 7*2=14 7*3=21 7*4=28 7*5=35

8、 7*6=42 7*7=49 7*8=56 7*9=638*1= 8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 8*9=729*1= 9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81【代码二】输出右上三角形和左上三角形:i+)j+) if(ji) /打印八个空格,去掉空格就是左上三角形 else%d*%d=%2d ,i,j,i*j); 2*2= 4 2*3= 6 2*4= 8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18 3*3= 9 3*4=12

9、3*5=15 3*6=18 3*7=21 3*8=24 3*9=27 4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=36 5*5=25 5*6=30 5*7=35 5*8=40 5*9=45 6*6=36 6*7=42 6*8=48 6*9=54 7*7=49 7*8=56 7*9=63 8*8=64 8*9=72 9*9=81去掉八个空格后的运行结果:2*2= 4 2*3= 6 2*4= 8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=183*3= 9 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=274*4

10、=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=365*5=25 5*6=30 5*7=35 5*8=40 5*9=456*6=36 6*7=42 6*8=48 6*9=547*7=49 7*8=56 7*9=638*8=64 8*9=729*9=81【代码三】输出右下和左下三角形:int main() int i,j,n; / 将下面的for循环注释掉,就输出左下三角形 for(n=1; n char cmd20=shutdown -s -t ; char t5=0 int c;title C语言关机程序 /设置cmd窗口标题mode con cols=48 line

11、s=25 /窗口宽度高度 color f0 /可以写成 red 调出颜色组date /TTIME /T- C语言关机程序 -n1.实现10分钟内的定时关闭计算机n2.立即关闭计算机n3.注销计算机n0.退出系统n-n%dc); switch(c) 您想在多少秒后自动关闭计算机?(0600)n%s,t); system(strcat(cmd,t);shutdown -p case 3:shutdown -lError!pause这个程序虽然实用价值不大,但是可以让我们了解 system() 函数。在Windows下,system() 函数可以执行 dos 命令;在 Unix/Linux 中,可以

12、执行Shell。请在Windows下运行上面的程序。程序中对dos界面的设置和关机功能都是通过dos命令实现的。你肯定听过内存溢出吧?通俗地理解就是内存不够。在运行某些比较吃内存的程序的时候,他们所需要的内存超出了你的电脑能承受的大小,系统会提示内存不足,有时候程序会自动退出。请用C语言写一个简单的内存溢出的例子。 while(1) /死循环 malloc(1); /分配一个字节长度的内存不要害怕,编译试试,打开任务管理器,可以看到你的内存占用直飚上去,再等等,程序会出错。这时候windows的内存管理机制发现了问题,把这个程序给终结了,防止系统奔溃(其他的系统也有相应的措施)。C语言动态数组

13、的实现:数组长度随数组元素改变,不会溢出,不会浪费资源我们知道,C语言中的数组大小是固定的,定义的时候必须要给一个常量值,不能是变量。这带来了很大的不便,如果数组过小,不能容下所有数组,如果过大,浪费资源。请实现一个简单的动态数组,能够随时改变大小,不会溢出,也不会浪费内存空间。下面的代码实现了简单的动态数组: /从控制台获取初始数组大小 int N; int *a; int i;Input array length:%dnN); /分配空间 a=(int *)calloc(N,sizeof(int); /填充数据 for(i=0;N; ai=i+1;%-5d,ai); if(i+1)%10=

14、0) /释放内存 free(a); a=NULL;201 2 3 4 5 6 7 8 9 1011 12 13 14 15 16 17 18 19 20一道题目,玩转C语言指针数组和指向指针的指针请先看下面的代码: char *lines5 = COSC1283/1284,ProgrammingTechniquesisgreat fun ; char *str1 = lines1; char *str2 = *(lines + 3); char c1 = *(*(lines + 4) + 6); char c2 = (*lines + 5)5; char c3 = *lines0 + 2;st

15、r1 = %sn, str1);str2 = %sn, str2); c1 = %cn, c1); c2 = %cn, c2); c3 = %cn, c3); return EXIT_SUCCESS;str1 = Programmingstr2 = is c1 = f c2 = 2 c3 = E看下面的分析之前,请先了解指针数组和指向指针的指针的基本概念,如果你不了解,先看下面的文章: 指针数组: 指向指针的指针:为了更加直观,把上面的数组改成下面的形式: char *string0 = char *string1 = char *string2 = char *string3 = char

16、*string4 = char *lines5; lines0 = string0; lines1 = string1; lines2 = string2; lines3 = string3; lines4 = string4;这样,或许会清晰很多,char *lines5; 定义了一个指针数组,数组的每一个元素都是指向char类型的指针。最后5行,为数组的每一个元素赋值,都是直接赋给指针。而lines,是一个指向指针的指针,它的类型为 char *,所以 *lines 是一个指向字符的指针,*lines是一个具体的字符。这一点很重要,一定要明白。指针是可以进行运算的,lines 为lines5数组的首地址,即第0个元素的地址;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1