Asp学习札记-最简单的论坛

2006-9-24 寒川 网页编程

    偶然间登录网易博客找到2006年的一篇日志,把他贴出来分享一下,很简单,但很经典,对新手很实用。还记得当初第一次学习Asp通宵和同学窝在网吧。回想起来,学校生活还是多么美好!废话不多说了,呵呵……
先将其整理如下:
一、文件说明:
1、数据库,用来储存发表的帖子!-------命名为:bbs.mdb
2、数据库连接文件,用于连接打开关闭数据库:----命名为:conn.asp
3、帖子发表文件,用于发表帖子----命名为:say.asp
4、帖子保存文件,用于将发表帖子的内容保存至数据库-----命名为:save.asp
5、帖子标题显示文件,用于显示帖子------命名为:index.asp
6、帖子内容文件,用于显示所发表帖子的内容-----命名为:show.asp
至于帖子删除、修改等,此处暂时不做考虑。asp页面编辑器采用记事本或则其他文本编辑器,保存时另存为所有格式,扩展名改为”.asp“即可。
二、各文件的主要内容:
1、bbs.mdb
打开这个数据库,建立一个表,命名为bbs
该表中有几个字段:
id(自动给帖子编号),他的数据类型设为“自动编号”
name(用来储存发表的作者),数据类型为“文本”
title(用来储存帖子的主题),数据类型为“文本”
body(用来储存帖子的内容),数据类型为“备注”
2、conn.asp
源代码为:
<%
Server.scriptTimeout="10"
connstr="DBQ="+server.mappath("bbs.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=Server.CreateObject("ADODB.connection")
conn.open connstr
%>
这个文件就是这样,代码内容大家就自己研究,这个我也不知道怎么说才好!
3、say.asp
源代码为:
<form method="POST" action="save.asp">
<p>大名:<input type="text" name="name" size="20"></p>
<p>标题:<input type="text" name="title" size="91"></p>
<p>内容:</p>
<p><textarea rows="11" name="body" cols="97"></textarea></p>
<p> </p>
<p><input type="submit" value="提交" name="B1"><input type="reset" value="重置" name="B2"></p>
</form>
大家应该看得懂的,这个根本就是html语法,对的,根本就是,这个只是发表的界面
不过要注意这一句<form method="POST" action="save.asp">,他把用户所填的内容发送至save.asp这个文件,下面就看save.asp这个文件吧!
4、save.asp
源代码:
<!--#include file="conn.asp"-->
<%name=Replace(Request.form("name"),"'","''")
title=Replace(Request.form("title"),"'","''")
body=Replace(Request.form("body"),"'","''")
%>
<%if name="" or title="" or body="" then%>
请<a href="javascript:history.go(-1)">后退</a>填写完整资料,你才能发表帖子!
<%else%>
<%set savebbs=conn.execute("insert into bbs(name,title,body)values('"&name&"','"&title&"','"&body&"')")%>
发表成功!<a href="index.asp">查看帖子</a>
<%end if
set savebbs=nothing
%>
第一句:<!--#include file="conn.asp"-->,意思是插入conn.asp文件,即与数据库进行连接!
asp语句必须用<% %>这个格式包含起来,而插入文件的语句就不用,
接下来几句:
name=Replace(Request.form("name"),"'","''")
title=Replace(Request.form("title"),"'","''")
body=Replace(Request.form("body"),"'","''")
"Replace(Request.form("name"),"'","''")”意思是接收表单中名为name的文本框发来的数据,
而“name=Replace(Request.form("name"),"'","''")”则是把发来的数据储存在name变量中,
如果你这样:“abc123=Replace(Request.form("name"),"'","''")”
就是把表单中名为name的文本框发来的数据储存在abc123变量中
接着:if name="" or title="" or body="" then
判断name、title和body变量中是否没有填写内容,即为"",如果这样,就执行这一语句:
“请<a href="javascript:history.go(-1)">后退</a>填写完整资料,你才能发表帖子!”
该语句属于html语法,大家都看得懂的!
"<%else%>"就是说“当if……then不成立(即是说所有内容都已经填写)”,就执行语句:
“<%set savebbs=conn.execute("insert into bbs(name,title,body) values('"&name&"','"&title&"','"&body&"')")%>
发表成功!<a href="index.asp">查看帖子</a>”
"set save=conn.execute"属于固定的语句,不过savebbs可以自己修改,"="后面的就难解释了:
insert into bbs(name,title,body)意思是向名为bbs的表(在建立数据库时已经建立的表)
中的name,title,body字段插入,插入什么呢?看接下的values('"&name&"','"&title&"','"&body&"')")
values是“值”的意思
就是插入向量name,title,body,向量用格式'"&name&"'表示 最后:end if就是结束if……then
set savebbs=nothing可以说是关闭掉:
set savebbs=conn.execute("insert into bbs(name,title,body) values('"&name&"','"&title&"','"&body&"')")
5、index.asp
源代码:
<!--#include file="conn.asp"-->
<b><a href="say.asp">发表帖子</a></b>
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse; " bordercolor="#000000" width="100%" height="26">
<tr>
<td width="17%"><b>作者</b></td>
<td width="83%"><b>主题</b></td>
</tr>
</table>
</center>
</div><hr size="1">
<%i=1
set showbbs=conn.execute("select*from bbs order by id desc")
do while not showbbs.eof
%>
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse; " bordercolor="#000000" width="100%" height="20">
<tr>
<td width="17%"><%=showbbs("name")%> </td>
<td width="83%">
<a href="show.asp?id=<%=showbbs("id")%>"><%=showbbs("title")%></a></td>
</tr>
</table>
</center>
</div><hr size="1">
<%i=i+1
if i>50 then exit do
showbbs.movenext
Loop
showbbs.Close
set showbbs=nothing
%>
这个文件就不一句一句的讲了
主要讲精华部分:
set showbbs=conn.execute("select*from bbs order by id desc")
意思是:向数据库中的bbs数据表查询数据,并以id排顺序,
还有这么一句:<%=showbbs("name")%>
就是显示数据表中的name字段的数据,这里的showbbs就是set showbbs=……中的showbbs
代码中的i=1和i=i+1
if i>50 then exit do
showbbs.movenext
Loop
showbbs.Close
set showbbs=nothing
这几句属于循环语句,这里就不理他,理解了也不太好用,因为他只显示50张贴子!
if i>50 then exit do中的50可以修改
但我们做论坛必须把帖子分页,又因为分页这个语句太复杂,我想就不讲了,等这一个弄懂了才来弄
还有一句很有用的:
<a href="show.asp?id=<%=showbbs("id")%>"><%=showbbs("title")%></a>
里面的超连接:show.asp?id=<%=showbbs("id")%>,注意:这里的超连接把帖子的id包含了,
等一下在show.asp文件中就有用了
6、show.asp
源代码:
<!--#include file="conn.asp"-->
<%id=request.querystring("id")%>
<%set show=conn.execute("select*from bbs where id="&id&"")%>
<a href="index.asp">
<b>回到首页</b></a>
<b><a href="say.asp">发表帖子</a></b>
<hr size="1">
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" height="180">
<tr>
<td width="21%" height="22"><b>作者:</b><%=show("name")%></td>
<td width="79%" height="22"><b>主题:</b><%=show("title")%></td>
</tr>
<tr>
<td width="100%" colspan="2" height="158" valign="top"><b>
内容:</b><%=show("body")%></td>
</tr>
</table><%set show=nothing%>
劲语句---精华语句:
id=request.querystring("id")
在讲解index.asp文件的后面已经说到:show.asp?id=<%=showbbs("id")这一句,
id=request.querystring("id")就是把地址栏中的id的值读取下来,
因为index.asp文件中的超连接点击后,地址栏就为http://…………/show.asp?id=数字,
所以show.asp使用id=request.querystring("id")语句把数字读取下来
于是接着使用:set show=conn.execute("select*from bbs where id="&id&"")
向数据表查询id为这时读取下来的数字的帖子,即where id="&id&"
最后<%set show=nothing%>
好了,论坛就做成了,里面的精华你就去吸取!
当然论坛不可能这么简单,他还有许多文件需要你去制作,这里讲的只是个别必需的功能。

标签: html 脚本 编程 asp

评论(1) 浏览(11588)

网页中加入在线lrc歌词的方法

2006-9-23 寒川 网页编程

说明:很有可能因为歌曲的ULR地址问题无法播放。请更改一个能用的歌曲地址测试。
<html>
<head>
<meta http-equiv=Content-Type content=text/html; charset=gb2312>
<title>漫步人生路</title>
<STYLE type=text/css>
TD { FONT-SIZE: 9pt; LINE-HEIGHT: 17px; }
BODY{
FONT-SIZE: 9pt;
LINE-HEIGHT: 17px;
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
#lrcollbox td, #lrcollbox font {font-family: 黑体; font-size: 16px;}
#lrcoll td { color:#0080C0; cursor: default; }
#lrcbox { color:#00FF00 }
#lrcfilter { filter: alpha(opacity=0) }
#lrcbc { color:#FFFF33 }
</STYLE>
</head>
<script language="JavaScript">
self.moveTo(0,0);
self.resizeTo(screen.availWidth,screen.availHeight);
</script>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<span id="lrcdata"><!--
[ti:]
[ar:]
[al:]
[by:]
[00:00.63]邓丽君
[00:04.13]漫步人生路
[00:05.88]寒川制作
[00:09.06]悠然小居
[00:24.37]在你身边路虽远
[00:29.62]末疲倦
[00:32.25]伴你漫行
[00:34.76]一段接一段
[00:37.17]越过高峰
[00:39.25]另一峰却又见
[00:42.31]目标推远
[00:44.06]让理想永远在前面
[00:47.78]路纵崎岖
[00:50.29]亦不怕受磨练
[00:53.14]愿一生中
[00:54.78]苦痛快乐也体验
[00:58.18]愉快悲哀
[01:00.80]在身边转又转
[01:03.97]风中赏雪
[01:05.51]雾里赏花
[01:06.82]快乐回旋
[01:08.79]母用计较
[01:10.76]快欣赏身边
[01:12.29]美丽每一天
[01:14.25]还愿确信
[01:16.01]美景良辰在脚边
[01:20.05]愿将欢笑声
[01:22.25]盖掩苦痛那一面
[01:24.98]悲也好 喜也好
[01:27.49]每天找到新发现
[01:30.12]让疾风吹呀吹
[01:32.75]尽管给我俩考验
[01:35.37]小雨点
[01:37.01]放心洒
[01:50.02]早已决心向着前
[01:56.99]路纵崎岖
[02:08.81]亦不怕受磨练
[02:12.13]愿一生中
[02:14.76]苦痛快乐也体验
[02:16.39]愉快悲哀
[02:20.01]在身边转又转
[02:22.74]风中赏雪
[02:24.27]雾里赏花
[02:25.69]快乐回旋
[02:27.55]母用计较
[02:29.52]快欣赏身边
[02:30.94]美丽每一天
[02:33.02]还愿确信
[02:34.88]美景良辰在脚边
[02:38.38]愿将欢笑声
[02:41.01]盖掩苦痛那一面
[02:43.52]悲也好 喜也好
[02:46.26]每天找到新发现
[02:48.88]让疾风吹呀吹
[02:51.51]尽管给我俩考验
[02:54.24]小雨点
[02:56.87]放心洒
[02:59.39]早已决心向着前
[03:02.45]悠然小居
[03:17.77]寒川制作
[03:30.78]欢迎光临

--></span>
<center>
<object classid="clsid:6bf52a52-394a-11d3-b153-00c04f79faa6" id="aboutplayer" width="480" height="240">
<param name="url" value="http://www.ai18.net/DLJMP3/漫步人生路.mp3">
<param name="volume" value="100">
<param name="enablecontextmenu" value="0">
<param name="enableerrordialogs" value="0">
</object>
<div id="lrcollbox" style="overflow:hidden; height:260; width:480; background-color:#000000;">
<table border="0" cellspacing="0" cellpadding="0" width="100%" id="lrcoll" style="position:relative; top: -20px;" oncontextmenu="return false;">
<tr><td nowrap height="20" align="center" id="lrcwt1"></td></tr>
<tr><td nowrap height="20" align="center" id="lrcwt2"></td></tr>
<tr><td nowrap height="20" align="center" id="lrcwt3"></td></tr>
<tr><td nowrap height="20" align="center" id="lrcwt4"></td></tr>
<tr><td nowrap height="20" align="center" id="lrcwt5"></td></tr>
<tr><td nowrap height="20" align="center" id="lrcwt6"></td></tr>
<tr><td nowrap height="20" align="center">
<table border="0" cellspacing="0" cellpadding="0">
<tr><td nowrap height="20"><span id="lrcwt7" style="height:20"></span></td></tr>
<tr style="position:relative; top: -20px; z-index:6"><td nowrap height="20"><div id="lrcfilter" style="overflow:hidden; width:100%; color:#FFFF33; height:20"></div></td></tr>
</table>
</td></tr>
<tr style="position:relative; top: -20px"><td nowrap height="20" align="center">
<table border="0" cellspacing="0" cellpadding="0">
<tr><td nowrap height="20"><span id="lrcbox" style="height:20">歌词加载中</span></td></tr>
<tr style="position:relative; top: -20px; z-index:6;"><td nowrap height="20"><div id="lrcbc" style="overflow:hidden; height:20; width:0;"></div></td></tr>
</table>
</td></tr>
<tr style="position:relative; top: -40px;"><td nowrap height="20" align="center" id="lrcwt8"></td></tr>
<tr style="position:relative; top: -40px;"><td nowrap height="20" align="center" id="lrcwt9"></td></tr>
<tr style="position:relative; top: -40px;"><td nowrap height="20" align="center" id="lrcwt10"></td></tr>
<tr style="position:relative; top: -40px;"><td nowrap height="20" align="center" id="lrcwt11"></td></tr>
<tr style="position:relative; top: -40px;"><td nowrap height="20" align="center" id="lrcwt12"></td></tr>
<tr style="position:relative; top: -40px;"><td nowrap height="20" align="center" id="lrcwt13"></td></tr>
</table>
</div>
</center>
<script language="JavaScript">
var lrc0;
var lrc1;
var min;
lrcobj = new lrcClass(lrcdata.innerHTML.slice(4,-3));

function lrcClass(tt)
{
  this.inr = [];
  this.min = [];

  this.oTime = 0;

  this.dts = -1;
  this.dte = -1;
  this.dlt = -1;
  this.ddh;
  this.fjh;

  lrcbc.style.width = 0;

  if(/\[offset\:(\-?\d+)\]/i.test(tt))
    this.oTime = RegExp.$1/1000;

  tt = tt.replace(/\[\:\][^$\n]*(\n|$)/g,"$1");
  tt = tt.replace(/\[[^\[\]\:]*\]/g,"");
  tt = tt.replace(/\[[^\[\]]*[^\[\]\d]+[^\[\]]*\:[^\[\]]*\]/g,"");
  tt = tt.replace(/\[[^\[\]]*\:[^\[\]]*[^\[\]\d\.]+[^\[\]]*\]/g,"");
  tt = tt.replace(/<[^<>]*[^<>\d]+[^<>]*\:[^<>]*>/g,"");
  tt = tt.replace(/<[^<>]*\:[^<>]*[^<>\d\.]+[^<>]*>/g,"");

  while(/\[[^\[\]]+\:[^\[\]]+\]/.test(tt))
  {
    tt = tt.replace(/((\[[^\[\]]+\:[^\[\]]+\])+[^\[\r\n]*)[^\[]*/,"\n");
    var zzzt = RegExp.$1;
    /^(.+\])([^\]]*)$/.exec(zzzt);
    var ltxt = RegExp.$2;
    var eft = RegExp.$1.slice(1,-1).split("][");
    for(var ii=0; ii<eft.length; ii++)
    {
      var sf = eft[ii].split(":");
      var tse = parseInt(sf[0],10) * 60 + parseFloat(sf[1]);
      var sso = { t:[] , w:[] , n:ltxt }
      sso.t[0] = tse-this.oTime;
      this.inr[this.inr.length] = sso;
    }
  }
  this.inr = this.inr.sort( function(a,b){return a.t[0]-b.t[0];} );

  for(var ii=0; ii<this.inr.length; ii++)
  {
    while(/<[^<>]+\:[^<>]+>/.test(this.inr[ii].n))
    {
      this.inr[ii].n = this.inr[ii].n.replace(/<(\d+)\:([\d\.]+)>/,"%=%");
      var tse = parseInt(RegExp.$1,10) * 60 + parseFloat(RegExp.$2);
      this.inr[ii].t[this.inr[ii].t.length] = tse-this.oTime;
    }
    lrcbc.innerHTML = "<font>"+ this.inr[ii].n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/%=%/g,"</font><font>") +"</font>";
    var fall = lrcbc.getElementsByTagName("font");
    for(var wi=0; wi<fall.length; wi++)
      this.inr[ii].w[this.inr[ii].w.length] = fall[wi].offsetWidth;
    this.inr[ii].n = lrcbc.innerText;
  }

  for(var ii=0; ii<this.inr.length-1; ii++)
    this.min[ii] = Math.floor((this.inr[ii+1].t[0]-this.inr[ii].t[0])*10);
  this.min.sort(function(a,b){return a-b});
  min = this.min[0]/2;

  this.run = function(tme)
  {
    if(tme<this.dts || tme>=this.dte)
    {
      var ii;
      for(ii=this.inr.length-1; ii>=0 && this.inr[ii].t[0]>tme; ii--){}
      if(ii<0) return;
      this.ddh = this.inr[ii].t;
      this.fjh = this.inr[ii].w;
      this.dts = this.inr[ii].t[0];
      this.dte = (ii<this.inr.length-1)?this.inr[ii+1].t[0]:aboutplayer.currentMedia.duration;

      lrcwt1.innerText = this.retxt(ii-7);
      lrcwt2.innerText = this.retxt(ii-6);
      lrcwt3.innerText = this.retxt(ii-5);
      lrcwt4.innerText = this.retxt(ii-4);
      lrcwt5.innerText = this.retxt(ii-3);
      lrcwt6.innerText = this.retxt(ii-2);
      lrcwt7.innerText = this.retxt(ii-1);
      lrcfilter.innerText = this.retxt(ii-1);
      lrcwt8.innerText = this.retxt(ii+1);
      lrcwt9.innerText = this.retxt(ii+2);
      lrcwt10.innerText = this.retxt(ii+3);
      lrcwt11.innerText = this.retxt(ii+4);
      lrcwt12.innerText = this.retxt(ii+5);
      lrcwt13.innerText = this.retxt(ii+6);
      this.print(this.retxt(ii));
      if(this.dlt==ii-1)
      {
        clearTimeout(lrc0);
        if(lrcoll.style.pixelTop!=0) lrcoll.style.top = 0;
        golrcoll(0);
        clearTimeout(lrc1);
        lrcfilter.filters.alpha.opacity = 100;
        golrcolor(0);
      }
      else if(parseInt(lrcoll.style.top)!=-20)
      {
        clearTimeout(lrc0);
        lrcoll.style.top = -20;
        clearTimeout(lrc1);
        lrcfilter.filters.alpha.opacity = 0;
      }
      this.dlt = ii;
    }
    var bbw = 0;
    var ki;
    for(ki=0; ki<this.ddh.length && this.ddh[ki]<=tme; ki++)
      bbw += this.fjh[ki];
    var kt = ki-1;
    var sc = ((ki<this.ddh.length)?this.ddh[ki]:this.dte) - this.ddh[kt];
    var tc = tme - this.ddh[kt];
    bbw -= this.fjh[kt] - tc / sc * this.fjh[kt];
    if(bbw>lrcbox.offsetWidth)
      bbw = lrcbox.offsetWidth;
    lrcbc.style.width = Math.round(bbw);
  }

  this.retxt = function(i)
  {
    return (i<0 || i>=this.inr.length)?"":this.inr[i].n;
  }

  this.print = function(txt)
  {
    lrcbox.innerText = txt;
    lrcbc.innerText = txt;
  }

  this.print("寒川");
  lrcwt1.innerText = "";
  lrcwt2.innerText = "";
  lrcwt3.innerText = "";
  lrcwt4.innerText = "";
  lrcwt5.innerText = "";
  lrcwt6.innerText = "";
  lrcwt7.innerText = "";
  lrcfilter.innerText = "";
  lrcwt8.innerText = "";
  lrcwt9.innerText = "";
  lrcwt10.innerText = "";
  lrcwt11.innerText = "";
  lrcwt12.innerText = "";
  lrcwt13.innerText = "";
}

function lrcrun()
{
  with(aboutplayer)
  {
    lrcobj.run(controls.currentPosition);
  }
  if(arguments.length==0) setTimeout("lrcrun()",10);
}

function golrcoll(s)
{
  lrcoll.style.top = -(s++)*2;
  if(s<=9)
    lrc0 = setTimeout("golrcoll("+s+")",min*10);
}

function golrcolor(t)
{
  lrcfilter.filters.alpha.opacity = 110-(t++)*10;
  if(t<=10)
    lrc1 = setTimeout("golrcolor("+t+")",min*10);
}
window.onerror = function()
{return true;}
lrcrun();
</script>
</body>
</html>
 

标签: html 编程 script

评论(1) 浏览(6499)

一个24点的C程序

2006-9-23 寒川 计算机

#include "stdio.h"
#include "math.h"
#include "time.h"

void main()
{
  void first();
  void second();
  int third();
  time_t t;
  int close=0;
  char get;
  clrscr();
  srand((unsigned) time(&t));
  for(;;)
  {
    clrscr();
    printf("24 POINTS SYSTEM v2.2\n");
    printf("MADE BY DANTE WANG\n");
    printf("Jul.28th 2006\n\n");
    printf("Please choose mode!\n\n");
    printf("1. Game Mode\n");
    printf("2. Count Mode\n");
    printf("3. Quit\n\n");
    get=getch();
    switch(get)
    {
      case '1': first(); break;
      case '2': second();break;
      case '3': close=third(); break;
      default: printf("Please input 1, 2 or 3!\n"); getch();
    }
    if(close)
      break;
  }
}

void first()
{
  int jdgsgn(int a,int b,int c,int d);
  int n[4],i;
  char ch[100],ch1[100];
  int check(char *p);
  int exam2(char *p,int a,int b,int c,int d);
  void sign(int a,int b,int c,int d);
  double figure(char *p);
  void draw(int *p);
  for(;;)
  {
    for(i=0;i<4;i++)
    {
      n[i]=rand()%13+1;
    }
    draw(n);
    if(!jdgsgn(n[0],n[1],n[2],n[3]))
    {
      printf("No answer!");
      getch();
      continue;
    }
    gets(ch);
    if(!strcmp(strlwr(ch),"quit"))
    break;
    else
    {
      strcpy(ch1,ch);
      if(!check(ch)&&!exam2(ch,n[0],n[1],n[2],n[3])&&fabs(figure(ch1)-24)<=0.000001)
      {
printf("\nGood job!\n");
getch();
      }
      else
      {
printf("\nWrong!\n\nAnswer: ");
sign(n[0],n[1],n[2],n[3]);
getch();
      }
    }
  }
}

void second()
{
  int n[4],i;
  char c[4][10];
  int exam(char *p);
  void sign(int a,int b,int c,int d);
  double recog(char *p);
  clrscr();
  printf("Input 0 to leave.\n\n");
  for(;;)
  {
    for(i=0;i<4;i++)
    {
      scanf("%s",&c[i]);
      if(exam(c[i]))
      {
printf("GRAMMER ERROR!\n");
i--;
continue;
      }
      n[i]=(int)recog(c[i]);
      if(n[i]==0)
break;
    }
    if(n[0]&&n[1]&&n[2]&&n[3])
      sign(n[0],n[1],n[2],n[3]);
    else
      break;
  }
}

int third()
{
  printf("Thanks for using this software!\n\n");
  printf("If you have any advices or suggestions,\n\n");
  printf("please call my QQ:331349451\n\n");
  getch();
  return(1);
}

void sign(int a,int b,int c,int d)
{
  char *change(int x);
  double figure(char *p);
  int i[4],n,n1,n2,n3,n4,s1,s2,s3,t,flag=0;
  char s[4][2]={"+","-","*","/"},p[64]={0},p1[64]={0};
  i[0]=a;
  i[1]=b;
  i[2]=c;
  i[3]=d;
  for(n1=0;n1<4;n1++)
  {
    for(n2=0;n2<4;n2++)
    {
      if(n2==n1)
continue;
      for(n3=0;n3<4;n3++)
      {
if(n3==n2||n3==n1)
  continue;
for(n4=0;n4<4;n4++)
{
  if(n4==n3||n4==n2||n4==n1)
    continue;
  for(s1=0;s1<4;s1++)
  {
    for(s2=0;s2<4;s2++)
    {
      for(s3=0;s3<4;s3++)
      {
strcat(p,change(i[n1]));
strcat(p,s[s1]);
strcat(p,change(i[n2]));
strcat(p,s[s2]);
strcat(p,change(i[n3]));
strcat(p,s[s3]);
strcat(p,change(i[n4]));
strcpy(p1,p);
if(fabs(figure(p1)-24)<=0.000001)
{
  printf("%s\n",p);
  flag++;
  break;
}
*p='\0';
if(s1/2==1&&(s2/2==0||s3/2==0))
{
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,"(");
  strcat(p,change(i[n2]));
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcat(p,")");
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    printf("%s\n",p);
    flag++;
    break;
  }
  *p='\0';
}
if(s1/2==0&&s2/2==1)
{
  strcat(p,"(");
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,change(i[n2]));
  strcat(p,")");
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    printf("%s\n",p);
    flag++;
    break;
  }
  *p='\0';
}
if(s2/2==0&&s1/2==1)
{
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,"(");
  strcat(p,change(i[n2]));
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,")");
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    printf("%s\n",p);
    flag++;
    break;
  }
  *p='\0';
}
if((s1/2==0||s2/2==0)&&s3/2==1)
{
  strcat(p,"(");
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,change(i[n2]));
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,")");
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    printf("%s\n",p);
    flag++;
    break;
  }
  *p='\0';
}
if(s1/2==0&&s2/2==1&&s3/2==0)
{
  strcat(p,"(");
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,change(i[n2]));
  strcat(p,")");
  strcat(p,s[s2]);
  strcat(p,"(");
  strcat(p,change(i[n3]));
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcat(p,")");
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    printf("%s\n",p);
    flag++;
    break;
  }
  *p='\0';
}
      }
      if(flag)
