c语言好玩的代码源代码(c语言有哪些好玩的代码)

http://www.itjxue.com  2023-03-17 03:47  来源:未知  点击次数: 

c语言浪漫代码

#include stdio.h

int main()

{

int i, j, k, l, m;

char c = '*'; //ASCII码里面 3 就是一个字符小爱心

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

printf("\n"); //开头空出5行

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

{ //前3行中间有空隙分开来写

for (j = 1; j = 32 - 2 * i; j++)

printf(" "); //左边的空格,每下一行左边的空格比上一行少2个 //8*n-2*i

for (k = 1; k = 4 * i - 2; k++)

printf("%c", c); //输出左半部分字符小爱心

for (l = 1; l = 17 - 4 * i; l++)

printf(" "); //中间的空格,每下一行的空格比上一行少4个

for (m = 1; m = 4 * i - 2; m++)

printf("%c", c); //输出右半部分字符小爱心

printf("\n"); //每一行输出完毕换行

}

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

{ //下3行中间没有空格

for (j = 1; j = 22 + 1; j++)

printf(" "); //左边的空格 //8*(n-1)+1

for (k = 1; k = 31; k++)

printf("%c", c); //输出字符小爱心

printf("\n"); //每一行输出完毕换行

}

for (i = 7; i = 1; i--)

{ //下7行

for (j = 1; j = 38 - 2 * i; j++)

printf(" "); //左边的空格,每下一行左边的空格比上一行少2个//8*(n+1)-2*i

for (k = 1; k = 4 * i + 1; k++)

printf("%c", c); //每下一行的字符小爱心比上一行少4个(这个循环是i--)

printf("\n"); //每一行输出完毕换行

}

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

printf(" "); //最后一行左边的空格

printf("%c", c); //最后一个字符小爱心

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

printf("\n"); //最后空出5行

return 0;

}

C语言扫雷游戏源代码

"扫雷"小游戏C代码

#includestdio.h

#includemath.h

#includetime.h

#includestdlib.h

main( )

