求如何编写一个念数字程序(c语言)

求如何编写一个念数字程序(c语言),第1张

#include <stdioh>

void re(int a)

{

char b[]={"shi","yi","er","san","si","wu","liu","qi","ba","jiu"};

if (a==0)

printf("ling");

else if (a<10)

printf("%s",b[a]);

else if (a==10)

printf("%s",b[0]);

else if (a<20)

printf("%s %s",b[0],b[a%10]);

else if (!(a%10))

printf("%s %s",b[a/10],b[0]);

else

printf("%s %s %s",b[a/10],b[0],b[a%10]);

putchar('\n');

}

int main(int argc, char argv[])

{

int a;

scanf("%d",&a);

if (a<100&&a>=0) re(a);

else printf("CUO WU\n");

system("pause");

return 0;

}

数字流星雨代码:

//流星雨cpp:Defines the entry point for the console application

//

///////////////////////////////////////////////////

//程序名称:数字流星雨

//最后修改:2006-10-15

///////////////////////////////////////////////////

#include&lt;windowsh&gt;

#include&lt;timeh&gt;

#include&lt;stdlibh&gt;

#include"graphicsh"

#include&lt;conioh&gt;

#include&lt;mathh&gt;

/宏定义/

#define PI 31415926//圆周率

#define WIDTH 200//屏幕宽度,流星出生区域

#define HEIGHT 150//屏幕高度,流星出生区域

#define V 20//流星速度,单次移动的像素数

#define LENGTH 20//流星字符

#define DELAY 30//延时

#define NUM 45//流星个数

/定义流星结构体/

struct meteor

{

int x0;

int y0;

int yh;

char str[LENGTH];

}me[NUM]={0};

/函数声明/

char AsciiRand();

void Move(charp);

void InitMeteor(struct meteorme);

int color(int y,int y0,int yh);

void Meteors(struct meteor me[]);

/主函数/

///int main(void)

int _tmain(int argc,_TCHARargv[]){

char c='\0';//接收键盘输入的变量

initgraph(WIDTH,HEIGHT);//初始化WIDTHHEIGHT的绘图窗口

HWND hwnd=GetHWnd();//获得窗口句柄

SetWindowText(hwnd,"Gavin Liu数字流星雨");//修改窗口名称

ShowWindow(hwnd,SW_SHOWMAXIMIZED);//最大化显示窗口

MessageBox(hwnd,TEXT("点击确定开始演示流星雨效果,Esc键退出"),TEXT("提示"),MB_OK|MB_ICONWARNING);//d出提示

srand((unsigned)time(NULL));//设置随机种子

for(int i=0;i&lt;NUM;i++){//对NUM个流星体初始化

InitMeteor(&me&lt;i&gt;);

}

while(c!=27){

BeginBatchDraw();//开始批量绘图

Meteors(me);//绘制一帧动画

FlushBatchDraw();//执行未完成的绘制任务

Sleep(DELAY);//延时

cleardevice();//清屏

for(int i=0;i&lt;NUM;i++){

me&lt;i&gt;yh+=V;

Move(me&lt;i&gt;str);

if(me&lt;i&gt;yh&gt;HEIGHT+LENGTHV){

InitMeteor(&me&lt;i&gt;);

}

}

if(kbhit()){

c=getch();

}

}

EndBatchDraw();//结束批量绘图

closegraph();//结束绘图环境

return 0;

}

/函数体/

char AsciiRand(){//产生随机可见ASCII码

return((char)(rand()%(126-33)+33));

}

void Move(charp){//字符后移,可以使显示时字符相对屏幕位置不变

charpt=p+LENGTH;

while(pt&gt;p){

(--pt)=(pt-1);

}

p=AsciiRand();

}

void InitMeteor(struct meteorme){//对一颗流星初始化

me-&gt;x0=rand()%WIDTH;

me-&gt;yh=me-&gt;y0=rand()%HEIGHT;

for(int i=0;i&lt;LENGTH;i++)

{

(me-&gt;str+i)=AsciiRand();

}

}

int color(int y,int y0,int yh){//确定流星的颜色

int color;

//出生点之前的流星体置成黑色

if(y&lt;y0){

color=0;

}

//流星颜色自头至尾按照余弦函数递减

else{

//尾迹消失

color=(int)(255cos((yh-y)PI/(2LENGTHV)));

}

return color;

}

//打印一帧流星的画面

void Meteors(struct meteor me[]){

//设置格式:背景透明,字符高度,字体粗细,字体

setbkmode(TRANSPARENT);

setfont(12,12,"宋体");

//开始打印一帧图像

int y;

for(int n=0;n&lt;NUM;n++){

for(int j=0;j&lt;LENGTH;j++){

//流星中第j个字符的纵坐标

y=me[n]yh-jV;

//设置颜色,流星的头部是白色的

setcolor(RGB(255(0==j),color(y,me[n]y0,me[n]yh),255(0==j)));

//打印字符

outtextxy(me[n]x0,y,me[n]str[j]);

}

}

}

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include&lt;文件名&gt;

2、#include"文件名"

以上就是关于求如何编写一个念数字程序(c语言)全部的内容,包括:求如何编写一个念数字程序(c语言)、用C语言编写流星雨程序、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10178091.html

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

发表评论

登录后才能评论

评论列表(0条)

保存