用C语言编程程序没有错误为什么结果不对

作者&投稿:吕索 (若有异议请与网页底部的电邮联系)
C语言程序编译没有错误,但是没有结果,为什么啊~

有结果呀,我用的VS2012,如图,LZ是不会用编译器吧,程序调试无误的话结果会闪一下,点执行就能保持住dos窗口了

#include#includeint main(){ int mmm(int x,int y); //函数声明 int x; int y; int z; scanf("%d,%d",&x,&y); //输入时,两数以英文逗号分隔,如:3,5 z=mmm(x,y); //函数调用 printf("max=%d
",z); system("pause"); return 0;}int mmm(int x,int y) //函数定义{ int z; if(x>y)z=x; else z=y; // system("pause"); return(z);}

程序可以运行并不表示程序就是正确的

编译和连接都正确,只能说明编译器对他进行语法等检查

没发现他的错误而已,而既然运行结果是错误的,那就是说明一点

可能是你的算法设计的不当,不能正确的解决问题,这样发生的错误

是运行期错误,在编译连接的过程不会出错的,不过幸好,编译器也为我们

提供了一些解决类似运行期错误的一些调试工具,通过debug,进行单步调

试下,观察变量值,看看是不是你想要的等等解决此类问题,具体如何单步

调试见下面:

不过你先要设置断点,然后按下面操作

在VC++6.0中的单步调试:
调试重要的几个键:
F9在当前光标所在的行下断点,如果当前行已经有断点,则取消断点.
F5调试状态运行程序,程序执行到有断点的地方会停下来.
F10单步执行程序.
CTRL+F10运行到光标所在行.
F11和F10的区别是,如果当前执行语句是函数调用,则会进入函数里面.
SHIFT+F11跳出当前所在函数.
步骤:
1,保存为c或c++文件
2,根据断点调试找到错误处。
3,采用F10或F11单步调试找到精确的错误处。其中f10是跳过函数盗用,f11是进入函数体调试。一般是先用f10,确定函数输入输出是否正确(与自己想的一样),如不一样,则用f11进入函数体一步一步调试。
4,在调试过程中,肯定得监视程序中的变量。在vc6.0的右下角有一个watch窗口,专门用来设置监视变量。具体怎样设置自己体会吧。在调试过程中,鼠标轻轻放在变量上也会显示该变量的值
5,vc6.0专门为调试设置了工具箱以方便调试的进行,打开的方法如下。右键——〉在debug(或调试)选择项的勾勾上。ok

算法不对,运行结果当然不正确!!

你这样问就像是问:我不舒服,怎么回事呢?
实在是......

代码呢?

查看编译消息,如果可以也把代码发上来


C语言编写的程序运行时闪一下就没了是怎么回事?
C语言编写的程序运行时闪一下就没了是设置错误造成的,解决方法为:1、我们以最经典的HELLO WORLD程序为例。2、当我们写完这个程序 编译完成后单击左上角的叹号运行 可以看到一切正常 按下任意按键后窗口才会消失。3、但是我们去生成的目录下面找到这个EXE文件。4、双击运行却发现有个窗口一闪而过。。

C语言编程软件名字叫什么
Visual C++6.0。Microsoft Visual C++是微软公司的C++开发工具,具有集成开发环境(IDE,1998年后,集成到了Visual Studio开发环境),可提供编辑C语言,C++以及C++\/CLI等编程语言。VC++集成了便利的除错工具,特别是集成了微软Windows视窗操作系统应用程序接口、三维动画DirectX API,Microsoft .NET框架。它...

