您的位置:首页 > 其它

字符串逆序输出&scanf() ,gets()对空格的区别

2014-01-18 11:24 411 查看
/*
* 程序的版权和版本声明部分:
* Copyright (c) 2014,郑州大学SIAS国际学院
* 作    者:  王  杰
* 完成日期:2014 年 1 月 18 日
*
* 对任务及求解方法的描述部分:
* 输入描述: 略或见注释、总结
* 问题描述: 略或见注释、总结
* 程序输出: 略或见注释、总结
* 问题分析: 略或见注释、总结
* 算法设计: 略或见注释、总结
*/

#include<stdio.h>
#include<string.h>  //不加string头文件可以编译成功,但在OJ上不通过
int main()
{
int n,i;
char str[43],str1[43];
scanf("%d",&n);
while(n--){
scanf("%s",str);
scanf("%s",str1);
strcat(str,str1);
for(i=strlen(str)-1;i>=0;i--){
if(str[i]>=97 && str[i]<=122)
printf("%c",str[i]);
}
printf("\n");
}
return 0;
}

运行结果:



scanf() & gets() & strlen() :

#include<stdio.h>
int main()
{
char str[45],str1[45];

scanf("%s",str);
scanf("%s",str1);
strcat(str,str1);
printf("%s\n",str);
printf("%d\n",strlen(str)); //不包括\0 , 输入”qwe rty“,输出6

/*
gets(str);
puts(str);
printf("%d\n",strlen(str)); //不包括\0 , 输入“qwe rty”,输出7
*/

/*
总结:两种形式输入字符串的不同,
scanf("%s",str) 遇到空格就断
puts() 连空格也送进数组里
strlen的长度问题
*/

return 0;
}


测试结果:





总结:见注释。对于不太清楚的东西,最好的方法就是测试一下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: