最近复习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. OAuth 2.0 开发完全详解

    --------------------------基础篇------------------------------- I:OAuth 2.0 概述 首先大家来看看国内新浪跟腾讯这两大头对OAuth ...

  2. select p.id, name,ROW_NUMBER() over(PARTITION by name order by p.id) names from person p

    select p.id, name,ROW_NUMBER() over(PARTITION  by name order by p.id) names from person p

  3. 163k地方门户网站系统js小Bug

    163k地方门户网站系统后台在Firefox下无法通过选择区域来获取相对应的地段,IE浏览器下无些问题. Firebug提示错误为: ReferenceError: requestdataquyu i ...

  4. 【CCNA学习笔记】1.思科路由器的基本配置

    教学视频来源:http://edu.51cto.com/lesson/id-10930.html. 怎么安装模块.连交叉线什么的视频里面老师说的很清楚了,我只记录一下IOS配置的命令(虽然一副不明觉厉 ...

  5. 一种基于C51单片机的非抢占式的操作系统架构

    摘 要:从Keil C51的内存空间管理方式入手,着重讨论实时操作系统在任务调度时的重入问题,分析一些解决重入的基本方式与方法:分析实时操作系统任务调度的占先性,提出非占先的任务调度是能更适合于Kei ...

  6. KEIL C51 Call Tree

    KEIL中函数的调用在其帮助文档中有一个详细的解释,引用如下: The Call Tree The best way to demonstrate how the call tree is gener ...

  7. Linux kernel API的查看

    一般来说Linux上查看一些函数API的说明咱们可以man一下.man 2是syscall,man 3是一些库的函数API. 以下是man sections的一些说明 The table below ...

  8. Red Hat Enterprise Linux 7的新功能

     简介红帽最新版本的旗舰平台交付显著增强的可用性. 性能和可靠性. 丰富的新功能为架构. 系统管理员和开发人员提供所需的资源以更高效地进行创新和管理.架构师: 红帽® 企业 Linux® 7 适合 ...

  9. linux下awk命令详解

    简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再 ...

  10. linux下的守护进程及会话、进程组

    守护进程.会话.进程组网上有许多不错的资料.我也是网上搜罗了一堆,加上自己的理解.不敢说原创,只是写在这怕自己忘记罢了.才疏学浅,难免有错误,欢迎大家指正.下面这篇写很不错,大家可以去看看:http: ...