2 jian yun rui Jian_Yun_Rui 于 2016.04.18 15:13 提问

能问下我的这个程序为什么运行时间超出了么(关于把一串字符位置颠倒)
c++

#include
#include
#include
using namespace std;
int main()
{
char c[300],a[300];
int b,d=0;
int i,k,j,t,len;
cin>>b;
getchar();//将回车键拿掉
while(b--)
{
gets(c) ;
len=strlen(c);
for(i=0,j=0,t=0;i {
if(c[i]!=' ')a[j++]=c[i];
else {
if(t>0)cout<<" ";
for(k=j-1;k>=0;k--)
{
cout< }
j=0;t++;
}
if(i==len-1)
{
cout for(k=j-1;k>=0;k--)
{
cout<<a[k];
}
cout<<endl;
}

 }  

}

return 0;
}

例如输入
3
olleh !dlrow
m'I morf .udh
I ekil .mca
输出
hello world!
I'm from hdu.
I like acm.

2个回答

caozhy
caozhy   Ds   Rxr 2016.04.18 19:57

你的程序有两个问题,一个是在输出的开头多了一个空格,一个是,题目要求,一次性输入所有的句子,然后一次性输出。你的程序是输入一行输出一行。

Jian_Yun_Rui
Jian_Yun_Rui 这种输入一行再输出一行在oj平台上是可以AC的,还有错误我已经发现了哈,谢谢哈
大约 2 年之前 回复
CSDNXIAON
CSDNXIAON   2016.04.19 21:02

测量程序的运行时间
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
输入一串字符,然后将其颠倒显示出来
输入一串字符,然后将其颠倒显示出来. 如:输入: Hello,显示 olleH. 输入:身份证号码.显示: 码号证份身
字符串顺序颠倒
#include #define MAXLINE 1000 int getline_1(char line[], int maxline); void reverse_1(char s[]); main() {     char line[MAXLINE];     while(getline_1(line,MAXLINE) > 0){              r
1.19 编写函数reverse(s)将字符串s中的字符顺序颠倒过来。使用该函数编写一个程序,每次颠倒一个输入行中的字符顺序。
1. 自己写的, 用的for循环逆序输出。s[i] 已经存储了字符串 不用在输入 且注意输出格式问题。 void reverse(char s[]) { int j, i; //for (i = 0; (c = getchar()) !=EOF && i < MAXLINE - 1; ++i) // s[i] = c; // i = strlen(s); fo
输一串字符串将字符串颠倒输出
今天编了这样一道程序 #include int main() {     char a[50];     printf("Please input a string\n");     scanf("%s",a);     int i;     int len=0;     for (i=0;i     {         if(a[i] =='\0')         {
练习1-19 编写函数 reverse(s),将字符串s 中的字符顺序颠倒过来。使用该函数编写一个程序,每次颠倒一个输入行中的字符顺序。
练习1-19 编写函数 reverse(s),将字符串s 中的字符顺序颠倒过来。使用该函数编写一个程序,每次颠倒一个输入行中的字符顺序。自己的:思路最开始的思路是在函数里新建一个字符数组,将输入的数组反过来存进这个新的数组里,再将新数组里的值赋到原数组中。源代码#include<stdio.h>#define MAXLINE 1000int getline(char s[],int lim);
给定输入的字符串,将字符串中的单词顺序颠倒,但要保持单词的字符顺序。
package Third; import java.util.HashMap; import java.util.Map; import java.util.Scanner; /*  * 给定输入的字符串,将字符串中的单词顺序颠倒,但要保持单词的字符顺序。例如:给定  * input=“changchun university of science and technology”,
1097: 字符串问题
题目Description字符串处理在计算机中有很多复杂的操作,但是这些复杂的操作都是由基本的字符串操作复合而成,要求编写一字符串颠倒的程序,把字符串中的字符颠倒位置。Input输入一字符串(<255)Output按位进行颠倒的结果。Sample InputCOMPUTER Sample OutputRETUPMOC代码块import java.util.Scanner;public class
C语言的字符串倒置问题
#include int main() { char c[] = "hello world"; int len = 0; while (c[len])//此法求出的长度即为字符串的有效长度 { len++;//如果到了字符串的结尾,则不再加1 } printf("%d\n", len); int le = 0; while (c[le++]);//此法求出的长度比字符
第7周 C语言程序设计(新2版) 练习1-19 颠倒字符串中的字符
问题及代码: /*将输入字符串s中的字符颠倒过来*/ #include #define MAXLINE 1000 int getline(char line[],int maxline); void reverse(char s[]); main() { char line[MAXLINE]; //当前输入行 int len; while(
编写函数reverse(s),将字符串s中的字符顺序颠倒过来
//编写函数reverse(s),将字符串s中的字符顺序颠倒过来 //Write a function reverse(s) that reverses the character string s . Use it to write a program that rever