C++程序显示没有错误,为什么运行显示不出结果?

#include<iostream>
using namespace std;
int main()
{
char ch;
int a=0,e=0,i=0,o=0,u=0;
while(cin>>ch)
{
switch(ch)
{
case'a':
++a;
break;
case'e':
++e;
break;
case'i':
++i;
break;
case'o':
++o;
break;
case'u':
++u;
break;}
}
cout<<"the number of a \t"<<a<<'\n'
<<"the number of e \t"<<e<<'\n'
<<"the number of i \t"<<i<<'\n'
<<"the number of o \t"<<o<<'\n'
<<"the number of u \t"<<u<<endl;
return 0;
}

你的输入应该是这样的:
输入完所有字符后(可以分多行输入),最后单独一行,按下Ctrl+Z(windows下,linux下是Ctrl+D)键(这时候应该可以看到出现一个^Z),然后回车就可以看到结果了。
例如:
dsahkjfhewoigjoisa
dfadkfjaslkfjdlska
^Z(这里是按Ctrl+Z的结果,不是直接打出来的)。追问

我运行出来了,但是加了两个ctrl+z,这是为什么呢?

追答

只需要一个就可以了吧,但必须是Ctrl+Z是单独在一行上,不然多少个都没有用。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-18
正常情况下程序执行完后屏幕是不会停留的 即一闪而过
如果想要看到结果 可以通过在末尾加输入语句停留屏幕查看运行结果
第2个回答  2019-06-07
语法错误。
case
1:{y=200+(price-1000)*10%
最后的%
你认为是百分之10,但是
C是作为
%运算符的
y=200+(price-1000)*10%
printf("%d\n",
y);
这句话就变成了一句给y的赋值语句
y=200+(price-1000)*10%
printf("%d\n",
y);
修改方式,把%
改成
/100,然后后面加上分号。
第3个回答  2022-08-28
在最前面加一个#include<cstdlib>

再最后面,即return 0;上一行加一个system("pause");就可以了
第4个回答  2012-01-18
你这个程序是干嘛的

C++程序显示没有错误,为什么运行显示不出结果?
语法错误。case 1:{y=200+(price-1000)*10 最后的% 你认为是百分之10,但是 C是作为 %运算符的 y=200+(price-1000)*10 printf("%d\\n", y);这句话就变成了一句给y的赋值语句 y=200+(price-1000)*10% printf("%d\\n", y);修改方式,把% 改成 \/100,然后后面加上分号。

c++程序没有错误 但是运行结果窗口没有内容
少了cout<<语句,或者就是没执行你的cout<<语句,再者就是你的cout<<语句输出的是控制符\\t\\n类似的东西,显示不出来。

为什么在编译C++程序的时候是没有错误的,但是运行的时候就是出不来结 ...
编译通过只是说明没有语法错误,运行不出结果就是你代码逻辑问题了 贴代码看看吧,自己打断点调试一下 while(r=!0)写反了吧, r != 0 否则就成死循环了。。。

C++程序运行没结果?
有可能是程序正在等待输入;有可能是程序中没有输出语句;有可能是程序没有运行到执行输出语句处;………

C++中,编译通过且运行后为什么无法输出
如果是exe文件建立失败,建议你重新新建编译,如果是没有输出你想要的结果或只有黑色版面,那就是你的逻辑错误!

C++builder程序没有显示出错,但运行出来的form是空的……求助
语句的顺序可能倒过来了,设置颜色和画笔的放在前面,把语句放在OnShow事件里,在Create里可能表单还没有建立就画图,是不会有效果的。

devC++程序没错啊,可是为什么运行结果出错?
计算过程中溢出了,long型在32位计算机上表示的最大整数为2的32次方减一,也就是 4294967295

C++程序没错,但不显示结果,我所有的程序都这样
代码有错,当然不显示结果了。已经定义了int a,b,c,后面for语句中又定义int a=1;int b=0;int c=0。修改方法:把3个for语句括号里的int都删掉。

我用Dev-C++编程,程序代码没有错,为什呢运行后不显示结果?
又一个悲剧的,翻译以下就是:runtime_error(运行时错误)程序一切ok 如果是win7专业版或旗舰版64位系统,找到目录下的exe文件,右键--属性--兼容性--以xp兼容模式运行;

C++为什么运行不出结果
调试的话是可以有结果的。但是这里a的计算值被下一个循环覆盖了,输不出来。如果你在if( a==1000*x+100*x+10*y+y) 之后,cout<<"车牌号码为:"<<a<<endl; 之前,在加上一句:a=b*b 就可以输出了。

相似回答