break;
    }
    if(flag)
      break;
  }
  if(flag)
    break;
}
if(flag)
  break;
      }
      if(flag)
break;
    }
    if(flag)
      break;
  }
  if(flag==0)
  printf("No answer!\n");
}

char *change(int x)
{
  static char a[64];
  char *c;
  c=a+63;
  *c='\0';
  c--;
  for(;;c--)
  {
    if(x>=10)
    {
      *c=x%10+'1'-1;
      x=x/10;
    }
    else
    {
      *c=x+'1'-1;
      break;
    }
  }
  return(c);
}

double figure(char *p)
{
  int judge(char *p);
  int judge2(char *p);
  void add(char *p);
  void pick(char *p);
  double recog(char *p);
  char *c=p,*c1,c2[64];
  int sign,kuoh=0,flag2=0;
  double result,chu;
  add(p);
  for(sign=0;*c!='\0';c++)
  {
    if(*c=='+'||*c=='-'||*c=='*'||*c=='/'||*c=='('||*c==')')
    {
      sign++;
      break;
    }
}
  if(sign==0)
    return(recog(p));
  else
  {
    c=p;
    for(;*c!='\0';c++)
    {
      if(*c=='(')
kuoh++;
      if(*c==')')
kuoh--;
      if(!judge2(c))
      {
if(*c=='+'&&kuoh==0)
{
  *c='\0';
  result=figure(p)+figure(c+1);
  flag2++;
  break;
}
if(*c=='-'&&kuoh==0)
{
  *c='\0';
  result=figure(p)-figure(c+1);
  flag2++;
  break;
}
      }
      if(!judge(c))
      {
if(*c=='*'&&kuoh==0)
{
  *c='\0';
  result=figure(p)*figure(c+1);
  flag2++;
  break;
}
if(*c=='/'&&kuoh==0)
{
  *c='\0';
  chu=figure(c+1);
  if(chu==0)
  {
    result=99999;
  }
  else
  {
    result=figure(p)/chu;
  }
  flag2++;
  break;
}
      }
    }
    if(flag2)
      return(result+0);
    else
    {
      pick(p);
      result=figure(p);
      return(result+0);
    }
  }
}

int judge(char *p)
{
  char *c=p;
  int kuoh=0,flag=0;
  for(c++;*c!='\0';c++)
  {
    if(*c=='(')
    kuoh++;
    if(*c==')')
    kuoh--;
    if(kuoh==0&&(*c=='+'||*c=='-'||*c=='*'||*c=='/'))
    {
      flag++;
      break;
    }
  }
  return(flag);
}

int judge2(char *p)
{
  char *c=p;
  int kuoh=0,flag=0;
  for(c++;*c!='\0';c++)
  {
    if(*c=='(')
    kuoh++;
    if(*c==')')
    kuoh--;
    if(kuoh==0&&(*c=='+'||*c=='-'))
    {
      flag++;
      break;
    }
  }
  return(flag);
}

void add(char *p)
{
  char *c=p,b[64];
  int flag=0;
  for(;*c!='\0';c++)
  {
    if((*c=='-'||*c=='+')&&(*(c+1)>='0'&&*(c+1)<='9'))
      flag++;
    if((*c>='0'&&*c<='9'||*c=='.')&&(*(c+1)=='*'||*(c+1)=='/'||*(c+1)=='+'||*(c+1)=='-'))
    {
      flag++;
      break;
    }
    if((*c>='0'&&*c<='9'||*c=='.')&&*(c+1)==')')
    {
      break;
    }
  }
  if(flag==2)
    flag=1;
  else
    flag=0;
  if(flag)
  {
    c=p;
    for(;*c!='\0';c++)
    {
      if(*(c+1)>='0'&&*(c+1)<='9')
      {
if(*c=='+'||*c=='-')
{
  strcpy(b,c);
  *c='(';
  strcpy(c+1,b);
}
break;
      }
    }
    c+=2;
    for(;*c!='\0';c++)
    {
      if((*c<'0'||*c>'9')&&*c!='.')
      {
strcpy(b,c);
*c=')';
strcpy(c+1,b);
break;
      }
    }
  }
}

void pick(char *p)
{
  char *c=p;
  if(*c=='('&&*(c+strlen(c)-1)==')')
  {
    strcpy(c,c+1);
    *(c+strlen(c)-1)='\0';
  }
}


double recog(char *p)
{
  char *c=p;
  int flag=0,number;
  double quan,ans=0;
  for(;;c++)
  {
    if(*c=='.')
    {
      flag++;
      number=c-p;
    }
    if(*c!='.'&&(*c<'0'||*c>'9'))
      break;
  }
  if(flag==0)
  {
    for(quan=1,c--;c>=p;c--,quan*=10)
    ans+=(*c-'1'+1)*quan;
  }
  else
  {
    for(c--,quan=pow(10,number-(c-p));c>=p;c--)
    {
      if(*c=='.')
continue;
      else
      {
ans+=(*c-'1'+1)*quan;
quan*=10;
      }
    }
  }
  return(ans);
}

int exam(char *p)
{
  double recog(char *p);
  char *c=p;
  int number=0;
  for(;*c!='\0';c++)
  {
    if(*c>'9'||*c<'0')
      number++;
    if(number)
      break;
  }
  if(!number)
  {
    if(recog(p)>13||recog(p)<0)
number++;
  }
  return(number);
}

void draw(int *p)
{
  time_t t;
  int n;
  clrscr();
  printf("Press \"quit\" to leave.");
  srand((unsigned) time(&t));
  for(n=0;n<4;n++)
  {
    gotoxy(1+7*n,3);
    printf("\xda\xc4\xc4\xc4\xc4\xbf");
    gotoxy(1+7*n,4);
    printf("\xb3%c   \xb3",rand()%4+3);
    gotoxy(1+7*n,5);
    printf("\xb3    \xb3");
    gotoxy(1+7*n,6);
    switch(*(p+n))
    {
      case 1:
printf("\xb3   A\xb3");
break;
      case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:
printf("\xb3%4d\xb3",*(p+n));
break;
      case 11:
printf("\xb3   J\xb3");
break;
      case 12:
printf("\xb3   Q\xb3");
break;
      case 13:
printf("\xb3   K\xb3");
    }
    gotoxy(1+7*n,7);
    printf("\xc0\xc4\xc4\xc4\xc4\xd9");
    gotoxy(1,9);
  }
}

