导航菜单
首页 >  » 正文

一个c语言程序的执行总是从该函数的main开始,在main函数最后结束? C语言,求三角形面积:从键盘输入三个顶点坐标(x1,y1)(x2,y2)(x3,y3)假设可能构成

一个c语言程序的执行总是从该函数的main开始,在main函数最后结束?

main()函数称之为主函数,一个C程序总是从main()函数开始执行的,但是不一定在main函数最后结束。
在 main() 之后的最后一条语句结束后,程序还要运行一些代码,以正常返回操作系统。main函数执行完后还执行其他语句,
有时候需要有一种与程序退出方式无关的方法来进行程序退出时的必要处理,方法就是用atexit()函数来注册程序正常终止时要被调用的函数,atexit()函数的参数是一个函数指针,函数指针指向一个没有参数也没有返回值的函数,它的原型是:
int atexit(void (*)(void));


扩展资料
main函数的使用
示例:
#include <stdlib.h>
#include <stdio.h>
void fn1(void);
void fn2(void);
int main(void)

atexit(fn1);
atexit(fn2);
printf("main exit ... ");
return 0;
}
void fn1()
{
printf("calling fn1()... ");
}
void fn2()
{
printf("calling fn2()... ");
}
参考资料来源:搜狗百科—main函数

C语言,求三角形面积:从键盘输入三个顶点坐标(x1,y1)(x2,y2)(x3,y3)假设可能构成

#include
#include
float dis(float x1,float y1,float x2,float y2)
{
float dx,dy;
dx=x1-x2;dy=y1-y2;
return sqrt(dx*dx+dy*dy);
}
int main()
{
float x1,x2,x3,y1,y2,y3,p,s,a,b,c;
scanf("%f %f",&x1,&y1);
scanf("%f %f",&x2,&y2);
scanf("%f %f",&x3,&y3);
a=dis(x1,y1,x2,y2);
b=dis(x2,y2,x3,y3);
c=dis(x1,y1,x3,y3);
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("%f ",s);
return 0;
}
运行结果

在C语言程序中,表达式5%2的结果是什么

%在c语言中是求余计算,也就是求余数。
因为5÷2=2......1,所以,5%2=1
同理,因为8÷2=4......0,所以,8%2=0

请编写函数sum,其功能:用while循环语句求1到n之间(包括n)能被3整除的所有整数之和

#include <stdio.h>
int sum(int num)
{
int i=0, result=0;
while (i <= num)
{
if (i%3==0)
result = result+i;
++i;
}
return result;
}
如有2113帮5261助,4102请采1653纳!回!答!

已知 int x=6 ;则执行 x+=x =x*x 语句后,x的值是多少

x的值是-60
它等价于:
x+=(x-=x*x)
先执行x-=x*x,x的值为-30,表达式的值为-30
再执行x+=-30,于是x为-60

C语言怎样编写程序运行完后,不自动结束,而是返回程序的开始???

在需要程序重启的地方加上一句goto sign;
在程序开始的地方加上sign:
//sign只是一个符号可以自行取
不理解可以百度一下goto语句的用法