问题描述
- 能问下我的这个程序为什么运行时间超出了么(关于把一串字符位置颠倒)
-
#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.
解决方案
你的程序有两个问题,一个是在输出的开头多了一个空格,一个是,题目要求,一次性输入所有的句子,然后一次性输出。你的程序是输入一行输出一行。
解决方案二:
测量程序的运行时间
时间: 2024-10-20 11:46:41