int jdgsgn(int a,int b,int c,int d)
{
  char *change(int x);
  double figure(char *p);
  int i[4],n,n1,n2,n3,n4,s1,s2,s3,t,flag=0;
  char s[4][2]={"+","-","*","/"},p[64]={0},p1[64]={0};
  i[0]=a;
  i[1]=b;
  i[2]=c;
  i[3]=d;
  for(n1=0;n1<4;n1++)
  {
    for(n2=0;n2<4;n2++)
    {
      if(n2==n1)
continue;
      for(n3=0;n3<4;n3++)
      {
if(n3==n2||n3==n1)
  continue;
for(n4=0;n4<4;n4++)
{
  if(n4==n3||n4==n2||n4==n1)
    continue;
  for(s1=0;s1<4;s1++)
  {
    for(s2=0;s2<4;s2++)
    {
      for(s3=0;s3<4;s3++)
      {
strcat(p,change(i[n1]));
strcat(p,s[s1]);
strcat(p,change(i[n2]));
strcat(p,s[s2]);
strcat(p,change(i[n3]));
strcat(p,s[s3]);
strcat(p,change(i[n4]));
strcpy(p1,p);
if(fabs(figure(p1)-24)<=0.000001)
{
  flag++;
  break;
}
*p='\0';
if(s1/2==1&&(s2/2==0||s3/2==0))
{
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,"(");
  strcat(p,change(i[n2]));
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcat(p,")");
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    flag++;
    break;
  }
  *p='\0';
}
if(s1/2==0&&s2/2==1)
{
  strcat(p,"(");
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,change(i[n2]));
  strcat(p,")");
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    flag++;
    break;
  }
  *p='\0';
}
if(s2/2==0&&s1/2==1)
{
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,"(");
  strcat(p,change(i[n2]));
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,")");
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    flag++;
    break;
  }
  *p='\0';
}
if((s1/2==0||s2/2==0)&&s3/2==1)
{
  strcat(p,"(");
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,change(i[n2]));
  strcat(p,s[s2]);
  strcat(p,change(i[n3]));
  strcat(p,")");
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    flag++;
    break;
  }
  *p='\0';
}
if(s1/2==0&&s2/2==1&&s3/2==0)
{
  strcat(p,"(");
  strcat(p,change(i[n1]));
  strcat(p,s[s1]);
  strcat(p,change(i[n2]));
  strcat(p,")");
  strcat(p,s[s2]);
  strcat(p,"(");
  strcat(p,change(i[n3]));
  strcat(p,s[s3]);
  strcat(p,change(i[n4]));
  strcat(p,")");
  strcpy(p1,p);
  if(fabs(figure(p1)-24)<=0.000001)
  {
    flag++;
    break;
  }
  *p='\0';
}
      }
      if(flag)
