charles123a 2016-04-04 06:22 采纳率: 80%
浏览 1892
已采纳

C语言指针数组查找问题

#include
#include
void main()
{
void input(char name[],int n);
void sort(char *name[],int n);
void print(char *name[],int n);
void search(char *name[],int n);
char *name[4];
int n=4;
input(name,n);
sort(name,n);
print(name,n);
search(name,n);
}
void input(char *name[],int n)
{
int i;
printf("请输入4个字符串:\n");
for(i=0;i<n;i++)
{
name[i]=(char
)malloc(4*sizeof(char));
gets(name[i]);
}
}
void sort(char *name[],int n)
{
char *temp;
int i,j,k;
for(i=0;i {
k=i;
for(j=i+1;j if(strcmp(name[k],name[j])>0)
k=j;
if(k!=j)
{temp=name[i];name[i]=name[k];name[k]=temp;}
}
}
void print(char *name[],int n)
{
int i;
printf("字符串排序结果:\n");
for(i=0;i<n;i++)
printf("%s\n",name[i]);
}
void search(char *name[],int n)
{
char m;
scanf("%s",&m);

}

想补充一个search函数进行输入查找,但是不知道该怎么写,尝试写了几个但都查找失败,请各位大神指导下吧,拜托了,万分感谢!

  • 写回答

3条回答

  • 小灸舞 2016-04-04 07:28
    关注

    楼主要这种?

     void search(char *name[],int n)
    {
        char str[32] = {0};
        printf("请输入要查找的字符串:");
        scanf("%s", str);
        int i;
        for(i = 0; i < n; i++)
        {
            if(strcmp(name[i], str) == 0)
            {
                printf("找到字符串,序号为:%d\n", i + 1);
                return;
            }
        }
        printf("未找到字符串\n");
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 为什么我按照电路图做出的仿真和实物都不能使用
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度
  • ¥15 vue3页面el-table页面数据过多
  • ¥100 vue3中融入gRPC-web