C语言指针编程题

用户输入10个字符串,用另一个函数对它进行排序,然后输出排好的字符串.我的代码如下,没有语法错误却输不出值,哪位高手帮帮忙修改一下.#include<stdio.h>#i... 用户输入10个字符串,用另一个函数对它进行排序,然后输出排好的字符串.我的代码如下,没有语法错误却输不出值,哪位高手帮帮忙修改一下.#include<stdio.h>
#include<string.h>
void sort(char *str[],int n)
{
char *temp;
int i,j,k;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(strcmp(str[k],str[j])>0)k=j;
if(k!=i)
{
temp=str[i];
str[i]=str[k];
str[k]=temp;
}
}
}
void print(char *str[],int n)
{
int i;
for(i=0;i<n;i++)
printf("%s\n",str[i]);
}
void main()
{
char *str[3];
int i;
for(i=0;i<=2;i++)
{
printf("请输入第%d串字符:",i+1);
scanf("%s",&str[i]);
}
sort(str,3);
print(str,3);
}
展开
 我来答
匿名用户
2013-12-14
展开全部
#include<stdio.h>
#include<string.h>
#define MAX 20
#define NUM 3
void sort(char *str[],int n)
{
char *temp;
int i,j,k;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(strcmp(str[k],str[j])>0)k=j;
if(k!=i)
{
temp=str[i];
str[i]=str[k];
str[k]=temp;
}
}
}
void print(char *str[],int n)
{
int i;
for(i=0;i<n;i++)
printf("str[%d]%s\n",i,str[i]);
}
int main()
{
char str[NUM][MAX],*p[NUM];
int i;
for(i=0;i<3;i++)
{
printf("str[%d]:",i);
scanf("%s",&str[i]);
p[i]=str[i];
}
sort(p,3);
print(p,3);
}
根据你的改了 不知道能不能出来 自己试下
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式