【发布时间】:2011-03-02 17:15:59
【问题描述】:
#define NUMLEG 7
int Search_type(char leg_type[6][10], int travel_int[6][15], int trip_num);
c = Search_type(type,leg_type, travel_int, trip_num);
if (c == -1)
printf("Destination not found.\n");
else
printf("Destination Found \nDestination Name:%s", travel_name[c]);
int Search_type( char type, char leg_type[6][10], int travel_int[6][15], int trip_num)
{
int i, n;
char target;
getchar();
printf("Please enter travel type you wish to search by:");
scanf("%c", &target);
for (i =0; i <trip_num; i++)
{
for ( n = 0; n < travel_int[i][NUMLEG]; n++)
{
if( leg_type[i][n] == target)
{
return i;
}
}
return -1;
}
}
这是我目前正在从一个项目中处理的一个功能的抄袭,由于某种奇怪的原因,我似乎无法正确搜索它,我知道它不是代码的其余部分,而是这个区域因为所有其他功能都可以正常工作。所以我决定把它从代码中分离出来并测试它。
我似乎无法让它在 1 行之后进行搜索:
travel_int[i][NUMLEG] 包含腿数 leg_type 是我存储每条腿的字符的地方
我希望它搜索 leg_type 直到找到指定的字符。没有指针。
编辑
例如 旅行#:1 目的地名称:奥斯汀 腿(#1):A 腿(#2):T
旅行#:2 目的地名称:佛罗里达 腿(#1):S 腿(#2):F
所以
行程数 = 2
travel_int 存储 2 个行程,每个行程有 2 条腿
行程编号的 2 种行程类型中的行程类型存储
当我输入 A 或 T 时,它会按原样打印出 Austin,但是当我输入 S 或 F 时,它会返回未找到的目的地 =/。我是在搜索错误,还是打印语句错误。或者是我的回报-1;。 (我会放代码,但它有点长..)
【问题讨论】:
-
没有什么可以从解释或代码解释。请描述这些数组包含什么,您要搜索什么以及这个目标包含什么。
标签: c