数学建模社区-数学中国
标题:
用c语言写一个通讯录,开贴可能会出现好些问题来求教
[打印本页]
作者:
蕾欧娜
时间:
2015-4-20 10:36
标题:
用c语言写一个通讯录,开贴可能会出现好些问题来求教
废话不多说,先放出第一个问题
: V' G E8 w G) t; e
代码:
5 L7 o6 \0 j' h/ s3 j/ ]8 ~3 a
#include "stdio.h"
& ^+ K8 D/ v3 l$ G$ x; o1 e( T/ ?
#include "conio.h"
& S, r) d) Q! l1 _4 q. \
#include "stdlib.h"
! s! D1 }7 u( U3 V2 E! f Q( F
; r* U$ W: F3 X" f5 L/ x: ^
int add_people();
# M0 O$ F% _0 |
/*void check_people();
/ }7 G* Z# }$ Z5 I6 O, L8 h- G# b+ a
void revise_people();
5 `" j5 G/ ^8 }/ u! U" q& f" G) G
void delete_people();*/
* W+ g7 C4 M1 h* v& R2 s( j y: \
void save_exit();
. r$ v/ E7 q. k; p
; T' T. P. F1 r5 ?$ ]
2 r% J& N2 |' D3 I: I; g: w9 ]
' @1 u8 j# M% N9 n% n& A
main()
; }; p; `" h8 \( F
{
1 W2 g" v9 c4 o: z3 S
int com; /* 定义com变量用作读取操作符*/
+ `; v6 U @9 e: r) C; a
printf("======================Welcome to Message manage system=========================\n");
3 m0 v4 ^8 |# [* s% |
printf("\n");
7 A! v1 T9 x* ?3 r6 t& O- z
printf("===============1.Add contact people 2.Check contact people=================\n");
! ~3 U! |7 N. |9 r2 s- \4 g
printf("\n");
. z- T; e$ V0 x( |6 _. W% `( w3 s
printf("===============3.Revise contact people 4.Delete contact people================\n");
4 l7 }2 v6 Y4 }3 S* |$ |8 }
printf("\n");
% g* ^/ I2 B x; F \; G5 @* G/ d
printf("============================ 5.Save&Exit======================================\n");
/ I4 f& k/ m5 i B7 ]7 M4 a* D- g
scanf("%d",&com);
. C4 f% h: O+ H7 F- S
while(1)
' } a# D% Y" _* B0 [& X
{
4 W: d' d2 i! @5 t, @9 @9 x
switch(com)
& M+ f- I( O. V* j Y5 v4 s& r
{
- x$ X5 a+ |* u: R
case 1:add_people();break;
% ]+ \9 y0 M1 A! l$ U
/*case 2:check_people();break;
- `1 \4 D9 x$ a
case 3:revise_people();break;
0 v, _9 F% @/ i/ Q5 h
case 4:delete_people();break;*/
; u; U+ x- K' Q/ m p
case 5:save_exit();break;
: w, h3 S8 s7 q; o
}
7 k! _+ i" m2 R+ c4 D5 h g
}
0 m0 m. R( e; p6 I4 Y- _
. X4 U" g w$ M0 o) C6 z
. G, F1 ^, U8 R5 x* ]- b: I
}
* M" S; m0 ~% |4 b
+ D+ U' C0 l+ z( B& _! Z9 ~
int add_people()
" k8 e1 n" C# q2 ^# p- p' ?
{
6 e2 n# q. A/ n
FILE *fp;
) Y6 D, Q) B% r: ~
char people,phone,filename[10],temp;
; m2 z# s; X1 i+ t; l K
temp=78;
n+ }4 O1 R5 P: `0 R0 ^
while(1)
- P* e. o% f# H0 N7 |5 _4 ~
{
; O- X& Y* X3 s4 S
printf("输入要存储到的文件名\n");
" b( |/ K1 z# H' X1 R, z0 h& s, [( D
scanf("%s",filename);
2 @! a5 L8 r" D9 O! @
if((fp=fopen(filename,"w"))==NULL)
4 @; @/ C0 X- ~5 `) `/ C
{
5 k, A/ K1 g1 i3 d% }, \! W9 X
printf("无法打开\n");
' ^0 Q' g' X- s
exit(0);
" ]9 G+ `. m% D- V
}
* \% @ _- ?& U! U9 Y
loop: printf("请输入你要保存的联系人(以#结束)\n");
2 ^1 H! N$ H3 N- x- q1 j
people=getchar();
8 \) _ c: k* W
while(people!='#')
- B) \! h3 n% @2 r0 h' V
{
/ D3 F U% F1 ?! J9 L
fputc(people,fp);
3 v0 ]9 t; v9 z2 H6 [7 U
putchar(people);
$ ^& p: |4 Y0 \& b9 b# V9 b
people=getchar();
( s0 D% u1 Y# T
}
2 \! C* b& w; r3 J
printf("请输入要保存的联系人号码(以#结束)\n");
5 _( d) ^% e" T1 b* H0 S1 ]
phone=getchar();
, \, q1 ]7 \$ [4 f( n
while(phone!='#')
: K& N2 Z% _2 {% E6 i
{
# Q6 F; x# x3 D; Q3 |0 z `% S
fputc(phone,fp);
0 `2 I1 x \# w4 h0 x: Z# N" r5 B4 F
putchar(phone);
3 a& d; O* ^' r _: Q4 J& |8 A
phone=getchar();
. \% G* f( N2 J- N
}
2 j. Q* y" ]- B: y
putchar(10);
5 N! b0 r" P+ c# q! T4 g( Q
printf("是否继续添加联系人Y/N\n");
) J7 n. K9 k% y- I1 a
scanf("%s",&temp);
2 r$ c6 ^4 Y+ A
if(temp=='n'||temp=='N')
% D1 O4 }$ [7 r9 m+ w
{
) I9 X' f: U# z8 X( U* |
printf("按下任意键返回主菜单\n");
' v$ Z! g& w0 ?! u" f
getchar();
6 m/ E+ N. l5 |6 `: j8 }
return 0;
4 r9 I) ~' j) M
}else
" U4 ^* a" T$ {: a3 |) G, P
goto loop;
2 O5 p% y! ` Q
}
( | p4 J8 I2 T: H6 M* {8 s# d
fclose(fp);
2 Y$ E; p+ o; b3 z2 ]8 V
return 0;
" R/ W: z7 y; N" f& I4 M
}
7 Z: `: {# c0 k* \, J( h6 t' T
$ q2 w: C: U: g$ F9 |* b6 h
void save_exit()
6 e7 W. a' \( `: H1 ^" l
{
- K" ]7 b# K0 |: r% T
printf("按下任意键退出\n");
0 V( J# t# M, v+ P! r6 }! j8 E
getchar();
5 K, o/ ? I( U9 d
exit(0);
6 p! k, f5 o7 C" |4 n* b0 s$ w) J
}
- l- ~ N1 m4 k$ | Y7 T& Q
问题是新建联系人后按n键我要返回到主函数进行继续选择,该怎么做?
; d; `/ A9 S C& m4 H
2 ~& `1 T+ V2 W2 R
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5