| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1526 人关注过本帖
标题:求大神帮我改改程序,谢谢了。
只看楼主 加入收藏
时间都会给你
Rank: 1
等 级:新手上路
帖 子:80
专家分:0
注 册:2016-12-21
结帖率:75%
收藏
已结贴  问题点数:10 回复次数:8 
求大神帮我改改程序,谢谢了。
图片附件: 游客没有浏览图片的权限,请 登录注册

#include<stdio.h>
#include<string.h>
#define N 5
struct add27xbb
{
    char name[10];
    char tel1[20];
    char tel2[20];
    char addr[15];
    char email[30];
};
     struct add27xbb people[N]={
     {"Jack","13800000000","13800000001","shanghai","Jack@},
     {"Mary","13900000000","13900000001","unknow","Mary@},
     {"John","15100000000","05168320000","beijing","John@},
     {"Smith","15200000000","unknow","unknow","    Rose#},
     {"Rose","15600000000","152000000002","xzit","unknow"}
                          };
main()
{
    char tel[20];
    char tel3[20];
    printf("输入你要查找的电话号码 :\n");
        gets(tel);
    printf("输入你要修改的电话号码:\n");
        gets(tel3);
    int flag=0;
    for(int i=0;i<N;i++)
    {
        if(strcmp(people[i].tel1,tel)==0)
        {
            printf("%s%15s%15s%15s%15s\n","姓名","电话1","电话2","住址","邮箱");
            printf("%s%15s%15s%15s%18s\n",people[i].name,people[i].tel1,people[i].tel2,people[i].addr,people[i].email);
            strcpy(people[i].tel1,tel3);
            puts("修改后的信息是:\n");
            printf("%s%15s%15s%15s%18s\n",people[i].name,people[i].tel1,people[i].tel2,people[i].addr,people[i].email);
            flag=1;
        }
        if(strcmp(people[i].tel2,tel)==0)
        {
            printf("%s%15s%15s%15s%15s\n","姓名","电话1","电话2","住址","邮箱");
            printf("%s%15s%15s%15s%18s\n",people[i].name,people[i].tel1,people[i].tel2,people[i].addr,people[i].email);
            strcpy(people[i].tel2,tel3);
            puts("修改后的信息是:\n");
            printf("%s%15s%15s%15s%18s\n",people[i].name,people[i].tel1,people[i].tel2,people[i].addr,people[i].email);
            flag=1;
        }               
    }
     if(flag==0)
     puts("查找的电话有错,请核对后输入。");
     
     
      
}
这是我对第三题的解法,但是我觉得有两个问题,一是其中一个电话号码是十二位,输入正确的电话号码也不能改对(因为是复制函数),二是有的电话都是unknow,这怎么改?还是我理解错了根本就不用管它们?
搜索更多相关主题的帖子: shanghai beijing include people email 
2016-12-29 15:10
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:2 
找到与输入相同的号码然后修改, 没了啊

早知做人那么辛苦!  当初不应该下凡
2016-12-29 15:31
时间都会给你
Rank: 1
等 级:新手上路
帖 子:80
专家分:0
注 册:2016-12-21
收藏
得分:0 
回复 2楼 炎天
问题是修改号码用strcpy只能是都是11位的号码,但其中有个12位的错误号码啊,这该怎么办?
2016-12-29 15:39
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:1 
将%15s改为%20s看看
2016-12-29 15:51
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:2 
回复 3楼 时间都会给你
这个没问题吧, 输入12位号码, 找到原数据中的12位号码, 用strcpy(

早知做人那么辛苦!  当初不应该下凡
2016-12-29 15:57
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:5 
看图不太清楚,是不是说只是要求修改号码,如果是,那和后面的unknow没有什么关系啊~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-29 18:40
时间都会给你
Rank: 1
等 级:新手上路
帖 子:80
专家分:0
注 册:2016-12-21
收藏
得分:0 
回复 2楼 炎天
我记错了,谢谢了
2016-12-29 18:47
时间都会给你
Rank: 1
等 级:新手上路
帖 子:80
专家分:0
注 册:2016-12-21
收藏
得分:0 
回复 6楼 九转星河
好吧,应该是这样的,谢谢你。
2016-12-29 18:48
时间都会给你
Rank: 1
等 级:新手上路
帖 子:80
专家分:0
注 册:2016-12-21
收藏
得分:0 
回复 4楼 吹水佬
好的,谢谢你。
2016-12-29 18:48
快速回复:求大神帮我改改程序,谢谢了。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023658 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved