谁教我怎么让C语言程序运行后不能退出?

谁教我怎么让C语言程序运行后不能退出?,第1张

一闪而过是程序自动结束,同时编译器没有提供结果驻留功能。对于此种情况,可以手动在代码结尾增加驻留功能的函数。常用的有如下两种:

1 通过getch函数驻留。

getch会等待从屏幕的输入,在main函数退出前,增加

getch()

调用,系统会等待输入,直到有新的输入,才会退出界面。

2 通过system("pause")来实现驻留。

在main退出前调用

system("pause")

会调用系统的pause函数,提示并实现按任意键退出程序效果。

如果是已经编译好的C语言程序,可以通过开始->运行,键入cmd后回车。

在打开的命令行窗口,将可执行文件拖动到窗口上,再回车即可运行该程序,在此窗口不会出现闪退,从而观察运行结果。

由于该问题仅在windows平台出现,所以以上介绍均针对windows平台。

像这样处理一下!

//---------------------------------------------------------------------------

#include<stdio.h>

#include<math.h>

int main(void)

{

int sex,food,sport,i

double h,hf,hm

printf("本程序为科学测量未成年人成年后的大概身高.\n")

printf("\n")

printf("请以米为单位输入你父亲的身高.\n")

scanf("%lf",&hf)

printf("请以米为单位输入你母亲的身高\n")

scanf("%lf",&hm)

printf("请输入你的性别,男生请输入1,女生请输入0\n")

do

{

scanf("%d",&sex)

getchar()

if(sex>1||sex<0)

printf("输入错误,请重新输入!\n")

}

while(sex>1||sex<0)

if(sex==1)

h=(hf+hm)*0.52

else

h=(hf*0.923+hm)*0.5

printf("从小到大是否经常生病进医院?是请输入1,否请输入0.\n")

do

{

scanf("%d",&i)

getchar()

if(i>1||i<0)

printf("输入错误,请重新输入!\n")

}

while(i>1||i<0)

if(i==1)

h=h-(h*0.02)

else

printf("\n")

printf("营养状况良好请输入1,不好请输入0\n")

do

{

scanf("%d",&food)

getchar()

if(food>1||food<0)

printf("输入错误,请重新输入!\n")

}

while(food>1||food<0)

if(food==1)

h=h*(1+0.015)

else

printf("\n")

printf("请问你经常运动吗?是请输入1,否请输入0\n")

do

{

scanf("%d",&sport)

getchar()

if(sport>1||sport<0)

printf("输入错误,请重新输入!\n")

}

while(sport>1||sport<0)

if(sport==1)

h=h*(1+0.02)

printf("您成年后的身高大概为:%lfm\n",h)

do

{

}while(i=getchar())

}

//---------------------------------------------------------------------------


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12079084.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存