break;
    }
    if(flag)
      break;
  }
  if(flag)
    break;
}
if(flag)
  break;
      }
      if(flag)
break;
    }
    if(flag)
      break;
  }
  return(flag);
}

int exam2(char *p,int a,int b,int c,int d)
{
  double recog(char *p);
  int number=0,num[4],flag=0,n,m;
  num[0]=a;
  num[1]=b;
  num[2]=c;
  num[3]=d;
  for(m=0;*p!='\0';p++,m++)
  {
    if(*p>='0'&&*p<='9'&&(*(p+1)>'9'||*(p+1)<'0'))
      number++;
    if(m>0&&*p>='0'&&*p<='9'&&*(p-1)>='0'&&*(p-1)<='9')
      continue;
    if(*p<='9'&&*p>='0')
    {
      if(recog(p)>13||recog(p)<1)
      {
flag++;
break;
      }
      else
      {
for(n=0;n<4;n++)
{
  if(recog(p)==num[n])
  {
    num[n]=0;
    break;
  }
}
      }
    }
  }
  if(!flag)
  {
    if(number!=4)
      flag++;
    else
      if(num[1]||num[2]||num[3]||num[0])
flag++;
  }
  return(flag);
}

int check(char *p)
{
  int kuoh=0,flag=0;
  for(;*p!='\0';p++)
  {
    if(*p==' ')
    {
      flag++;
      break;
    }
    if(kuoh<0)
    {
      flag++;
      break;
    }
    if(*p=='(')
      kuoh++;
    if(*p==')')
      kuoh--;
    if((*p=='+'||*p=='-'||*p=='*'||*p=='/')&&(*(p+1)=='*'||*(p+1)=='/'||*(p+1)=='+'||*(p+1)=='-'))
    {
      flag++;
      break;
    }
    if(*p=='('&&(*(p+1)>'9'||*(p+1)<'0'&&*(p+1)!='-'))
    {
      flag++;
      break;
    }
    if(*p==')'&&*(p+1)!='+'&&*(p+1)!='-'&&*(p+1)!='*'&&*(p+1)!='/'&&*(p+1)!='\0')
    {
      flag++;
      break;
    }
  }
  if(!flag)
  {
    if(kuoh!=0)
      flag++;
  }
  return(flag);
}

