| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1596 人关注过本帖
标题:我是菜鸟,我修改不了的错,麻烦看看
只看楼主 加入收藏
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
收藏
得分:0 
p=st1;

天行健,君子以自强不息!!QQ:68660681
2007-07-07 20:14
lishizelibin
Rank: 2
等 级:论坛游民
帖 子:513
专家分:41
注 册:2007-5-10
收藏
得分:0 
你看一下,那个*st1[8]是二维数组
如果p=st1好象有错

惟有学习不断的学习!
2007-07-07 20:17
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
收藏
得分:0 
p=st1[0]  

天行健,君子以自强不息!!QQ:68660681
2007-07-07 20:19
cihren
Rank: 1
等 级:新手上路
帖 子:76
专家分:0
注 册:2007-6-27
收藏
得分:0 

#include<stdio.h>
#include<string.h>

char *st1[8]={"99070101","99070102","99070103","99070104","99070105","99070106","99070107"};

int SeqSearch(char **str1,char k[9])
{
int i,j;
char **p;
p=st1;
for(i=0;i<7;i++)
if(!strcmp(*(p+i),k)) return i;
return(-1);
}

int main()
{
int k;
char ch[9];
printf("input your search number:\n");
scanf("%s",ch);
k=SeqSearch(st1,ch);
if(k+1)
{
printf("\t number\n");
printf("\t%s\n",st1[k]);
}
else
printf("NOT FIND!\n");

getchar();
getchar();

}

为了程序简洁和便于理解使用了字符串比较程序strcmp();
程序中注意一、二维数据的使用


革命尚未成功,同志仍需努力!
2007-07-07 20:36
huangfengchu
Rank: 1
等 级:新手上路
威 望:2
帖 子:274
专家分:0
注 册:2007-5-22
收藏
得分:0 
char **p;我也指针不怎么样,解释下这个谢谢!

深山苦学C语言,终年不见外面世界。
2007-07-07 20:46
amyvmiwei
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-4-4
收藏
得分:0 

[CODE]
#include<stdio.h>
#include <string.h>

char *st1[8]={"99070101","99070102","99070103","99070104","99070105","99070106","99070107"};

int SeqSearch(char **p,char k[9])
{
int i;
for(i=0;i<8;i++)
if(strcmp(*(p+i),k) == 0)
return(i);
return(-1);
}

int main()
{
int k;
char ch[8];
printf("input your search number:\n");
scanf("%s",ch);
k=SeqSearch(st1,ch);
if(k+1)
{
printf("\t number\n");
printf("\t%s\n",st1[k]);
}
else
{
printf("NOT FIND!\n");
}
getch();
}

[/CODE]

2007-07-07 21:17
crazyboy216
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2007-6-28
收藏
得分:0 
haha  
2007-07-08 00:05
crazyboy216
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2007-6-28
收藏
得分:0 

回15楼
*STR1[]是一个指针数组,也就是他里面的元数是指针。要想访问99070101,99070102。。。。。。就得用指向指针的指针
*(P+I)是指访问STR1数组的第I个元素,但别忘了他依然是个指针,所以要用CHAR **P

2007-07-08 00:15
静夜嘶
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2007-7-2
收藏
得分:0 
以下是引用huangfengchu在2007-7-7 20:46:00的发言:
char **p;我也指针不怎么样,解释下这个谢谢!

这是一个二级指针


2007-07-08 02:41
incoolwen
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2007-6-21
收藏
得分:0 
以下是引用lishizelibin在2007-7-7 20:17:46的发言:
你看一下,那个*st1[8]是二维数组
如果p=st1好象有错

二维数组不是这样的```
是 st1[][8] 前面一维可写可来写.
你的*st1[8]是一个指针集了```
用来处理多的字符串比较好用一点


2007-07-08 07:14
快速回复:我是菜鸟,我修改不了的错,麻烦看看
数据加载中...
 
   



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

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