青扦植物:征集各种有趣记事本编程(,vbs)!!!

来源:百度文库 编辑:神马品牌网 时间:2024/05/11 17:45:14
征集各种有趣记事本编程(,vbs)!!!

并说明其作用哦!

汉诺塔

#include <graphics.h>
#include <stdio.h>
void move_step();
void hanoi_tower();
void init_hanoi_tower();
int m,n,mark=1;
int w[3]={0,0,0};
unsigned int size;
void *buf,*buf1,*buf2;
void main()
{int driver=VGA,mode=2;
initgraph(&driver,&mode,"c:\\tc");
setbkcolor(0);
setcolor(15);
setfillstyle(1,7);
cleardevice();
printf("the number of diskers is:");
scanf ("%d",&m);if(m<1||m>10)exit(0);
printf("the mode to moving diskers is:");
scanf("%d",&mark);if(mark>3||mark<1)exit(0);
w[0]=m;
init_hanoi_tower(m);
hanoi_tower(m,'A','B','C');
getchar();
closegraph();
}
/********************************************/
void init_hanoi_tower(int m)
{int i;
setfillstyle(1,7);setcolor(1;
setviewport(100,80,540,300,1);
floodfill(1,1,7);setfillstyle(1,6);
bar(40,160,120,170);bar(180,160,260,170);bar(320,160,400,170);
bar(75,17,85,159);bar(215,17,225,159);bar(355,17,365,159);
for(i=11-m;i<=10;i++)
{setfillstyle(1,(8+i)%16);
bar(75-i*5,17+i*3,85+i*5,27+i*13);
}
settextstyle(0,0,2);
outtextxy(80-8,175,"A");
outtextxy(220-8,175,"B");
outtextxy(360-8,175,"C");
size=imagesize(25,17,135,27);
buf1=(void *)malloc(size);
getimage(140+25,17,140+135,27,buf1);
buf2=(void *)malloc(size);
getinmage(25,4,135,14,buf2);
buf=(void *)malloc(size);
}
/*************************************************/
void hanoi_tower(int m,char one,chartwo,char three)
{if(m==1)move_step(one,three);
else{hanoi_tower(m-1,one,three,two);
move_stept(one,three);
hanoi_tower(m-1,two,one,three);
}
}
/*************************************************/
void move_step(char getone,char putone)
{void *buf3,buf4;
char c[7];
int i,j,k,x,y;
unsigned int s,ss;
switch(getone)
{
case'A':k=11-w[0];x=0 ;w[0]--;break;
case'B':k=11-w[1];x=140;w[1]--;break;
case'c':k=11-w[2];x=280;w[2]--;break;
}
getimage(25+x,17+k*13,135+x,27+k*13,buf);
putimage(25+x,17+k*13,buf1,COPY_PUT);
if(mark==3)
{for(k--;k>=0;k--)
{putimage(25+x,17+k*13,buf1,COPY_PUT);
for(i=0;i<32767;i++)for(j=0j<1000;j++);
putimage(25+x,17+k*13,buf1,COPY_PUT);
}
putimage(25+x,4,buf,COPY_PUT);
if(putone=='A')k=25;
else if(putone=='B')k=25+140;
else k=25+280;
if(x<k)
for(y=x+20;y<k-20;y+=20)
{putimage(25+y-20,4,buf2,COPY_PUT);
putimage(25+y,4,buf,COPY_PUT);
for(i=0;i<32767;i++)for(j=0j<1000;j++);
}
for(y=x-20;y>=k;y-=20)
{putimage(25+y-20,4,buf2,COPY_PUT);
putimage(25+y,4,buf,COPY_PUT);
for(i=0;i<32767;i++)for(j=0j<1000;j++);
}
}
switch(putone)
{case'A':k=10-w[0];x=0 ;w[0]--;break;
case'B':k=10-w[1];x=140;w[1]--;break;
case'c':k=10-w[2];x=280;w[2]--;break;
}
if(mark==3)
putimage(25+x,4,buf2,COPY_PUT);
for(y=0;y<k-1;y++)
{putimage(25+x,17+y*13,buf,COPY_PUT);
for(i=0;i<32767;i++)for(j=0j<1000;j++);
putimage(25+x,17+y*13,buf1,COPY_PUT);
}
}
putimage(25+x,17+k*13,buf,COPY_PUT);
setcolor(15);settextstyle(0,0,0);
setviewport(0,320,639,479,1);
if(n==0)
{if(m<10){c[0]=m%10+48;c[1]=m%10+48;c[2]='\0';}
outtext("The step to moving");outtext(c);
outtext("diskers:");
}
k=n+1;
ss=imagersize(31*8,0,31*8+31,14);
buf4=(void *)malloc(ss);
getimage(31*8,031*8+31,14,buf4);
if(k<10)
{c[0]=k+48;c[1]='\0';
}
else if(k<100){c[0]=k/10+48;c[1]=k%10+48;c[2]='\0';}
else if(k<1000){c[0]=k/100+48;k%=100;c[1]=K/10+48;
c[2]=k%10+48;c[3]='\0';}
else {c[0]=k/1000+48;k%=1000;c[1]=k/100+48;k%=100;c[2]=k/10+48;c[3]=k%10+48;
c[4]='\0';}
putimage(31*8,0buf4,XOR_PUT);
outtextxy(31*8,0,c);
free(buf4);
/************************************************************/
c[0]=getone=='A'?'A':getone=='B'?'B':'C';
c[1]='-';c[2]='-';c[3]='-';c[4]='>';c[6]='\0';c[5]=putone=='A'?'A':putone=='B'?'B':'C';
x=n%8*80;
y=8/8*15+15;
if(n/8>=10)
{y=80/8*15;
if(x==0){s=imagesize(0,16,639,159);
buf3=(void *)mallco(s);
for(i=0;i<15;i++)
{getimage(0,16,639,159,buf3);
putimage(0,15,buf3,COPY_PUT);
}
free(buf3);
}
}
outtextxy(x,y,c);
n++;
if(mark==2&&(n<80||x!=0))
for(i=0;i<32767;i++)for(j=0;j<1000;j++);
setviewport(100,80,540,300,1);
}
日历
/*输出日历*/
#include <stdio.h>
int LEAP_YEAR(int year)
{if(year%400==0||year%100!=0&&year%4==0)
return(1) ;
else
return(0);
}
void main()
{int year;
void output(int);
while(1)
{printf("please enter year:");
scanf("%d",&year);
output(year);
printf("continue?(y/n)");getchar();getchar();
if(getchar()!='y'&&getchar()!='Y')break;
}
}
void output(int year)
{ int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int i,j=0,t,p,count;
long sum=0;
char month[][12]={{'J','A','N'},{'F','E','B'},{'M','A','R'},{'A','P','R'},{'M','A','Y'},{'J','U','N'},{'J','U','L'},{'A','U','G'},{'S','E','P'},{'O','C','T'},{'N','O','V'},{'D','E','C'}};
if(LEAP_YEAR(year))a[1]=29;
for(i=0;i<year;i++)
{if(LEAP_YEAR(year))
sum=sum+366;
else
sum=sum+365;
}
p=(sum+1)%7;
count=p;
for(i=0;i<12;i++)
{
printf("\n-------------------------------------\n");
printf("**%s** \n",month[i]);
printf("Mon Tue Wed Thu Fri Sat Sun\n");
printf("-------------------------------------\n");
for(t=0;t<count;t++)
{printf(" ");
}
for(j=1;j<a[i]+1;j++)
{ printf("%3d ",j);
count++;
count=count%7;
if(count%7==0)
printf("\n");
p=count;}
}
return;
}

哥德巴赫猜想
#include "stdio.h"
#include "math.h"
main()
{ int a,b,c,d;
printf("Please input anumber:");
scanf("%d",&a);
for(b=3;b<=a/2;b+=2)
{ for(c=2;c<=sqrt(b);c++)
if(b%c==0) break;
if(c>sqrt(b))
d=a-b;
else
break;
for(c=2;c<=sqrt(d);c++)
if(d%c==0) break;
if(c>sqrt(d))
printf("%d=%d+%d\n",a,b,d);
}
getchar();
}