C语言查错,运行有一处错误?

   更新日期:2024.05.17
您好,很高兴回答您的问题。
根据您的错误提示,确认错误原因是fun函数没有定义。这里并不是说fun真的没有定义,而是说c语言中,无论程序多长、无论主函数在哪里,系统都是找到主函数运行。其余的函数只有当在主函数中需要使用时才会被调用,那么在被调用之前,必须要知道该函数的返回值类型、函数名和参数。这里因为主函数在前,程序首先找到主函数运行,在运行中要调用fun函数,但此时还不知道fun函数的一系列情况,所以系统提示没有定义。只要把fun函数的相关内容移到主函数之前即可。或者在主函数之前写上int fun (int a,int b)。

再main函数前加上fun函数的声明。



c的函数不能在声明或定义前调用,你在main里调用了fun,但此时fun还没声明或定义,那当然是不行的,要解决的话,可以在void main前加一个int fun(int a,int b);或者直接把fun定义移到void main前面去。
另外你用的vs6太古老了,建议用devc++之类的。还有就是fun里的代码写的太麻烦的,可以简单的就是
return a>b?a-b:b-a;

  • 18467174286 :c语言编程的代码没有错,为什么运行就错了
    缪伦赖3527 :答:如果代码本身没有错误,那么可能就是软件的配置没有弄好,比如各种文件路径等!
  • 18467174286 :C语言错误,怎么回事?
    缪伦赖3527 :答:这是一条典型的VC/VS的出错信息。一、错误信息解析:1、error,表示这是一条出错信息。 C语言信息一般有error(出错)和warning(警告)两种。 error是编译器遇到了致命错误,无法继续进行编译,必须修改。 warning是C语言编译器找到了一个可能非法的位置,但不影响编译,程序还能运行,有可能运行出错,也...
  • 18467174286 :c语言编程,编译无错,运行出错
    缪伦赖3527 :答:你的程序有3个问题:1 你所谓的运行时问题,即栈溢出(stack overflow), 解决方法是使用c语言的malloc函数(相当于C++的new操作符)在堆上分配内存(当然最后根据输出文件的答案来看,你确实数据给大了)2 逻辑问题,如楼上各楼所说:s[i]=s[i-1]+A[i];而不是s[i]=s[i-1]+s[i];你...
  • 18467174286 :在C语言中运行程序时最常出现的有那些错误?
    缪伦赖3527 :答:要想不在这儿绊跟头,当计算不同类型的数据时,一定注意会不会出现引起错误的自动转换,建议最好加上强制转换。(4)赋值号左边不是变量,例如:若有#define PI 3.14,程序中又出现PI=3.14159。又例如:f(n)=f(n-1)*n(这是典型的数学语言,在C语言中右边的乘积不能正确存储,而左边又是一...
  • 18467174286 :C语言 当写完程序,点运行的时候总是在下面 显示1 error(s), 0 war...
    缪伦赖3527 :答:应该是编译未通过,程序可能存在细小错误,如标点符号是否用的是半角字符、for 后面的大括号是否有落一个、开头的头文件添加等等,你先改改代码,再试一遍,如果确定代码无误,那可能和你安装的运行软件本身有关,你换个电脑也可能就能出结果。这种情况我们上机课时常出现。
  • 18467174286 :编程c语言总是有一个错误
    缪伦赖3527 :答:执行 cl.exe 时出错这种错误一般是由于环境变量设置出错导致的,参见网上的各种教程 http://blog.csdn.net/hongloumengyan/article/details/6112272 实在不会就重装一遍,安装在默认路径里一般就不会有这个问题了
  • 18467174286 :做C语言题,运行出现错误,按什么键能看到出现错误在哪一行?能告我吗...
    缪伦赖3527 :答:双击你错误提醒的那句话“c:\wexam\35000001\prog1.c(1) : fatal error C1083: Cannot open include file: 'stdio.h': No such file or directory”后就会自动跳到错误的那一行。
  • 18467174286 :C语言程序运行错误
    缪伦赖3527 :答:是这样,你的程序有两个问题:1. 逻辑关系错误:如jaybestwang同学所说,while内的逻辑是始终成立的,c不等于'n'就肯定等于'N'嘛,所以改成while(c!='n'&&c!='N') ;2. 程序设计缺陷:如deng576631589同学所说,scanf函数会把缓冲区的回车符也载入,因此第二个scanf函数实际上接收的是你第一...
  • 18467174286 :C语言程序没问题,但总显示一个错误是怎么回事?
    缪伦赖3527 :答:一般是你运行了一次还没有输入数据,所以还在等你输入,可是你又“启动”编译执行了一次。把界面最小化检查一下,看有没有黑框框存在。若有,就是这个问题,把所有黑框框都关闭再运行就可以了……
  • 18467174286 :C语言习题求助,编译通过,运行错误,高分求解
    缪伦赖3527 :答:由于 C 语言本身的最大特点就是:其不仅是编程格式上非常地自由,而且在对其进行编译时也是非常自由的(编译器能够放过去很多它认为不是问题的问题),但自由的同时也给程序员带来了程序调试和运行上的困难。有些错误在编译的时候是能够发现的(例如:程序语法错误)、而有些错误在编译程序的时候却是不...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网