c语言可以编程序,那么c语言又是用什么编出来的呢
还有,一楼兄弟说C语言也是C写的,因此你就迷惑了,仿佛说没有蛋哪来的鸡一样。这里我要说的是,一个语言的编译器可以用任何语言来编写实现(如果用C写C的编译器,不是不可能,但是不可能的是用C语言写第一个C的编译器,也就是说C语言刚从贝尔实验室开发出来的时候,它的编译器很可能是汇编语言...

关于C语言编写程序的一个疑问 高手帮忙看看我的程序哪错了
最后,尽量不要在C语言代码中夹杂中文,虽然我知道你是在做说明,那就正规点用\/\/作注释。不要再写成char verb[100][8]={"开炮",等一百个词}; 养成良好的代码书写习惯也是学习C语言很重要的一环。特别提醒这四个问题,祝你编程方面有所提高。另外说明一声,C语言是认汉字的,你老师说的没错。以...

求C语言编程高手指教。。我的程序错在哪里???运行的时候出现问题_百度...
printf("没有足够的内存空间");exit(0);} printf("请输入这个字符串:"); \/*输入元素的初始值*\/ for(i=0;i<n;i++)scanf("%c",p+i);fflush(stdin); \/* 清除缓冲 *\/ printf("你输入的字符串为:");for(i=0;i<n;i++)printf("%c",p[i]);printf("请输入你要查找的字符...

ug编程和c语言编程哪个难
c语言编程难。因为c语言编程需要具备一定的编程基础,还需要一定的数学基础和英语基础,对程序控制结构、数据类型和程序设计思想有一定的了解,学习过程中需要多动手实践,练习编写程序,掌握编程技巧等,而ug编程UG编程只需要具备数学基础,会涉及到一些简单的算术运算和几何知识,其他也不需要具备,所以c语言...

C语言编程中,若运行结束且没有系统提示信息,说明什么
(1)如果用VC++6.0的话,编译后点那个红色的“!”,即可看到结果,console会停在那里。(2)方法二:在main()函数中最后加上一句 getc(); 即可让console停在那里。

问一下win7中系统自带的C语言编程开发软件在哪?怎么打开?注:所有程序...
你是在360里看到的吧?那个不是C语言开发软件,是支持C语言程序运行的一个系统程序。要用的话还得自己装软件

python与c++编程的区别,哪个更好?
python和C语言。哪个好?两种语言没有好坏之分,学C语言难而python简单,但是先学C语言能更好打基础。毕竟,要做程序员,不能只会一门语言,大多数程序员都需要会至少三门语言的。C语言是你上大学第一门接触的编程语言,可见它的重要性。C语言是一种面向过程的语言,而Python是一种面向对象的解释型...

c++和java哪个效率高(c++和java哪个快)
java与C语言优势对比 java是面向对象的语言,C语言是面向过程的语言,执行效率比C语言低;C语言比java多了指针,不过侧面体现了java的健壮性;java多线程机制使程序能够并行运行,一般用于网络;安全性java比C语言好,java有垃圾回收机制,C语言没有,申请的空间需要手动释放;java通用性好,能够跨平台直接移植...

汾西县19582793781: C语言程序编译没有错误,但是没有结果,为什么啊 -
闳种柏康: 有结果呀,我用的VS2012,如图,LZ是不会用编译器吧,程序调试无误的话结果会闪一下,点执行就能保持住dos窗口了

汾西县19582793781: c语言编程的代码没有错,为什么运行就错了 -
闳种柏康: 如果代码本身没有错误,那么可能就是软件的配置没有弄好,比如各种文件路径等!

汾西县19582793781: C语言:这段程序没有错误但是为什么不能输出东西呢? -
闳种柏康: 楼主这是没有停止的原因,你在最后添上 getch();就能看到结果是,其实printf是打出东西了,不过是因为一闪而过你看不到而已

汾西县19582793781: c语言编程题目没有错误但是运行无反应 -
闳种柏康: #include<stdio.h>#include<math.h> int main() {int score,i,n,t;while(scanf("%d",&n)!=EOF){for(i=1;i<=n;i++) //第一个错误,不是逗号是分号;{scanf("%d",&score);t=score/10;switch(t) //第二个错误点,后面的分号不要添加{ //第三个...

汾西县19582793781: C语言编程中为什么明明没有语法错误也没有逻辑错误的,运行过程中经常遇到程序错误的警告?然后就提示结束 -
闳种柏康: 他是说程序运行过程中出现的错误警告,不是编译时的语法警告.原因也有很多,比如内存超出范围,指针指向了不明地址或者错误地址,比如你的代码里面声明了一个unsigned char *ch的指针,而引用的时候使用ch[10]=0x00;此时运行的结果不一定是你预想的结果,改进方法是将声明改成unsigned char ch[11];

汾西县19582793781: 为什么C语言编程通过但输入是确显示错误 -
闳种柏康: 编程通过 只是说明 你的代码编译没有错误 但不代表你的思路 或者说 你的代码算法是正确的 得到错误的结果 需要逐步去查哪里出问题了 哪里不符预期可以单步调试 或者添加打印.

汾西县19582793781: 为什么 程序 编译通过 也是正确的 但是运行的结果却不是正确的 我用的是VC6 写的C语言 -
闳种柏康: 程序编译通过只能说明你的程序没有语法问题,远不能说明你的程序是正确的,事实上,程序设计的重点在于设计出逻辑正确的程序,而不是没有语法错误的程序.这就相当于“精神病患者也能像人一样活动,但确干不了正事”. 你应该检查你的程序的每一条语句,是不是真的按照你的意思去执行了,只有在逻辑正确的情况下,验证语法才是有意义的.

汾西县19582793781: 用C语言写了一个程序,语法没错,不过不能输出正确的结果,请问是为什么 -
闳种柏康: puts("Please input a number"); 应该是printf(); 你只有if(a[i]>s)这个条件 那么你就需要else 来表示另外一种情况应该怎么解决

汾西县19582793781: 为什么我用C语言编写的程序编译成功没有出错却无法运行呢?求高手指点! -
闳种柏康: 如果你的循环中的i值变化范围没有问题,则修改你的数组定义为:double err[502],B,W[502],W2[502],j,beta[501]; 你的原始定义都少了一个数组元素,会导致下标越界,进而引发运行时错误.

汾西县19582793781: 刚接触c语言,尝试编写的,编译提示没有错误,但程序运算结果不对,求指点... -
闳种柏康: d = a; a = c; c = d; 这几行是要交换a,c的值.既然已经交换了(变成了倒序),那原本是abc的数为何还要按cba倒序输出?改动程序: 要么删掉以上三行,要么输出的时候按a, b, c的顺序来.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网