C语言输入一串英文句子,怎么让单词顺序不变,再倒序输出 例如:I love you ,输出为,y
C语言输入一串英文句子,怎么让单词顺序不变,再倒序输出例如:Iloveyou,输出为,youlovei,...
C语言输入一串英文句子,怎么让单词顺序不变,再倒序输出
例如:I love you ,输出为,you love i, 展开
例如:I love you ,输出为,you love i, 展开
3个回答
展开全部
//希望我的回答对你的学习有帮助
#include<stdio.h>
#include<string.h>
typedef struct Stack{
int top;
char c[100000];
}Stack;
void init(Stack &s){
s.top=0;
}
void push(Stack &s,char c){
s.c[s.top++]=c;
}
int pop(Stack &s,char *p){
int i=0;
while(s.top>0&&(*p++=s.c[--s.top])!=' ') {
i++;
}
return i-1;
}
void rev(Stack &s){
char c[100];
while(s.top>0){
int i=pop(s,c);
for(;i>=0;i--){
printf("%c",c[i]);
}
printf(" ");
}
printf("\n");
}
int main(){
Stack s;
init(s);
char c[1000];
gets(c);
for(int i=0;i<strlen(c);i++)
push(s,c[i]);
rev(s);
return 0;
}
展开全部
#include<cstdio>
int n,k = 1;
char a[50][10],c;
int main(){
c = getchar();
while(('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z') || c == ' '){
if(c == ' '){
n = 0;
k++;
c = getchar();
continue;
}
a[k][n++] = c;
c = getchar();
}
for(int i = k;i >= 1;i--)
printf("%s ",a[i]);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
自己多想才是王道
你可以分别定义三个字符串
然后再把顺序反过来输出就行了
你可以分别定义三个字符串
然后再把顺序反过来输出就行了
追问
新手想不出来啊,如果不止这几个单词呢?
追答
学了数组和指针没有啊?
才开始都这样的
慢慢来啊。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询