| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1359 人关注过本帖
标题:实在是太有挑战性了,运行失败了,呜呜!创建一个文本文件为输入的字符串排 ...
取消只看楼主 加入收藏
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
结帖率:69.23%
收藏
已结贴  问题点数:20 回复次数:17 
实在是太有挑战性了,运行失败了,呜呜!创建一个文本文件为输入的字符串排序问题 c语言 想到头都快爆了,有没有帮看下的
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void sort(char array[][50],int n);
void explode(char str[],char str2[][50],char c);
int main()
{   
FILE *fp;
int k=0,i;
 char str[100];
 char cl[100];
   char str2[30][50];
if((fp=fopen("d:\\cprogram\\123.txt","w"))==NULL)
 { printf("open file default"); exit(0); }
printf("输入几个字符串:");
scanf("%d\n",&k);
gets(str);
fprintf(fp,"%s",str);
 printf("输入文件成功\n");
if((fp=fopen("d:\\cprogram\\123.txt","r"))==NULL)
{  printf("open the file default");  exit(0); }  
while(fscanf(fp,"%s",cl)>0)      
  printf("%s",cl);     
  explode(cl,str2,' ');// 这个函数用来把c转化为二维数组,方便排序
sort(str2,k);//二维数组排序 printf("输出排序好后的字符串:");  
  for(i=0;i<k;i++)            
puts(str2[i]);   
fclose(fp);  
return 0;}
void sort(char array[][50],int n)  
 {    char temp[100];   
 int i,j,k;   
for(i=0;i<n-1;i++)   
 {      
  k=i;     
   for(j=i+1;j<n;j++)         
  if(strcmp(array[k],array[j])>0)   
        k=j;     
   if(k!=i)      
 {         
  strcpy(temp,array[i]);         
     strcpy(array[i],array[k]);   
         strcpy(array[k],temp);     
   }   
 }
}
void explode(char str1[],char str2[][50],char c)//转化为二维数组,不过正确与否还不确定
{
 char *p;  
int i=0,j=0;
 p=str1;   
 while(*p)
{   if(*p!=c)
       {    str2[i][j+1]=*p;   }  
 else  
{    str2[i][j]='\0';//为字符串加结尾符号;  
     i++;   
     j=0;      
 }   
p++;
 }
 str2[i][j]='\0';

}程序出来没有排序就直接跳出了,怎么修改好
搜索更多相关主题的帖子: c语言 字符串 include 文本文件 default 
2015-01-07 14:17
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 3楼 wp231957
就没有希望了吗
2015-01-07 15:11
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 3楼 wp231957
首先输入几个字符串
写入文件是可以的,不过读取出来到屏幕却不行,就这个可以改改吗?
2015-01-07 15:13
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 6楼 wp231957
不然能不能帮我直接写个简单的,这个我寒假在慢慢改。
写了两天了,,
2015-01-07 15:23
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 7楼 NeQhk
实在是没辙了。。
2015-01-07 15:25
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 8楼 NeQhk
因为我是为几个字符串比较的,
所以才想到用二维数组的
2015-01-07 15:27
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
好的,
主要【是要写一个小型文本编辑器,
然后输入一串有空格的字符串到文件里面,读取出来
对每个字符串排序下,
题目就这样。】
我学c还不是很好,想法有点乱,写的代码也有点乱。
2015-01-07 15:32
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 11楼 NeQhk
编辑器里面的一个排序的功能
2015-01-07 15:33
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 12楼 NeQhk
能写得出来吗?
2015-01-07 15:34
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 13楼 NeQhk
我那段代码里面的一个explode是一个分割的函数
把输入的字符串
保存在一个二维数组里面
然后在对其排序的,
不过失败了,
可以的话你按你的想法写吧,
2015-01-07 15:35
快速回复:实在是太有挑战性了,运行失败了,呜呜!创建一个文本文件为输入的字符 ...
数据加载中...
 
   



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

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