标签: 心情 编程

评论(0) 浏览(6301)

C语言写的一个万年历

2006-9-23 寒川 计算机

#include<string.h>
#include<bios.h>
#include<stdlib.h>
#include<conio.h>
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define ESC 0x011b
#define ENTER 0x1c0d
char *a[4]={"left","right","up","down"};
int num=3000,key,year=2006;
int i,j,first=3,w=30;
char *month[12]={"Junuary","February","March","April","May","June","July","August","September","October","November","December"};
int mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int fd[12]={0};

int getkey()
{char lowbyte;
 int press;
 while(bioskey(1)==0)
    press=bioskey(0);
 lowbyte=press&0xff;
 press=press&0xff00+toupper(lowbyte);
 return(press);
}

void sch()
{window(22,24,30,24);
 textbackground(GREEN);
 clrscr();
 textcolor(15);
 cprintf("\n Search");}


void sch_0()
{window(22,24,30,24);
 textbackground(GREEN);
 clrscr();
 textcolor(128);
 cprintf("\n Search ");}


 void backk()

 {window(33,24,42,24);
 textbackground(GREEN);
 clrscr();
 textcolor(15);
 cprintf("\n Month1-4");}


 void backk_0()
 {window(33,24,42,24);
 textbackground(GREEN);
 clrscr();
 textcolor(128);
 cprintf("\n Month1-4");}


void left()
{
 window(45,24,54,24);
 textbackground(GREEN);
 clrscr();
 textcolor(15);
 cprintf("\n Month5-8");}


 void left_0()
{
 window(45,24,54,24);
 textbackground(GREEN);
 clrscr();
 textcolor(128);
 cprintf("\n Month5-8");}


void right()
{window(57,24,67,24);
 textbackground(GREEN);
 clrscr();
 textcolor(15);
 cprintf("\n Month9-12");}


void right_0()
{window(57,24,67,24);
 textbackground(GREEN);
 clrscr();
 textcolor(128);
 cprintf("\n Month9-12");}

 

 

 

void iexit()
{window(70,24,77,24);
 textbackground(GREEN);
 clrscr();
 textcolor(15);
 cprintf("\n  Exit");}


void iexit_0()
{window(70,24,77,24);
 textbackground(GREEN);
 clrscr();
 textcolor(128);
 cprintf("\n  Exit");}

 

 


void jiance(int n)
{switch(n)
   {case 0:sch_0();left();right();iexit();backk();break;
    case 1:backk_0();left();right();iexit();sch();break;
    case 2:left_0();right();iexit();sch();backk();break;
    case 3:right_0();left();iexit();sch();backk();break;
    case 4:iexit_0();left();right();sch();backk();break;
    default:exit(0);
    }

}


void quzhi()
{window(8,24,20,24);
 textbackground(15);
 clrscr();
 textcolor(RED);
 cscanf("%d",&year);
}

 

 

 void month1_4()
 {
for(i=0;i<2;i++)
    {window(2+i*w,3,29+w*i,11);
     textbackground(5);
     clrscr();
     textcolor(GREEN);
     cprintf("            %s\n",month[i]);
     gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
     gotoxy(4*(fd[i]-1)+1,3);
     for(j=1;j<=mon[i];j++)
    {cprintf("%3d ",j);
     /*if((first+j-1)%7==0)putchar('\n');*/
     }
     /*first=(first+mon[i])%7;
     if(first==0)first=7;*/
     }
 for(i=2;i<4;i++)
    {window(2+(i-2)*w,13,29+w*(i-2),21);
     textbackground(5);
     clrscr();
     textcolor(GREEN);
     cprintf("            %s\n",month[i]);
     gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
     gotoxy(4*(fd[i]-1)+1,3);
for(j=1;j<=mon[i];j++)
    {cprintf("%3d ",j);
     /*if((first+j-1)%7==0)putchar('\n');*/
     }
     /*first=(first+mon[i])%7;
     if(first==0)first=7;*/
}
}

 


   void month5_8()
 {for(i=0;i<2;i++)
    {window(2+i*w,3,29+w*i,11);
     textbackground(5);
     clrscr();
     textcolor(GREEN);
     cprintf("            %s\n",month[i+4]);
     gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
     gotoxy(4*(fd[i+4]-1)+1,3);
     for(j=1;j<=mon[i+4];j++)
    {cprintf("%3d ",j);
     /*if((first+j-1)%7==0)putchar('\n');*/
     }
     /*first=(first+mon[i+4])%7;
     if(first==0)first=7;*/
}
 for(i=2;i<4;i++)
    {window(2+(i-2)*w,13,29+w*(i-2),21);
     textbackground(5);
     clrscr();
     textcolor(GREEN);
     cprintf("           %s",month[i+4]);
     gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
     gotoxy(4*(fd[i+4]-1)+1,3);
     for(j=1;j<=mon[i+4];j++)
    {cprintf("%3d ",j);
     /*if((first+j-1)%7==0)putchar('\n');*/
     }
     /*first=(first+mon[i+4])%7;
     if(first==0)first=7;*/
}
}


