首页 > 编程知识 正文

java编译器,c语言dowhile语句的用法

时间:2023-05-06 00:33:40 阅读:134624 作者:1089

1009反语(20分)给出英语,并要求编写程序以颠倒文中所有单词的顺序输出。 (标题源PAT,入侵删除)输入格式:

测试包含测试用例,每行包含不超过80个字符串。 字符串由多个单词和多个空格组成,其中单词是由英文字母(区分大小写)组成的字符串,单词之间用一个空格分隔,输入时要保证句子末尾没有多余的空格。

输出格式:

每个测试用例的输出占一行,输出相反顺序的句子。

输入样例 :

Hello World Here I Come

输出样例 :

Come I Here World Hello

-----------------------------------------------------------------------------------------------------------------

—我的思路与解决方案—

scanf('%c”,s[i] )每次输入一个字符。 如果想输入字符串,则必须使用循环一次输入一个字符。 可以输入空格,换行符也可以用作输入。 char s[80]; scanf('%s ',s ); 可以输入字符串,但使用空格作为分隔符的gets(s; puts[s]; gets ) )位于----示例1----

for(I=0; i10; I ) scanf('%c ',s[i]; }输入:

012345

67890

{注意共输入了11个字符}

输出:

012345

678

{共输出了9个字符,说明换行也占了一个字符}

----示例2----

char s[80]; scanf('%s ',s );输入:

abcd efgh

{d与e之间有空格}

输出:

abcd

{表明空格是一个结束符,空格不能让存储进去}

----示例3----

char s[80]; gets(s; puts(s;输入:

abc def

ghi

输出:

abc def

{注:表明gets();不可以输入换行(即以换行作为结束),可以输入空格}

总结:

所以scanf('%s )、s ); 每次输入空格时都会移动到下一个空格

请参见----------------------------------------- -

代码: # include stdio.h # includestringusingnamespacestd; int main () chars(80 ); char c; int i=0,j; while(1) scanf ) ' %s ',s[i ]; c=getchar (; if(c=='n ' ) break; }for(j=I-1; j0; j-- ) printf('%s ',s[j]; printf(%s(n ),s[0]; 返回0; }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。