{char a[102][102],b[102][102],c[102][102],w;

int i,j; ?/*循环变量*/

int x,y,z[999]; ?/*雷的位置*/

int t,s; ?/*标记*/

int m,n,lei; ?/*计数*/

int u,v; ?/*输入*/

int hang,lie,ge,mo; ?/*自定义变量*/

srand((int)time(NULL)); ?/*启动随机数发生器*/

leb1:? /*选择模式*/

printf("\n? ?请选择模式:\n ??1.标准 ?2.自定义\n");

scanf("%d",mo);

if(mo==2) ?/*若选择自定义模式,要输入三个参数*/

{do

{t=0; printf("请输入\n行数 列数 雷的个数\n");

scanf("%d%d%d",hang,lie,ge);

if(hang2){printf("行数太少\n"); t=1;}

if(hang100){printf("行数太多\n");t=1;}

if(lie2){printf("列数太少\n");t=1;}

if(lie100){printf("列数太多\n");t=1;}

if(ge1){printf("至少要有一个雷\n");t=1;}

if(ge=(hang*lie)){printf("雷太多了\n");t=1;}

}while(t==1);

}

else{hang=10,lie=10,ge=10;}? /*否则就是选择了标准模式(默认参数)*/

for(i=1;i=ge;i=i+1)? /*确定雷的位置*/

{do

{t=0; z[i]=rand( )%(hang*lie);

for(j=1;ji;j=j+1){if(z[i]==z[j]) t=1;}

}while(t==1);

}

for(i=0;i=hang+1;i=i+1)? /*初始化a,b,c*/

{for(j=0;j=lie+1;j=j+1) {a[i][j]='1'; b[i][j]='1'; c[i][j]='0';} }

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

{for(j=1;j=lie;j=j+1) {a[i][j]='+';} }

for(i=1;i=ge;i=i+1) ?/*把雷放入c*/

{x=z[i]/lie+1; y=z[i]%lie+1; c[x][y]='#';}

for(i=1;i=hang;i=i+1)? /*计算b中数字*/

{for(j=1;j=lie;j=j+1)

{m=48;

if(c[i-1][j-1]=='#')m=m+1; if(c[i][j-1]=='#')m=m+1;

if(c[i-1][j]=='#')m=m+1; ?if(c[i+1][j+1]=='#')m=m+1;

if(c[i][j+1]=='#')m=m+1; ?if(c[i+1][j]=='#')m=m+1;

if(c[i+1][j-1]=='#')m=m+1; if(c[i-1][j+1]=='#')m=m+1;

b[i][j]=m;

}

}

for(i=1;i=ge;i=i+1) ?/*把雷放入b中*/

{x=z[i]/lie+1; y=z[i]%lie+1; b[x][y]='#';}

lei=ge; ?/*以下是游戏设计*/

do

{leb2:? /*输出*/

system("cls");printf("\n\n\n\n");

printf(" ???");

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

{w=(i-1)/10+48; printf("%c",w);

w=(i-1)%10+48; printf("%c ?",w);

}

printf("\n ??|");

for(i=1;i=lie;i=i+1){printf("---|");}

printf("\n");

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

{w=(i-1)/10+48; printf("%c",w);

w=(i-1)%10+48; printf("%c |",w);

for(j=1;j=lie;j=j+1)

{if(a[i][j]=='0')printf("? ?|");

else printf(" %c |",a[i][j]);

}

if(i==2)printf(" 剩余雷个数");

if(i==3)printf(" %d",lei);

printf("\n? ?|");

for(j=1;j=lie;j=j+1){printf("---|");}

printf("\n");

}

scanf("%d%c%d",u,w,v); ?/*输入*/

u=u+1,v=v+1;

if(w!='#'a[u][v]=='@')

goto leb2;

if(w=='#')

{if(a[u][v]=='+'){a[u][v]='@'; lei=lei-1;}

else if(a[u][v]=='@'){a[u][v]='?'; lei=lei+1;}

else if(a[u][v]=='?'){a[u][v]='+';}

goto leb2;

}

a[u][v]=b[u][v];

leb3: ?/*打开0区*/

t=0;

if(a[u][v]=='0')

{for(i=1;i=hang;i=i+1)

{for(j=1;j=lie;j=j+1)

{s=0;

if(a[i-1][j-1]=='0')s=1; if(a[i-1][j+1]=='0')s=1;

if(a[i-1][j]=='0')s=1; ?if(a[i+1][j-1]=='0')s=1;

if(a[i+1][j+1]=='0')s=1; if(a[i+1][j]=='0')s=1;

if(a[i][j-1]=='0')s=1; ?if(a[i][j+1]=='0')s=1;

if(s==1)a[i][j]=b[i][j];

}

}

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

{for(j=lie;j=1;j=j-1)

{s=0;

if(a[i-1][j-1]=='0')s=1; if(a[i-1][j+1]=='0')s=1;

if(a[i-1][j]=='0')s=1; ?if(a[i+1][j-1]=='0')s=1;

if(a[i+1][j+1]=='0')s=1; if(a[i+1][j]=='0')s=1;

if(a[i][j-1]=='0')s=1;? ?if(a[i][j+1]=='0')s=1;

if(s==1)a[i][j]=b[i][j];

}

}

for(i=hang;i=1;i=i-1)

{for(j=1;j=lie;j=j+1)

{s=0;

if(a[i-1][j-1]=='0')s=1; if(a[i-1][j+1]=='0')s=1;

if(a[i-1][j]=='0')s=1; ?if(a[i+1][j-1]=='0')s=1;

if(a[i+1][j+1]=='0')s=1; if(a[i+1][j]=='0')s=1;

if(a[i][j-1]=='0')s=1; ?if(a[i][j+1]=='0')s=1;

if(s==1)a[i][j]=b[i][j];

}

}

for(i=hang;i=1;i=i-1)

{for(j=lie;j=1;j=j-1)

{s=0;

if(a[i-1][j-1]=='0')s=1; if(a[i-1][j+1]=='0')s=1;

if(a[i-1][j]=='0')s=1; ?if(a[i+1][j-1]=='0')s=1;

if(a[i+1][j+1]=='0')s=1;if(a[i+1][j]=='0')s=1;

if(a[i][j-1]=='0')s=1;? if(a[i][j+1]=='0')s=1;

if(s==1)a[i][j]=b[i][j];

}

}

for(i=1;i=hang;i=i+1) ?/*检测0区*/

{for(j=1;j=lie;j=j+1)

{if(a[i][j]=='0')

{if(a[i-1][j-1]=='+'||a[i-1][j-1]=='@'||a[i-1][j-1]=='?')t=1;

if(a[i-1][j+1]=='+'||a[i-1][j+1]=='@'||a[i-1][j+1]=='?')t=1;

if(a[i+1][j-1]=='+'||a[i+1][j-1]=='@'||a[i+1][j-1]=='?')t=1;

if(a[i+1][j+1]=='+'||a[i+1][j+1]=='@'||a[i+1][j+1]=='?')t=1;

if(a[i+1][j]=='+'||a[i+1][j]=='@'||a[i+1][j]=='?')t=1;

if(a[i][j+1]=='+'||a[i][j+1]=='@'||a[i][j+1]=='?')t=1;

if(a[i][j-1]=='+'||a[i][j-1]=='@'||a[i][j-1]=='?')t=1;

if(a[i-1][j]=='+'||a[i-1][j]=='@'||a[i-1][j]=='?')t=1;

}

}

}

if(t==1)goto leb3;

}

n=0; ?/*检查结束*/

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

{for(j=1;j=lie;j=j+1)

{if(a[i][j]!='+'a[i][j]!='@'a[i][j]!='?')n=n+1;}

}

}

while(a[u][v]!='#'n!=(hang*lie-ge));

for(i=1;i=ge;i=i+1) ?/*游戏结束*/

{x=z[i]/lie+1; y=z[i]%lie+1; a[x][y]='#'; }

printf(" ???");

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

{w=(i-1)/10+48; printf("%c",w);

w=(i-1)%10+48; printf("%c ?",w);

}

printf("\n ??|");

for(i=1;i=lie;i=i+1){printf("---|");}

printf("\n");

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

{w=(i-1)/10+48; printf("%c",w);

w=(i-1)%10+48; printf("%c |",w);

for(j=1;j=lie;j=j+1)

{if(a[i][j]=='0')printf(" |");

else ?printf(" %c |",a[i][j]);

}

if(i==2)printf(" 剩余雷个数");

if(i==3)printf(" %d",lei); printf("\n? ?|");

for(j=1;j=lie;j=j+1) {printf("---|");}

printf("\n");

}

if(n==(hang*lie-ge)) printf("你成功了!\n");

else printf("??? 游戏结束!\n");

printf("??? 重玩请输入1\n");

t=0;

scanf("%d",t);

if(t==1)goto leb1;

}