void month9_12()
{for(i=0;i<2;i++)
    {window(2+i*w,3,29+w*i,11);
     textbackground(5);
     clrscr();
     textcolor(GREEN);
     cprintf("            %s\n",month[i+8]);
     gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
     gotoxy(4*(fd[i+8]-1)+1,3);
     for(j=1;j<=mon[i+8];j++)
    {cprintf("%3d ",j);
     /*if((first+j-1)%7==0)putchar('\n');*/
     }
     /*first=(first+mon[i+8])%7;
     if(first==0)first=7;*/
}
 for(i=2;i<4;i++)
    {window(2+(i-2)*w,13,29+w*(i-2),21);
     textbackground(5);
     clrscr();
     textcolor(GREEN);
     cprintf("            %s",month[i+8]);
     gotoxy(1,2);cprintf(" Mon Tue Wed Thu Fri Sat Sun");
     gotoxy(4*(fd[i+8]-1)+1,3);
     for(j=1;j<=mon[i+8];j++)
    {cprintf("%3d ",j);
     /*if((first+j-1)%7==0)putchar('\n');*/
     }
     /*first=(first+mon[i+8])%7;
     if(first==0)first=7;*/
}
}

 


void calendar(int year)
{int x,cha;
 long day=0;
 window(1,2,80,22);
 textbackground(YELLOW);
 clrscr();
 if(year<2007)
     {for(x=year;x<2007;x++)
   {if((x%4==0&&x%100!=0)||x%400==0)
    day+=366;
    else day+=365;}
       cha=day%7;
       first=(7+1-cha)%7;
       if(first==0)first=7;
       }
 if(year==2007)first=1;
 if(year>2007)
     {for(x=2007;x<year;x++)
  {if((x%4==0&&x%100!=0)||x%400==0)
    day+=366;
    else day+=365;}
       cha=day%7;
       first=(1+cha)%7;
       if(first==0)first=7;
     }
 if((year%4==0&&year%100!=0)||year%400==0)
   mon[1]=29;
 else mon[1]=28;
 fd[0]=first;
 for(j=1;j<12;j++)
    {fd[j]=(fd[j-1]+mon[j-1])%7;
     if(fd[j]==0)fd[j]=7;}
 month1_4();}

 


void jiance2(int n)
{void nian(int year);
 switch(n)
    {case 0:getch( );quzhi();calendar(year);nian(year);break;
     case 1:month1_4();break;
     case 2:month5_8();break;
     case 3:month9_12();break;
     case 4:exit(0);break;
     default:exit(0);}
}

 

void ping()
{clrscr();
 window(1,1,80,1);
 textbackground(RED);
clrscr();
 gotoxy(6,1);
 textcolor(GREEN);
 cprintf("FILE   Record   Link    Help");
 window(2,1,4,1);
 textbackground(0);
 clrscr();
 window(1,2,80,22);
 textbackground(YELLOW);
 clrscr();
 window(1,23,80,25);
 textbackground(BLUE);
 clrscr();
 window(8,24,20,24);
 textbackground(15);
 clrscr();
 sch_0();
 left();
 right();
 iexit();
 backk();
 calendar(2006);
}

 

void copyright()
{clrscr();
 window(15,5,65,15);
 textbackground(RED);
 clrscr();
 textcolor(GREEN);
 cprintf("\n                  Calendar\n");
 gotoxy(1,4);
 cprintf("         My QQ: 331349451 Tel:08135507131\n");
 gotoxy(1,6);
 cprintf("               >September 19th,2006");
 gotoxy(1,8);
 cprintf("      Sichuan University of Scienc and Engineering  ");
 gotoxy(1,10);
 cprintf("             Jingxi Class 2,Grade 2004");
}


void nian(int year)
{window(62,5,78,5);
 textbackground(RED);
 clrscr();
 textcolor(GREEN);
 cprintf("\n    Calendar");
 window(64,7,75,11);
 textbackground(15);
 clrscr();
 textcolor(1);
 cprintf("\n    Year");
 gotoxy(3,4);
 cprintf("%6d",year);
 window(62,13,78,20);
 textbackground(8);
 clrscr();
 textcolor(9);
 cprintf("\n  Copyright(c)");
 gotoxy(1,4);
 cprintf(" Xieyan Wei");
 gotoxy(1,6);
 cprintf(" xieyanwei1985@163.com");
 return;
 }

 


main()
{clrscr();
 window(1,1,80,1);
 textbackground(RED);
 clrscr();
 gotoxy(6,1);
 textcolor(GREEN);
 cprintf("FILE   Record   Link    Help");
 window(2,1,4,1);
 textbackground(0);
 clrscr();
 window(1,2,80,22);
 textbackground(YELLOW);
 clrscr();
 window(1,23,80,25);
 textbackground(BLUE);
 clrscr();
 window(8,24,20,24);
 textbackground(15);
 clrscr();
 copyright();
 sch_0();
 backk();
 left();
 right();
 iexit();
 getch();
 ping();
 calendar(2006);
 nian(2006);
 while(key!=28)
    {if(bioskey(1))key=bioskey(0);
     switch(key)
{case LEFT:num--;jiance(num%5);key=0;break;
 case RIGHT:num++;jiance(num%5);key=0;break;
 case ENTER:jiance2(num%5);key=0;break;
 case ESC:exit(0);
 default:key=0;break;}
     }

}
 

标签: 编程 C

评论(0) 浏览(6920)

二级是狗屎

2006-9-23 寒川 点滴心情

我不是因为没考过2级才这么说。虽然我很想过2级,但是说实在的,就我们这些非计算机专业的学生,过了二级也还是计算机白痴,这可不是吹牛的!什么C语言,什么VB,什么Access,学得要懂不懂的。一点适用价值都没有。但是出去工作企业要看你的计算机等级证书。真不知道那些老板们是怎么想的。其实他们一点都不知道,即使是过了计算机2级的,也没几个能搞出一个多么好的程序来。
  我报了两次计算机了,即使这次能过,我照样说2级是狗屎。这不是吹的!……
  还不如学点有用的计算机基础。比如:Powerpint、 Word、Fontpage、Excel、Auto CAD、Photoshop CS。呵呵~~我觉得这些比起无聊的程序来安逸得多了。

标签: 计算机 学习

评论(0) 浏览(6350)

上网中

2006-9-21 寒川 点滴心情

    又快要2级考试了,不知道这次是否能过?真他妈的难. 好不安逸哦。想认真学习C现在是不可能的了。最近特别喜欢C,但是以前学了都忘了好多。怎么考试?!

 

标签: 心情 学习

评论(0) 浏览(6799)

Powered by emlog 蜀ICP备12030225号

川公网安备 51042102000001号

sitemap