| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1890 人关注过本帖
标题:为什么出现运行错误:段错误?(ACM)
取消只看楼主 加入收藏
赤云
Rank: 2
等 级:论坛游民
帖 子:82
专家分:35
注 册:2014-12-29
结帖率:64.71%
收藏
已结贴  问题点数:20 回复次数:0 
为什么出现运行错误:段错误?(ACM)
题目描述
小C很喜欢倒着写单词,现在给你一行小C写的文本,你能把每个单词都反转并输出它们吗?
输入
输入包含多组测试样例。第一行为一个整数T,代表测试样例的数量,后面跟着T个测试样例。
每个测试样例占一行,包含多个单词。一行最多有1000个字符。
输出
对于每一个测试样例,你应该输出转换后的文本。
样例输入
3
olleh !dlrow
I ekil .bulcmca
I evol .mca
样例输出
hello world!
I like acmclub.
I love acm.

问题代码:
#include"stdio.h"
void set(){
    char a[1000];
    char t0,t;
    int i,j;
    int n=0;//记录单词的个数
    //输入一个单词,倒序并输出
    do{
        i=0;
        scanf("%c",&t);//输入每个单词
        while(t!=' '&&t!='\n'){
            a[i++]=t;
            scanf("%c",&t);
            if(t==' ')
                n++;
        }//i的值即为a中所存字符串的长度
        //printf("m=%d",m);
        for(j=0;j<i/2;j++){//吧每个单词倒叙
            t0=a[j];
            a[j]=a[i-j-1];
            a[i-j-1]=t0;
        }
        for(j=0;j<i;j++){
            printf("%c",a[j]);
        }
        if(t!='\n')
            printf(" ");
        if(t=='\n')
            printf("\n");
    }while(n--);
}
int main(){
    int T;
    scanf("%d",&T);
    getchar();
    while(T--)
    {
        set();
    }
    return 0;
}
搜索更多相关主题的帖子: hello include 单词 world 
2015-07-21 10:08
快速回复:为什么出现运行错误:段错误?(ACM)
数据加载中...
 
   



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

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