C语言程序设计,初级的~设计算法输入一个四位正整数,将它们倒排,例如输入1234,输出4321

C语言程序设计,初级的~设计算法输入一个四位正整数,将它们倒排,例如输入1234,输出4321,第1张

“希望写的详细些,我就可以直接打上去了,连空格啊,标点啊也写一下”学习不是这样的。。。。

给个思路就行了。用除法求出千位、求余再除法求出百位、再除法+求余求出十位,最后用求余得到个位。然后按照个位十位百位千位一个一个输出即可。

#include<<a href=">

void main() { float x,y,z; char c;

scanf("%f%c%f",&x,&c,&y);

switch ( c ) {

case '+': z=x+y; break;

case '-': z=x-y; break;

case '': z=xy; break;

case '/': z=( y==0 )(0):(x/y); break;

default: z=0; break;

}

printf("%f%c%f=%f\n",x,c,y,z);

}

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。[1]  目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

#include"stdioh"

#include"biosh"

#define LEFT 75

#define RIGHT 77

#define UPPER 72

#define DOWN 80

#define ESC 27

struct Boxss /定义箱子结构体,其中包含坐标属性/

{

int x,y;

};

union keyboard /定义读取键盘码的共用体类型/

{

unsigned int iKeyInfo;

char chKeyBit[2];

};

int fnGetKey(void) /定义读取键盘码的函数/

{

union keyboard uniKey1; /定义读取键盘码的共用体变量/

while(bioskey(1)==0); /检测用户是否按键/

uniKey1iKeyInfo=bioskey(0); /读取按键信息/

return(uniKey1chKeyBit[0]==0uniKey1chKeyBit[1]:uniKey1chKeyBit[0]); /返回ASCII码或扩充码/

}

void main()

{

int iKey,x=11,y=6,tx=11,ty=6; /x,y为人物移动后坐标,tx,ty为人物移动前坐标/

struct Boxss Box[4]; /定义箱子数量/

int chMap[10][10]={ /用二维数组定义地图/

{0,0,0,0,0,0,0,0,0,0}, /0表示墙1表示路2表示目标/

{0,1,0,0,0,0,1,1,1,0},

{0,1,0,2,0,0,1,0,1,0},

{0,1,0,1,0,0,1,0,1,0},

{0,1,1,1,0,0,1,0,1,0},

{0,1,0,0,0,0,1,0,1,0},

{0,1,1,1,1,1,1,0,1,0},

{0,1,0,1,0,0,0,0,2,0},

{0,2,0,1,1,1,1,2,0,0},

{0,0,0,0,0,0,0,0,0,0},

};

int i,j;

Box[0]x=13; /定义箱子的坐标属性/

Box[1]x=11;

Box[2]x=14;

Box[3]x=18;

Box[0]y=8;

Box[1]y=7;

Box[2]y=13;

Box[3]y=7;

while(1) /反复进行求移动的坐标运算/

{

for(i=0;i<10;i++) /输出新地图(刷新地图)/

{

gotoxy(10,5+i);

for(j=0;j<10;j++)

{

if(chMap[i][j]==0)

printf("#");

if(chMap[i][j]==1)

printf(" ");

if(chMap[i][j]==2)

printf("X");

}

}

j=0; /判断是否所有箱子都在目标坐标上/

for(i=0;i<4;i++)

if(chMap[Box[i]y-5][Box[i]x-10]==2)

j++;

if(j==4) /如果所有箱子都就位输出"YOU WIN!"退出/

{

clrscr();

printf("You Win!");

break;

}

for(i=0;i<4;i++) /在起始(或移动后)的坐标输出箱子/

{

gotoxy(Box[i]x,Box[i]y);

printf("0");

}

gotoxy(x,y); /在起始(或移动后)的坐标输出人/

printf("\b");

tx=x; /记录本次移动前的坐标/

ty=y;

iKey=fnGetKey();

if(iKey==LEFT&&chMap[y-5][x-1-10]!=0) /按读取的按键信息改变坐标如果改变的坐标和墙(0)重合则不改变/

x--;

if(iKey==RIGHT&&chMap[y-5][x+1-10]!=0)

x++;

if(iKey==UPPER&&chMap[y-1-5][x-10]!=0)

y--;

if(iKey==DOWN&&chMap[y+1-5][x-10]!=0)

y++; /输入ESC退出并输出"YOU LOST"/

if(iKey==ESC)

{

clrscr();

printf("You Lost");

break;

}

for(i=0;i<4;i++) /如果移动后的人的坐标与箱子坐标重合,则改变箱子坐标向前一格/

if(Box[i]x==x&&Box[i]y==y)

{

Box[i]x+=(x-tx);

Box[i]y+=(y-ty);

if(chMap[Box[i]y-5][Box[i]x-10]==0) /如果移动后的箱子坐标会出现在墙上,则使箱子坐标和人坐标都返回移动前的值/

{

Box[i]x-=(x-tx);

Box[i]y-=(y-ty);

x=tx;

y=ty;

}

break;

}

clrscr();

}

getch();

}

以上就是关于C语言程序设计,初级的~设计算法输入一个四位正整数,将它们倒排,例如输入1234,输出4321全部的内容,包括:C语言程序设计,初级的~设计算法输入一个四位正整数,将它们倒排,例如输入1234,输出4321、怎么用C语言程序设计一个简单计算器、C语言程序设计推箱子算法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9309341.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存