/*注:在DEV c++上运行通过。行号和列号都从0开始,比如要确定第0行第9列不是“雷”,就在0和9中间加入一个字母,可以输入【0a9】三个字符再按回车键。3行7列不是雷,则输入【3a7】回车;第8行第5列是雷,就输入【8#5】回车,9行0列是雷则输入【9#0】并回车*/

C语言简易文字冒险游戏源代码

记忆游戏

#includestdio.h

#includetime.h

#includestdlib.h

#includewindows.h

#define?N?10

int?main(??)

{int?i,k,n,a[N],b[N],f=0;

srand(time(NULL));

printf("??按1开始\n??按0退出:_");

scanf("%d",n);

system("cls");

while(n!=0)

{for(k=0;kN;k++)a[k]?=?rand(?)%N;

printf("\n\t\t[请您牢记看到颜色的顺序]\n\n");

for(k=0;kN;k++)

{switch(a[k])

{case?0:system("color?90");printf("??0:淡蓝色\n");break;??//淡蓝色

case?1:system("color?f0");printf("??1:白色\n");break;??//白色

case?2:system("color?c0");printf("??2:淡红色\n");break;??//淡红色

case?3:?system("color?d0");printf("??3:淡紫色\n");break;??//淡紫色

case?4:?system("color?80");printf("??4:灰色\n");?break;??//灰色

case?5:?system("color?e0");printf("??5:黄色\n");break;??//黄色

case?6:?system("color?10");printf("??6:蓝色\n");?break;??//蓝色

case?7:?system("color?20");printf("??7:绿色\n");break;??//绿色

case?8:?system("color?30");printf("??8:浅绿色\n");break;??//浅绿色

case?9:?system("color?40");printf("??9:红色\n");break;??//红色

}

Sleep(1500);

system("color?f");??//单个控制?文字颜色

Sleep(100);

}

system("cls");

printf("?0:淡蓝色,1:白色,2:淡红色,3:淡紫色,4:灰色,5:黄色,6:蓝色7:绿色,8:浅绿色,9:红色\n");

printf("\n\t请输入颜色的顺序:");

for(k=0;kN;k++)scanf("%d",b[k]);

for(k=0;kN;k++)if(a[k]?==?b[k])?f++;

if(f==0)?printf("??你的记忆弱爆了0\n");

else?if(f==1)?printf("??你的记忆有点弱1\n");

else?if(f5)?printf("??你的记忆一般5\n");

else?printf("??你的记忆力很强!\n");

Sleep(2000);

system("cls");

printf("\t\t按0退出\n\t\t按任意键继续游戏:\n");

scanf("%d",n);

system("cls");

}

return?0;

}

注:DEVc++运行通过,每输入一个数字要加入一个空格。

(责任编辑:IT教学网)

更多
上一篇:没有了

推荐新手入门文章