永远把艰辛的付出看作是生命的必要; 即使没有收获的指望,也心平气静地继续耕种!

95/100 C Programs(财务管理)

上一篇 / 下一篇  2008-04-08 00:19:02 / 个人分类:C  

/*【程序95】LUPA开源社区8uuu g w A,\#Z^
题目:家庭财务管理小程序
ydCp5g/W%ZK01.程序分析:
;UR)}w7XN%O1{"t\02.程序源代码:LUPA开源社区o#U'YJ.Q}
3.修改了部分排版LUPA开源社区h'S|{2VD%d%Ow
//4.打算增加一个数据查找,删除功能。。。LUPA开源社区I8F+sy'L:F4TV
money management system*/
|z+Vdd+k_"\0#include "stdio.h"LUPA开源社区3p tf%M-F(Ay/l
#include "dos.h"LUPA开源社区9Fl:pG*Z;I%{
#include <conio.h>
-[VH(M7yaZ-S0void initdisplay(void)
$j-m(d"e5Z0{
9L0x r9y6[;VU0    clrscr();
"W5sL9@4XZ8S1b!{-b0    gotoxy(1,1);
&?*r}2H G|,G0    printf("|-------------------------------------------------------------------------- |");LUPA开源社区qEeX1G {? b"xO
    gotoxy(1,2);LUPA开源社区C8^A Ms~q)S
    printf("| money management system(C1.2) 2008.03 modified by wuhua ----------------- |");LUPA开源社区RkY7t]}fO
    gotoxy(1,3);
9C"jf*X JC0    printf("|---------------------------------------------------------------------------|");LUPA开源社区#MH*C)rCXS WQ
} LUPA开源社区K9D&V4CN*\(L
void main(void)
DAX*| q ``.o u-B5I0{LUPA开源社区zy mI#C&H,J,}
    FILE *fp;LUPA开源社区6G-K-HY)u;b*G@)t `"s
    struct date d;
4Q2?,[5oA cN0    float sum, chm = 0.0;
;sC J8g/Ra,U:F0    int len, i, j = 0;LUPA开源社区7vj4L0n!C*Kg)tU X
    int c;LUPA开源社区8v0i^,u:kAk z9K
    char ch[4] = "", ch1[16] = "", chtime[12] = "", chshop[16], chmoney[8];
:vH1TSV r$I [A0pp: initdisplay();LUPA开源社区zxHwC8w9M
    sum = 0.0;    LUPA开源社区D2f Ky;?
    gotoxy(1,4);LUPA开源社区a/h:L!@Jc n(P
    printf("| --- money records -- | ------------------- cost list -------------------- |");
[@"k(e|l0    gotoxy(1,5);
u }GZz0tsF0    printf("| -------------------- |--------------------------------------------------- |");LUPA开源社区(FZg5wO#?
    gotoxy(1,6);
"r#XXC5] U0    printf("| date: ------------ | |");LUPA开源社区PO!N_A v?
    gotoxy(1,7);LUPA开源社区0X/wU4ooDN2wXiHP
    printf("| | | | |");LUPA开源社区1zrI4Y` [ J
    gotoxy(1,8);
wH@ H+Qw9g4z_0    printf("| ------------------ | |");
%mH`;p+g\P1W#s0    gotoxy(1,9);
,~.b2cE?y L0    printf("| things: ---------- | |");
!ks8B U0ZL{0    gotoxy(1,10);
k uu.s+|/e?o0    printf("| | | | |");
y9jfhHB0    gotoxy(1,11);
2f8n$e Lw0    printf("| ------------------ | |");
Q9S8qoZ!P,c0    gotoxy(1,12);
er&Hm-_O0    printf("| cost: ------------ | |");LUPA开源社区^1m9c h%A3r.c@
    gotoxy(1,13);
uY D R2aq QlOs0    printf("| | | | |");LUPA开源社区&?$ig p5s^TI&n
    gotoxy(1,14);
ni!^)\7kaej0    printf("| ------------------ | |");LUPA开源社区7D t9u~/hDsrS1Z
    gotoxy(1,15);
Er"L U)N b X#j&a0    printf("| | |");LUPA开源社区9D T#Prx$m y4Q#?-h
    gotoxy(1,16);
@B;~Zg]0    printf("| | |");
6XI I&U_,by.u J0    gotoxy(1,17);
9@v(tcxh!gs0    printf("| | |");
+f I9Q1J6^C D"^:N0    gotoxy(1,18);LUPA开源社区;\)D-Ida6R)E,_
    printf("| | |");
y:b%KEKY6Kb0    gotoxy(1,19);LUPA开源社区8V Y1xXzZP1tU
    printf("| | |");
+b Wc{ A Zx0    gotoxy(1,20);LUPA开源社区p I8B8H-ovEdf N
    printf("| | |");LUPA开源社区 }`g&Zb5TWA
    gotoxy(1,21);
"ajh7sd M#{9W0    printf("| | |");LUPA开源社区t N`%ym
    gotoxy(1,22);
4F*yzE3c0    printf("| | |");
N6gO!V%y.mUL#mJ0    gotoxy(1,23);
"l OE At!S%T$GLe0    printf("|---------------------------------------------------------------------------|");LUPA开源社区9NG%N|LZ$ujK|
    i = 0;LUPA开源社区7^rm+z%n*v5`)v5MY
    for(;;)
'QI jR(^Y']/t0    {
#] {8cN!i9T0        gotoxy(3,24);LUPA开源社区"oC&qx[? wVT
        printf(" Tab __browse cost list Esc __quit");
/{YC8I7X[_.]0        gotoxy(13,10);
(NyHk^0        printf("             ");LUPA开源社区/OYY5t5[pPu,J^
        gotoxy(13,13);
)F%o4^D_0        printf("             ");
.]R&}x:Hw Up v7U0        gotoxy(13,7);LUPA开源社区b E4ka/c\
        printf("               ");LUPA开源社区5R"w N$T*x4Gu2u
        gotoxy(13,7);
MyOT1Bs0        getdate(&d);
g1n o$TnM8p0        sprintf(chtime, "%4d.%02d.%02d", d.da_year, d.da_mon, d.da_day);
P$d/f&R*zN%jG0        printf("%s", chtime);
X!wzFP0Jw0        j = 18;LUPA开源社区A C WkXN7le
        ch[0] = getch();LUPA开源社区:k#gX+IG:W6S H;n
        if(ch[0] == 27)//ESC
%d/d[x:x4~w%K o0            break;//exit system        
*t"g Y&v%PV0        strcpy(chshop,"");
ATK*FWd0        strcpy(chmoney,"");
(T(E4@2dgf0        if(ch[0]==9)//TAB
&eCX;d(v7}4MP0        {
R;OnC!n5S0            mm: i = 0;LUPA开源社区you;D!|8ADl
            fp = fopen("home.dat", "r+");
^AK8j"Q9ryk$Gxz0            initdisplay();LUPA开源社区9hH _c V PJ
            gotoxy(3, 24);LUPA开源社区/KCfryR
            printf("                                         ");LUPA开源社区4eF|PH/o w M
            gotoxy(1, 4);LUPA开源社区i^@7waao}'x^ ^
            printf("| -- list records  -- | - list costs - |");LUPA开源社区3Ch"~8f#hm ^h
            gotoxy(1, 5);LUPA开源社区[3N'y+[a{!n`
            printf("| ------------------------------------ |");            
!ti"P$IT0k"j"Z8`0            while(fscanf(fp, "%10s%14s%f\n", chtime, chshop, &chm) != EOF)LUPA开源社区I2j+kF']N~
            {
?#E1R![TH h0                if(i==36)LUPA开源社区 H8~ \*\ E1ntrR;z&v C6Y
                {                    
wy'}:]#b-f&QX0                    getch();
F]%^'[%W9`h3UX)Oo0                    initdisplay();
d Z4BZ9c!x!c}+D0                    gotoxy(3, 24);
c8jMQ/F0                    printf("                                         ");
?p6dx7}'s6tS0                    gotoxy(1, 4);
U1gI_EO?0                    printf("| -- list records  -- | - list costs - |");
DH8Ua!PO0                    gotoxy(1, 5);
cG3ntFP0                    printf("| ------------------------------------ |");            
@vY)km;z:b8U0                    i=0;LUPA开源社区kbT8`Z7i{
                }LUPA开源社区C;P#mM:EmlX4n
                if ((i%36)<17)//<53
8QdT#m}0                {
w T`6wqy3]0                    gotoxy(3,6+i);LUPA开源社区2[2@(M[pwmT%jm:RT
                    printf("                                  ");
:x1\@;D4LF Vf0                    gotoxy(3,6+i);
I@o5@i4I P6h7t0                }
7~(BV$|%M p(DeX0                else if((i%36)>16)//>52
%`Uef$Th(|j0                {
V#{,r:r N9y0                        gotoxy(41, 4 + i - 17);
J5MP:iaV0                        printf("                                ");LUPA开源社区zs9Jfs(n ]spi!UB%]
                        gotoxy(41, 4 + i - 17);LUPA开源社区3ehD:a @t2N
                }
l e d}*~0                i++;
I3mE3K c%hy0                sum = sum + chm;LUPA开源社区"pq7tet&Gwuvg H
                printf("%10s %-14s %6.1f\n",chtime,chshop,chm);LUPA开源社区 _QDLF~d
            }LUPA开源社区t!{D6qb!`QJ
                gotoxy(1, 23);LUPA开源社区%ju$z&Lz
                printf("|---------------------------------------------------------------------------|");
:Irh| S[Y0lQX0                gotoxy(1, 24);
+a:_H$g~1PR0                printf("| |");
5wU!uw E2u0                gotoxy(1,25);LUPA开源社区U5X'k D?0g2Sz7n Y
                printf("|---------------------------------------------------------------------------|");LUPA开源社区 y_$A4M:NYf5rML
                gotoxy(10,24);
T&Np(C Me d\.l0                printf("               ");LUPA开源社区"\2F;^ n'b3c
                gotoxy(10,24);LUPA开源社区m:WoEg|?*T
                printf("total is %8.1f$",sum);LUPA开源社区9H}.PG/?#S
                fclose(fp);
0xNWF2qK1\0                gotoxy(49,24);
$G!`5f a'VX/xy"x#|0                printf("                     ");
8B"Pf9H:^Rr ZN0                gotoxy(49,24);LUPA开源社区:Tb_o.AT'n(I
                printf("press any key to.....");LUPA开源社区.X"z'n)@(i
                getch();LUPA开源社区)veNC;b`
                goto pp;LUPA开源社区:u,} w {,F ^M
        }LUPA开源社区&nP;w4g e8{%a*AM
        else
`!mQ{0O~%r'x `+ts0        {
4N1L!W&sC%az `Cy:E0                    while(ch[0]!='\r')LUPA开源社区n5b/q1rbNO8V
                    {LUPA开源社区h;c!_F!D0G/r vPO;Y
                        if(j<10)
GF'p[BjCw0                        {
0nX{7]H0                            strncat(chtime,ch,1);
9X9agP.sg/rh0                            j++;
Y`\9\ip0Xlh y0                        }LUPA开源社区X2qy&v&U5rq
                        if(ch[0] == 8)
k,Ku|;},G~0                        {
\:C7ier,{/Vq0                        len = strlen(chtime) - 1;LUPA开源社区!A5rBj `$mh~k.J
                        if(j > 15)
1mE"oS(e P0                        {LUPA开源社区@l}?2\A2M&v
                            len = len + 1;LUPA开源社区hH+De/z#~GV`
                            j = 11;
Pamx8N0                        }
u h/O;a8x1gm:_0                        strcpy(ch1, "");
Y$eG#I.cF0                        j = j - 2;LUPA开源社区6z }{&B O}aav i-l
                        strncat(ch1, chtime, len);LUPA开源社区rTa:t{ a$YH
                        strcpy(chtime, "");LUPA开源社区;Q9iUjc@1K$I8c
                        strncat(chtime, ch1, len - 1);LUPA开源社区.`(gr7PSNv7p
                        gotoxy(13, 7);LUPA开源社区)q s8R:n"J.[?
                        printf("               ");
'\(l'j;} q4S'la![0                    }
y'TncS;lc oc_[0                        gotoxy(13,7);
H!bhP cq0                        printf("%s",chtime);
6r.Zw)N_!Z0                        ch[0]=getch();LUPA开源社区#sB#G3T"k"z5_'N1D
                        if(ch[0] == 9)//tab
/g^|g'OtV4C0                            goto mm;LUPA开源社区 ]vd!L`([5o*EL
                        if(ch[0] == 27)//esc
z.LV| Q%ae%Z x?0                            exit(1);
&\,q+Cx[4_0                    }LUPA开源社区'K5U{u}O
                    gotoxy(3,24);
2Ecl5D"b0                    printf("                                                          ");
E/DN Z;k/L3@&~!ws0                            gotoxy(13,10);LUPA开源社区%suI5o^5~1S&i
                            j = 0;LUPA开源社区Pu glzcZ
                            ch[0] = getch();LUPA开源社区9e6Tp%tg
                        while(ch[0]!='\r')
tfOQ(ug0                        {
l"|t bBcbZ-A(p0                            if (j<14)
(r!? DA Uusg y5m0                            {LUPA开源社区O `r7o L4Ta"Z
                                strncat(chshop,ch,1);
?+\/a4G/X6\2wN0                                j++;
%_+Y.l,`[4Or0                            }LUPA开源社区^`GX@"|~%^
                            if(ch[0]==8)
dF? yz$I4Q"rlJ0                            {LUPA开源社区'AP!g8K3dP0F L V
                                len = strlen(chshop) - 1;
8J.FG3q#~0                                strcpy(ch1, "");
*W"Y ~;zMhM0                                j = j - 2;
S$rFYw0                                strncat(ch1, chshop, len);LUPA开源社区+z'Q9t {&aDF
                                strcpy(chshop, "");
p o HKu_0                                strncat(chshop, ch1, len-1);LUPA开源社区F0[I%J];m};i1Cz
                                gotoxy(13, 10);LUPA开源社区 Xg;O3Z$['w6\6m
                                printf("               ");LUPA开源社区Y^4T'f.vQ.P
                            }
FM$M1\Vk"}*m0                            gotoxy(13,10);LUPA开源社区k4];h&Ef7\*`n
                            printf("%s",chshop);
&n,sH/r1T*C0                            ch[0]=getch();
nnc6z?2xKS!RI0                        }LUPA开源社区1[6z sO\2p*l'j
                        gotoxy(13,13);LUPA开源社区 gax,h:M8uD
                        j=0;
h}1rd%U0                        ch[0]=getch();
o!E'go[zD7W @#@a9Q0                    while(ch[0]!='\r')LUPA开源社区Q.G&e2T(d$}*w
                    {
s X&Ys7J]y*p0                        if (j<6)
4Y6v"Df ugR0                        {LUPA开源社区+xZ cp \nL+z
                            strncat(chmoney,ch,1);
8iBZ ~#j,z#e }p5l0                            j++;
| wF^.Fhi0                        }
.gT(On XMD0                        if(ch[0]==8)LUPA开源社区LOD*@owWz5b
                        {
#N p:A6E;T+P0                            len=strlen(chmoney)-1;
'P%B.bO-]0                            strcpy(ch1,"");
5@O4fP(vh0                            j=j-2;
p,L[hN Y4VF)x3c$r$G0                            strncat(ch1,chmoney,len);LUPA开源社区 ^C$Zg5u2n,c
                            strcpy(chmoney,"");LUPA开源社区 l^!D2AEY
                            strncat(chmoney,ch1,len-1);
AYW JvLt m\0                            gotoxy(13,13);
2r.d6meg*i3f0                            printf("      ");LUPA开源社区p.d'h/RSk2\ Q g2h
                        }
9WV!o/S TO+^ g0                        gotoxy(13,13);LUPA开源社区k H7n`-]k5}Lw z;K] X
                        printf("%s",chmoney);
L!BPnx(~b:d0                        ch[0]=getch();LUPA开源社区2dz} @8Wp'?r} j
                    }LUPA开源社区%omU0c2[/CU(e6C
                    if((strlen(chshop) == 0)||(strlen(chmoney) == 0))
;N&TMP u0                        continue;
qW@4@u6V?nI;o/H0                    if((fp=fopen("home.dat","a+")) != NULL);
,j]"~f]ulxn0                    fprintf(fp,"%10s%14s%6s", chtime, chshop, chmoney);LUPA开源社区F#mV"C D.K"X
                    fputc('\n',fp);LUPA开源社区b$L5fi3W(}
                    fclose(fp);LUPA开源社区9j`oZ0bE'}
                    i++;LUPA开源社区"fj#k:A Q{l5j^
                    gotoxy(41,5+i);
F7thh nP*`0                    printf("%10s %-14s %-6s", chtime, chshop, chmoney);
\%F3U[,R-[*}"~6W0                    if(i == 17)LUPA开源社区7m,R.dt8tg.I
                        goto pp;
#KEj*K O0@x|:x3?0        }LUPA开源社区9ci7Z!Pm\l.V,C
    }
"U F6W x0Q't"l&{0}
&]n~3P;z BB*g0LUPA开源社区0{J)tt{:V?

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-08  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 2198
  • 日志数: 43
  • 图片数: 1
  • 文件数: 4
  • 建立时间: 2007-11-07
  • 更新时间: 2008-08-11

RSS订阅

Open Toolbar