| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5132 人关注过本帖
标题:请帮忙看下,如何输入知道文件结束。
取消只看楼主 加入收藏
ybj159687318
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-12-12
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
请帮忙看下,如何输入知道文件结束。
您好!我有两个问题想问您。

第一个问题描述
输入若于书名,每个书名长度不超过100,将书按ASCII顺序,从小到大排序。
输入
输入书名个数不定,直到文件结束为止。
输出
将字符串按ASCII码从小到大排序后输出。
输入样列
Java
Basic
C#
Fortran
Delphi
输出样例
Basic
C#
Delphi
Fortran
Java


我的程序:
#include<stdio.h>
#include<string.h>
#include<malloc.h>
void SortStr(char *a[],int n){
    char b[100],*temp=(char*)malloc(sizeof(char)*200);
    int i,j;
    for(i=0;i<n-1;i++)
       for(j=i+1;j<n;j++)
          if(strcmp(a[i],a[j])>0){
              strcpy(temp,a[j]);
              strcpy(a[j],a[i]);
              strcpy(a[i],temp);
          }
       free(temp);
}
int main(void){
    char p[200],*q[200];
    int i,n=0;
    scanf("%s",p);
    while(p[0]!='#'){
        q[n]=(char*)malloc(sizeof(char)*strlen(p));
        strcpy(q[n],p);
        scanf("%s",p);
        n++;
    }
    SortStr(q,n);
    for(i=0;i<n;i++){
        printf("%s\n",q[i]);
        free(q[i]);
    }   
    return 0;
}

第二个问题描述
输入若于书名,每个书名长度不超过100,将书按ASCII顺序,从小到大排序。
 
请注意:这些书名中可能有“空格”。
输入
第一个为字符串个数m,然后输入m个书名。
输出
将字符串按ASCII码从小到大排序后输出。
输入样列
5
Java
Basic
C#
Fortran
Delphi

输出样例
Basic
C#
Delphi
Fortran
Java

我的程序:
#include<stdio.h>
#include<string.h>
#include<malloc.h>
void SortStr(char *a[],int n){
    char b[100],*temp=(char*)malloc(sizeof(char)*100);
    int i,j;
    for(i=0;i<n-1;i++)
       for(j=i+1;j<n;j++)
          if(strcmp(a[i],a[j])>0){
              strcpy(temp,a[j]);
              strcpy(a[j],a[i]);
              strcpy(a[i],temp);
          }
       free(temp);
}

int main(void){
    char b,p[100],*q[100];
    int i,n;
    scanf("%d",&n);
    getchar();
    if(n>200){
        printf("Overflow!");
        return 0;
    }
    for(i=0;i<n;i++){
        scanf("%s",p);
        q[i]=(char*)malloc(sizeof(char)*strlen(p));
        strcpy(q[i],p);
    }
    SortStr(q,n);
    for(i=0;i<n;i++){
        printf("%s\n",q[i]);
        free(q[i]);
    }   
    return 0;
}

您能帮我看看哪错了吗?
搜索更多相关主题的帖子: 如何 字符串 include 
2015-12-12 20:07
ybj159687318
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-12-12
收藏
得分:0 
可以帮我修改一下吗?
2015-12-13 11:52
ybj159687318
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-12-12
收藏
得分:0 
回复 3楼 hellovfp
可以帮我修改一下吗?
2015-12-13 11:53
ybj159687318
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-12-12
收藏
得分:0 
回复 7楼 wmf2014
可以帮我修改好吗?
还有那个第一题不能输入#来结束,运行时只能输入书名
2015-12-13 17:08
ybj159687318
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-12-12
收藏
得分:0 
flushall();
这个运行不了
2015-12-17 15:37
快速回复:请帮忙看下,如何输入知道文件结束。
数据加载中...
 
   



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

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