#include <stdio.h>
#include <string.h>
int main()
{
int n;
char a[1001];
while(scanf("%d",&n) != EOF && n != 0)
{
n--;
getchar();
gets(a);
int x = 0;
int h = strlen(a);
for (int i = 0; i < h;i++)
{
if(a[i] == ' '){
for(int j = i-1;j >= x;j--){
printf("%c",a[j]);
}
printf(" ");
x = i + 1;
}
}
for(int m = h - 1; m >= x; m--){
printf("%c",a[m]);
}
printf("\n");
}
return 0;
}
参考一下这篇文章。建议将算法题目发出来。
只发代码的话,很难猜测你的算法写了什么。
你是要把输入的一堆单词全部字母倒过来输出吗?
调试了一下,只要去掉getchar()就可以了
#include <stdio.h>
#include <string.h>
int main()
{
int n;
char a[1001];
int k = 1;
while(scanf("%d",&n) != EOF && n != 0)
{
if (k ==1)
{
getchar();
k++;
}
gets(a);
int x = 0;
int h = strlen(a);
for (int i = 0; i < h;i++)
{
if(a[i] == ' '){
for(int j = i-1;j >= x;j--){
printf("%c",a[j]);
}
printf(" ");
x = i + 1;
}
}
for(int m = h - 1; m >= x; m--){
printf("%c",a[m]);
}
printf("\n");
n--;
}
return 0;
}
这是改之后的,现在是一直报Presentation Error
您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~
ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓
【电脑端】戳>>> https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】 戳>>> https://mall.csdn.net/item/52471?utm_source=1146287632