当前位置:首页 » 编程语言 » c语言自定义函数停止工作
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言自定义函数停止工作

发布时间: 2022-09-18 06:06:29

A. 为什么有时候编写c语言程序,当运行到一个函数时就会关闭程序,不能执行下去

你的函数有致命错误,导致程序崩溃,自动结束了!这是操作系统自己执行的!

B. C语言编程:请问为什么我的自定义函数全部无法执行,急急

main函数中下面这一段
void average1(float score[NUM_std][NUM_course]);
void average2(float score[NUM_std][NUM_course]);
void max(float score[NUM_std][NUM_course]);
void fangcha(float score[][NUM_course]);
调用函数时,应该将参数实例化
average1(score);
average2(score);
max(score);
fangcha(score);
其实将自定义函数参数里的float去掉就行。

C. C语言程序运行后 出现exe停止工作 为什么呢

这种情况叫做 runtime error (运行时错误)。


在 Windows 7 上这样提示:

runtimeerror(运行时错误)就是程序运行到一半,程序就崩溃了。

比如说:

①除以零

②数组越界:inta[3];a[10000000]=10;

③指针越界:int*p;p=(int*)malloc(5*sizeof(int));*(p+1000000)=10;

④使用已经释放的空间:int*p;p=(int*)malloc(5*sizeof(int));free(p);*p=10;

⑤数组开得太大,超出了栈的范围,造成栈溢出:inta[100000000]

D. C语言函数调用然后就程序停止运行

float temp,*q; q没有分配地址,就使用,当然会导致程序异常!

你没有说清楚,你这两个函数计算出的结果要存到哪里,所以,不方便给你改

另:你明明是二维数组,为什么要用一维指针来操作数组呢?

E. C语言问题在自定义函数里调用main函数后如何让程序流停止,void exit(int retval)该如何使用 请高手指点

直接exit(0);就行了 retval是程序退出的返回值 0表示程序是正常结束的

F. 一运行C语言程序 就提示程序已经停止工作

C语言中函数的调用中,参数传递,只能传递数值。如果只是将数值传递过去(接收者是形参),在子函数中变化,形参的变化,不会影响到实参数据的内容。

C中,每定义一个变量,系统都会在内存中给其分配一个空间用来存储数据。而这个空间的编号就是这个变量的地址。当我们将这个地址传递到子函数中,子函数在操作数据时,就会改变这个地址中的数据,这样,实参的数据是会发生变化。

而你程序中,传递的是a b本身的值(可能是0,可能是1,可能是任意的数),scanf()将这两个值当作地址去操作,因此会产生系统错误,导致程序运行停止。

G. c语言中,如何中止一个函数(非main函数),使之不继续运行如何中止main函数呢谢谢了

break终止循环;
exit(1)终止程序;
ctrl+c 可以强制程序终止

H. 急!!C语言中 如何从自定义函数中 完全退出程序

函数名: exit
功 能: 终止程序
用 法: void exit(int status);
程序例:

#include <stdlib.h>
#include <conio.h>
#include <stdio.h>

int main(void)
{
int status;

printf("Enter either 1 or 2\n");
status = getch();
/* Sets DOS errorlevel */
exit(status - '0');

/* Note: this line is never reached */
return 0;
}

I. C语言程序已停止工作是怎么回事

int a,b;
scanf("%d%d",&a,&b);//参数必须是指针(地址)才可以。
scanf()函数要求参数必须是指针类型,即将地址传输到其内,才可以让a , b变量中获取到数据。
如果你学过指针,你就会理解了。

C语言中函数的调用中,参数传递,只能传递数值。如果只是将数值传递过去(接收者是形参),在子函数中变化,形参的变化,不会影响到实参数据的内容。
C中,每定义一个变量,系统都会在内存中给其分配一个空间用来存储数据。而这个空间的编号就是这个变量的地址。当我们将这个地址传递到子函数中,子函数在操作数据时,就会改变这个地址中的数据,这样,实参的数据是会发生变化。
而你程序中,传递的是a b本身的值(可能是0,可能是1,可能是任意的数),scanf()将这两个值当作地址去操作,因此会产生系统错误,导致程序运行停止。

J. C语言编程的时候出现“程序已停止工作”的原因有哪些

编程时候还是运行时候,编程时候那就是软件安装有问题,运行的话就是内存溢出,比如指针用错,数组赋值赋错地址