分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
C语言问题-如何让程序返回开始,再运行.不自动关闭.
以此程序为例:
#include<stdioh>
#include<mathh>
double X=-1,Y=3;
void main()
{char a;
double f1 (double x1,double x2);
double f2 (double x1,double x2);
printf("割线递归法求根\n\n1求方程一在区间[-1,3]上的根\n2求方程二在区间[-1,3]上的根\n输入选项:");
a=getchar();
switch(a)
{case'1':printf("\n方程1在区间[-1,3]上的根为%f\n\n",f1(X,Y));break;
case'2':printf("\n方程2在区间[-1,3]上的根为%f\n\n",f2(X,Y));
}}
double f1 (double x1,double x2)/割线递归法求根/
{double y1,y2,x0,y0;
y1=2x1x1x1-4x1x1+3x1-6;
y2=2x2x2x2-4x2x2+3x2-6;
x0=(0-y1)(x1-x2)/(y1-y2)+x1;
y0=2x0x0x0-4x0x0+3x0-6;
if(fabs(y0)<1e-5) return x0;
else x1=x0;return f1(x1,x2);
}
double f2 (double x1,double x2)/割线递归法求根/
{double y1,y2,x0,y0;
y1=x1x1x1-8x1-2;
y2=x2x2x2-8x2-2;
x0=(0-y1)(x1-x2)/(y1-y2)+x1;
y0=x0x0x0-8x0-2;
if(fabs(y0)<1e-5) return x0;
else x1=x0;return f2(x1,x2);}
解析:
那我就来评论一下~各位不要见怪丫~
shenxian1021用了goto,虽然goto语句用起来十分方便,想干嘛就干嘛,但是很多程序员都十分痛恨goto语句,因为大规模的程序使用goto的话都很难读,相信楼主看的程序书或者上课老师讲课的话都听说过goto是用“臭名昭著”来形容的吧
ricardokaka和精灵现身de荒野都是while(true)加一个判断,不过大多数程序都是就算第一次进入也要给用户退出的权利吧-。-
如果一定要用户先选一个选项是不是有点霸道。。可能形容的不太准确。ricardokaka不要责怪我丫。。
我比较喜欢精灵的方式。个人见解~
ricardokaka有2个错误
printf("继续按Y,离开按其他键) 应该为printf("继续按Y,离开按其他键"); 少了分号和一个引号
k=getche(); 应该是getch()函数或者getchar()函数,拼写错误
还有,楼主的程序风格不是很好丫。。依据printf写了好多好多东西。。要改哦~
程序中途跳出,和结束是两个不同的概念。
1 要使程序中途跳出,可以使用return语句,跳出该函数。
如
int fun(int n){
int i;
if(n<0) return -1;// 在n为负数下,提前退出该函数。
//执行正常功能。
for(i=0;i<n;i++)
printf("%d ", i);
}
2 要使程序提前结束, 可以调用exit()函数。
如
int fun(int n){
int i;
if(n<0) exit(-1);// 在n为负数下,提前结束程序。
//执行正常功能。
for(i=0;i<n;i++)
printf("%d ", i);
}
3 二者区别:
a) 使用exit函数,会结束整个程序。 而使用return只是结束当前函数,还会到主调函数处继续运行。
b) 在main函数中使用return语句,等效于调用exit函数,同样会结束程序。
c) 调用exit函数时,需要引用头文件stdlibh。
最简单的方式是直接while(1),使用Ctrl+C来结束程序。
智能一点的话,就是使用while(scanf()!=EOF)或while(cin>>)由于不清楚你的输入就省略了,这样的话调试的时候还是需要Ctrl+C或者Ctrl+Z,但是如果是重定向到文件什么的话就会在输入最后一组数据运行完成之后结束程序
1、第一步,打开C语言编译软件,输入你要执行的程序源代码,如下图所示。
2、第二步,代码编写完成之后,依次点击”编译“、”组建“、”执行“三个选项,也可以通过依此右边的三个快捷键完成上述 *** 作,如下图所示。
3、第三步,上述 *** 作完成之后,按”回车键“就可以执行当前程序了,如下图所示。
4、第四步,程序执行成功,确认代码无误之后,单击”文件“->”另存为“,将文件保存到本地文件夹中,如下图所示。
5、第五步,在本地文件夹中找到刚刚保存的文件,发现文件已经保存为一个可执行文件exe格式了,如下图所示。
最简单的方法有两种:
1
while(1)
//数字1,不是字母l
{
//你循环的的程序代码
}
2for(;;)
//括号中是两个分号
{
//你循环的的程序代码
}
比如想一直循环输出HELLO
完整代码为:
#include
void
mian()
{
while(1)
{
printf("HELLO");
}
}
以上就是关于C语言问题-如何让程序返回开始,再运行.不自动关闭.全部的内容,包括:C语言问题-如何让程序返回开始,再运行.不自动关闭.、C语言~~~如何使程序中途结束、跳出~~~、C语言编程的时候,怎么才能让一个程序一直运行下去等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)