inta[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
intb[]={0,0,31,59,90,120,151,181,212,243,273,304,334,365};
intisleap(inty)
{
return(y%4==0&&y%100!=0||y%400==0)==11:0;
}
//返回一个日期距1900年1月1日(星期1)有多少天
inttotaldays(inty,intm,intd)
inttdays;
inttyear=y-1900;
tdays=tyear*365+tyear/4-tyear/100+tyear/400;
if(m>2)tdays+=isleap(y);
tdays+=d+b[m];
returntdays;
//返回此天是星期几
inttweek(inty,intm,intd)
returntotaldays(y,m,d)%7;
voidpt(inty,intm,intd)
inti;
intj;
if(m==2)j=a[m]+isleap(y);
elsej=a[m];
intweek=tweek(y,m,1);
printf("日\t一\t二\t三\t四\t五\t六\n");
for(i=0;i
printf("\t");
for(i=1;i<=j;i++)
printf("%d\t",i);
if((week+i)%7==0)
printf("\n");
intmain()
inty,m,d;//定义年、月、日
printf("inputy-m-d\n",&y,&m,&d);
scanf("%d-%d-%d",&y,&m,&d);
printf("%d\n",m);
pt(y,m,d);
return0;
//将一个数转化成它的素数的乘积,如90=2*3*3*5。
//判断一个数是否是素数,是的话返回1,否则返回0
intisshu(intx)
for(i=2;i
if(x%i==0)return0;
return1;
intx;
inta[20]={0};
intcnt=0;
printf("inputdata\n");
scanf("%d",&x);
while(isshu(x)==0)
if(x%i==0&&isshu(i)==1)
a[cnt++]=i;break;
x/=i;
a[cnt]=x;
//将所求的打印出来
for(i=0;i<=cnt;i++)
printf("%d\t",a[i]);
//产生一个随机数,然后输入它,输出输入的次数和猜测结果是否正确(最多猜7次)
srand(time(NULL));
intx=rand()%100;
inty=7;//最多猜测次数
intcnt=0;//猜测次数
intnum;//你输入的数
printf("产生的随机数是%d\n",x);
while(cnt<7)
printf("请输入你猜测的数:\n");
scanf("%d",&num);
if(x==num)
{break;}
else
if(x>num)
printf("你输入的数小了,请输入大的数\n");
printf("你输入的数大了,请输入小的数\n");
cnt++;
if(cnt!=7)
{printf("你太聪明了,你猜测的次数为%d。\n",cnt+1);
{printf("今天没有猜中,明天再来吧!\n");
//九宫格程序,横、竖、斜相加的数都一样。注意:第1行的中间必定放1.
intn;
printf("输入一个奇数:\n");
scanf("%d",&n);
if(n%2==0)return0;
intcnt=1;//计算放了多少次数据
inti=0;//行
intj=n/2;//列
inta[20][20]={0};//本来要定义一个a[n][n]的数组,但是vc6.0中不可以,办法,只好定义成20*20的,在打印的时候打前n行n列了。
//九宫格赋值
for(cnt=1;cnt<=n*n;cnt++)
a[i][j]=cnt;
i--;
j++;
if(i<0&&j
if(i>=0&&j>=n)j=0;//列越界
if(i<0&&j>=n){i+=2;j-=1;}//行列都越界
if(i>=0&&j
if(a[i][j]!=0){i+=2;j-=1;}
//打印九宫格
for(j=0;j
printf("%d\t",a[i][j]);
voidhano(intn,chara,charb,charc)//将n个盘子从位置a移动到位置c,利用中间位置b
if(n<=0)return;//必须是n<=0是退出递归的条件
hano(n-1,a,c,b);
printf("第%d个盘子从%c到%c\n",n,a,c);
hano(n-1,b,a,c);
intn;//盘子数量
printf("inputn:\n");
hano(n,'A','B','C');
//用命令行传递参数:在命令行中输入名字,判断是否是会员。
intmain(intargc,char*argv[])
//argv[0]为执行的命令,后面依次为命令行中输入的字符串,argc为argv中的数据的个数。
char*s[5]={"susan","marlyn","helen","lucy","john"};
inti=0;
intj=0;
intflag=0;//为判断是否同s中名字相同的标志,0为不一样,1为一样。
for(i=1;i
for(j=0;j<5;j++)
if(strcmp(argv[i],s[j])==0)
{flag=1;break;}
if(1==flag)printf("%s同main函数中数组%d的数据一样。\n",argv[i],s[j]);
elseprintf("%s同main函数中数组的数据不一样。\n",argv[i]);