buraka
2018-01-03 17:11:55
等
为什么c程序一输入用户就停止工作?
#include <stdio.h> #include <stdlib.h> #include <string.h> int key1; int key2; int *p; struct node { char name[10]; char address[20]; char num[11]; node *next; }; typedef node *pnode; typedef node *xingming; node **phone; node **nam; void hash1(char num[11]) { int i=3; key1=(int)num[2]; while(num[i]!=NULL) { key1+=(int)num[i]; i++; } key1=key1%20; } void hash2(char name[10]) { int i=1; key2=(int)name[0]; while(name[i]!=NULL) { key2+=(int)name[i]; i++; } key2=key2%20; } node *input() { node *temp; temp= new node; temp->next=NULL; printf("请输入姓名:\n"); scanf("%s",temp->name); printf("输入地址:\n"); scanf("%s",temp->address); printf("输入电话:\n"); scanf("%s",temp->num); return temp; } int add() { node *newphone; node *newname; newphone=input(); newname=newphone; hash1(newphone->num); hash2(newname->name); newphone->next =phone[key1]->next; phone[key1]->next=newphone; newname->next=nam[key2]->next; nam[key2]->next=newname; return 0; } void create1() { int i; phone=new pnode[20]; for(i=0; i<20; i++) { phone[i]=new node; phone[i]->next=NULL; } } void create2() { int i; nam=new xingming[20]; for(i=0; i<20; i++) { nam[i]=new node; nam[i]->next=NULL; } } void display() { int i; node *p=NULL; for(i=0; i<20; i++) { p=nam[i]->next; while(p) { printf("%s\n%s\n%s\n\n",p->name,p->address,p->num); p=p->next; } } } void serch_num(char num[]) { hash1(num); node *q=phone[key1]->next; while(q!=NULL) { if(strcmp(num,q->num)==0) break; q=q->next; } if(q) printf("%s\n%s\n%s\n",q->name,q->address,q->num); else printf("无此记录\n"); } void serch_name(char name[10]) { hash2(name); node *q=nam[key2]->next; while(q!=NULL) { if(strcmp(name,q->name)==0) break; q=q->next; } if(q) printf("%s\n%s\n%s\n",q->name,q->address,q->num); else printf("无此记录\n"); } void menu() { printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); printf("@_____________请输入你的选择_______________@\n"); printf("@_______0.添加记录 1.查找记录____________@\n"); printf("@_______2.显示记录 3.清空记录____________@\n"); printf("@________________4.退出系统________________@\n"); printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); } int main() { char num[11]; char name[10]; create1(); create2(); int select; while(1) { menu(); scanf("%d",&select); switch(select) { case 1: { system("cls"); printf("6.号码查询,7.姓名查询\n"); int a; scanf("%d",&a); if(a=6) { printf("请输入电话号码:\n"); scanf("%s",&num); printf("输出查找的信息:\n"); serch_num(num); } else { printf("请输入姓名\n"); scanf("%s",name); printf("输出查找的信息\n"); serch_name(name); } } break; case 2: { system("cls"); printf("显示结果\n"); display(); } break; case 0: { system("cls"); printf("请输入要添加的内容\n"); add(); } break; case 3: { system("cls"); printf("列表已清空\n"); create1(); create2(); } break; default: return 0; } } return 0; }
评论
- 等 最代码怎么获取牛币啊?
- 完 谁来告诉我最代码上线的时间,答对者给5牛币,先来先得
- 等 牛友们,大家好,你们做程序员多久了?现在还好吗?
- 完 在微信打开的页面里进行app下载
- 等 最代码2014年欢乐聚声会
- 完 mysql如何查询表数据并且对3个字段降序的SQL?
- 完 最代码牛币机制改革
- 完 成功的在bae上使用了自定义运行环境 jetty+nginx的组合,大家对jetty+nginx优化有哪些心得?
- 完 进来分享一下各位牛牛是如何加入最代码大家庭的?
- 等 为什么java BufferedImage类处理大图直接抛出内存溢出的异常?
- 等 最代码是否开发手机app客户端?
- 完 java程序员学习哪些java的技术?java有哪些框架?都能做哪方面的开发?
- 等 php格式网页文件怎么运行?
- 等 Java volatile值获取的问题
- 等 前端vue,拦截了登录后台后,返回的token,requests拦截token,但是发送请求的时候,就出现跨越异常
- 等 大专本科计算机科班怎么找到Java工作?
- 等 eclipse怎么把三个java swing游戏项目合成一个项目?
- 完 伙伴们,大家都有什么好的解压方式么,分享一下~
- 完 三四线城市,6、7k,运维工作,索然无味,想去辞职上培训,各位牛牛有什么建议嘛
- 等 jsp页面输入中文变成问号
- 等 JPA在线上运行一段时间后报错Caused by: java.lang.IncompatibleClassChangeError: null
- 等 PHP 这个规则用preg_match_all怎么写
- 等 大佬们,有没有知道Alfresco如何配置LDAP登录呢?
- 等 php的install目录是框架带的吗?
相关问答
最近浏览
asd13606410359 LV10
2020年4月8日
程序小生 LV4
2020年1月9日
srl2881552 LV10
2019年1月8日
dukerchen LV2
2018年6月4日
mayoooooo LV4
2018年3月2日
weifei LV6
2018年2月24日
yangxing033 LV1
2018年1月25日
buyaobilian LV3
2018年1月19日
wenwenlife LV6
2018年1月15日
低调人 LV38
2018年1月13日