小写字母变成大写字母,第一次输入的没问题,但是没有像一般的程序那样结束,而是继续运行,再次输入后第一个字符不是大写,类似于乱码。。。
请问,为什么?
#include<iostream>
using namespace std;
int main()
{
char c;
do
{
c=getchar();
c=c-32;
cout<<c;
}while(c!='\n');
return 0;
}
小写字母变成大写字母,第一次输入的没问题,但是没有像一般的程序那样结束,而是继续运行,再次输入后第一个字符不是大写,类似于乱码。。。
请问,为什么?
#include<iostream>
using namespace std;
int main()
{
char c;
do
{
c=getchar();
c=c-32;
cout<<c;
}while(c!='\n');
return 0;
}
#include<iostream>
using namespace std;
int main()
{
char c;
do
{
c=getchar();
c=c-32;
cout<<c<<'\n';
}while(c!='\n');
return 0;
}
最好前面加个判断是否a-c之间
[此贴子已经被作者于2007-10-29 16:19:13编辑过]
#include<iostream>
using namespace std;
int main(void)
{
char c;
do
{
if((c=getchar())>='a' && c<='z')
{
c-=32;cout<<c;
}
}while(c!='\n');
getchar();
return 0;
}
by 雨中飞燕 C/C++学习讨论群:46520219
[url=http://yzfy.org/]C/C++算法习题(OnlineJudge)论坛:[/url] http://yzfy.org/
Blog: http://yzfy.programfan.com
[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url] [url=http://blog.programfan.com/article.asp?id=24801]请不要写出非int声明的main函数[/url]
[url=http://bbs.bc-cn.net/viewthread.php?tid=181314]C++编写的Windows界面游戏[/url]
[此贴子已经被作者于2007-10-29 22:32:25编辑过]
刚才调试了一下,觉得这个代码的代码很好~~~~谢谢。。。
随心的代码,我也试了一下...不过,我刚开始学C++,不明白你写的代码的~~~~~~原谅我现在的水平吧
另外,还是要谢谢楼上的各位~~~~
我明白了问题的所在!
[此贴子已经被作者于2007-10-29 22:37:03编辑过]