最近复习C语言的时候看到网上有个C语言通讯录的小项目,于是看了下那个程序实现的大概的功能,然后自己也跟着做了个。代码还算简洁,贴上来给有需要的人。

 //
// main.m
// AdressBook
//
// Created by bestkayle on 15/8/8.
// Copyright (c) 2015年 bestkayle. All rights reserved.
// #import <Foundation/Foundation.h>
int amount = ;//联系人数
int num;//输入的指令
int xuhao;//联系人编号
typedef struct Contact {
char name[];
int teleNumber;
}Co;
Co person[] = {
{"kayle",},
};
void addContracts(){
// for (int i = 0; i < 20; i ++) {
// for (int j = i; j < amount; j++) {
// person[j+1] = person[j];
// }
// }
}
void deleteContracts(xuhao){
for (int i = xuhao-; i < amount; i++) {
person[i] = person[i+];
}
}
void fixContracts(xuhao){ }
void displayAll(){
for (int i = ; i < amount; i ++) {
printf("%d.%s %d\n",i+,person[i].name,person[i].teleNumber);
}
}
void searchOne(xuhao){
printf("%d.%s%d\n",xuhao,person[xuhao-].name,person[xuhao-].teleNumber);
}
int main(int argc, const char * argv[]) {
printf("**********************************\n");
printf("****** 欢迎使用通讯录 ************\n");
printf("****** 1. 添加联系人 ************\n");
printf("****** 2. 删除联系人 ************\n");
printf("****** 3. 修改联系人 ************\n");
printf("****** 4. 查看所有联系人 ************\n");
printf("****** 5. 搜索联系人 *************\n");
printf("****** 6. 退出通讯录 *************\n");
printf("***********************************\n");
printf("请按提示进行操作:\n");
while (num != ){
scanf("%d",&num);
switch (num) {
case :
amount ++;
// addContracts();
printf("请输入姓名和电话号码:");
char name[] = {};
int telenumber;
scanf("%s%d",&*name,&telenumber);
strcpy(person[amount-].name,name);
person[amount-].teleNumber = telenumber;
printf("已存入\n");
break;
case :
amount --;
printf("请输入序号:");
scanf("%d",&xuhao);
deleteContracts(xuhao);
break;
case :
printf("请输入序号:");
scanf("%d",&xuhao);
printf("修改联系人请输入1,电话号码请输入2:");
int choose;
scanf("%d",&choose);
if (choose == ) {
char name[] = {};
printf("请输入姓名");
scanf("%s",name);
strcpy(person[xuhao-].name, name);
}
else{
int telenumber;
printf("请输入电话号码");
scanf("%d",&telenumber);
person[xuhao-].teleNumber = telenumber;
}
break;
case :
displayAll();
break;
case :
printf("请输入序号:");
scanf("%d",&xuhao);
searchOne(xuhao);
default:
break;}
if (num == ) {
printf("正在退出...\n");
sleep();
printf("已退出!");
} }
}

C语言做一个通讯录程序(在console里面运行)的更多相关文章

  1. ubuntu下使用C语言开发一个cgi程序

    主要步骤是: 1. 开发一个C程序(在标准输出中输出HTML字符串) 2. 复制到apache2的cgi-bin目录去 3. 在httpd.conf中开启cgi功能(我似乎没用到,也可以使用cgi) ...

  2. C语言做的句柄程序

    以vs2015为例---创建对话框程序  一直下一步,下一步,到最后 通过一个小型程序诸如 microsoft spy++我们可以获悉,窗口中失效按钮的句柄为0x00040AE8,由此我们可以给句柄发 ...

  3. 第一个java程序以及java的运行机制

    课堂要点: 编写第一个java程序以及理解java的运行机制. 1.基本命令介绍: javac命令: 编译java文件得到.class字节码文件 -encoding 参数:指定编译的编码 java命令 ...

  4. 用C语言做一个横板过关类型的控制台游戏

    前言:本教程是写给刚学会C语言基本语法不久的新生们. 因为在学习C语言途中,往往只能写控制台代码,而还能没接触到图形,也就基本碰不到游戏开发. 所以本教程希望可以给仍在学习C语言的新生们能提前感受到游 ...

  5. 用C语言写一个Helloworld_实现第一步编译运行

    编写第一个hello world 创建helloworld.c // 程序头文件 #include <stdio.h> // 主入口函数 int main(int arc, char* a ...

  6. NetAnalyzer笔记 之 三. 用C++做一个抓包程序

    [创建时间:2015-08-27 22:15:17] NetAnalyzer下载地址 经过前两篇的瞎扯,你是不是已经厌倦了呢,那么这篇让我们来点有意思的吧,什么,用C#.不,这篇我们先来C++的 Wi ...

  7. C语言的第一个程序 “hello world!”

    1,C语言的简介        C语言是一门通用计算机编程语言,应用广泛.C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言. ...

  8. (转)如何学好C语言,一个成功人士的心得!

    zidier111发表于 2013-1-26 08:59:05   今 天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了所 ...

  9. 怎样学好C语言,一个成功人士的心得!

    今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了全部的数字化信息,不论是一段程序,一封email,一部电影都是用一连串的 ...

随机推荐

  1. SSH实例(5)

    在src中新建struts.xml文件: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...

  2. 判断时间大小 yyyy-MM-dd 格式

    // yyyy-MM-dd function bigThanToday(someDate){ var date = new Date(); var dateStr = date.getFullYear ...

  3. Hadoop中的InputFormat解析

    1.InputFormat InputFormat是Hadoop平台上Mapreduce输入的规范,仅有两个抽象方法. List<InputSplit> getSplits(), 获取由输 ...

  4. Oracle Pivot学习心得

    今天在做一个查询报表需要将多行的查询结果转换成一行,数据格式如下 ID   Type Parameter Value Machine_NO Operator UpdateTime 1 11111111 ...

  5. RH033读书笔记(14)-Lab 15 Switching Users and Setting a Umask

    Lab 15 Switching Users and Setting a Umask Goal: Become familiar with the use of several essential c ...

  6. 两种设计模式和XML解析

    两种设计模式 1.单例模式 模式的保证步骤:单例(是说在一个类中只能有一个对象)三条件 1.1类构造设置私有  private  Play() { } 1.2 定义一个私有的静态的  类类型  变量 ...

  7. 实验十一 团队作业7---团队项目设计完善&amp;编码测试

    团队软件项目设计完善: 任务1:根据OOD详细设计工作要点,修改完善团队项目系统设计说明书和详细设计说明. <软件设计方案说明书>:https://github.com/cy0325/Te ...

  8. Java核心技术卷一基础技术-第13章-集合-读书笔记

    第13章 集合 本章内容: * 集合接口 * 具体的集合 * 集合框架 * 算法 * 遗留的集合 13.1 集合接口 Enumeration接口提供了一种用于访问任意容器中各个元素的抽象机制. 13. ...

  9. 使用Struts,前台提交给后台的汉字为乱码

    首先产生乱码的根本原因为前台JSP页面和后台Action的编码方式不同! Struts的默认编码方式为UTF-8 JSP的默认编码方式为GB18030 解决方案: 前后台编码方式一致: 结合拦截器的使 ...

  10. 关于ORA-12505, TNS:listener does not currently know of SID given in connect descriptor报错问题解决办法

    1.本机tnsnames.ora 配置如下 test4= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.1 ...