重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
main()
创新互联建站专注于企业全网整合营销推广、网站重做改版、龙海网站定制设计、自适应品牌网站建设、成都h5网站建设、商城系统网站开发、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为龙海等各大城市提供网站开发制作服务。
{
int result; /*运算的结果*/
printf("欢迎使用我们的计算器:\n");
while(1)
{
token = getchar(); /*载入第一个符号*/
result = low(); /*进行计算*/
if( token == '\n' ) /* 是否一行结束 */
printf( "The answer is : %d\n", result );
else
{
printf( "Unexpected char!");
exit(1); /* 出现了例外的字符 */
}
scanf("%d",result);
}
return 0;
}
因为main函数也可以返回值啊,而且一般来说main函数都写成
int main(...)
这个样子。
main函数的返回值是交给程序调用者的,一般来说返回0代表程序成功运行了。
这样看return main()的意思明白了吧,
“再调用一次main函数,并把下次调用的返回值作为本次的返回值”
由于形成了递归调用,所以会看似循环。
但是,话说回来,这样做不好哦,因为递归的时候,栈空间被不断压缩,终有无法递归下去的时候。建议使用这样的形式:
int main() {
while(1) {
...
}
return 0;
}
不能单纯地使用if,可以配合函数或者goto跳转来实现。比如
int
start
=
1;
int
end
=
100;
int
s
=
0;
//以上是通用定义,我就不写多次了
//第一种方法,用goto
begin:
if(start=end)
{
s
+=
start;
start++;
goto
begin;
}
//第一种方法结束
//第二种方法,函数递归
int
function(int
start,int
end)
{
if(start
=
end)
return
start
+
function(start+1,end);
else
return
0;
}
以上两种方法可以在不使用for和while的前提下实现累加,但是单纯用if是无法实现的。
//用C++写了个效果还算是可以的,你可以改成C试一试
#include iostream
//#include system.h
using namespace std;
void showLine(int n)
{
coutn": *********"endl;
}
void showN(int n)
{
coutn":"endl;
}
void delay(long n)//延时作用
{
long m,k,j,z;
m=k=j=z=n;
for(;n0;n--)
for(;k0;k--)
for(;j0;j--)
for(;z0;z--)
;
}
int main()
{
int i=0;
while(true)
{
//1
if(i%2!=0)
{
showLine(1);
showN(2);
showLine(3);
showN(4);
showLine(5);
showN(6);
showLine(7);
}
else
{
showN(1);
showLine(2);
showN(3);
showLine(4);
showN(5);
showLine(6);
showN(7);
}
//cin.clear();
system("cls");
delay(5000000); //这个自己写的延时函数实在不怎么样,效果还算可以吧
i++;
}
return 0;
}
//改了一下,完美解决
#include iostream
#include windows.h
using namespace std;
#define stl 50 //Sleep函数以毫秒为单位,Sleep(500);表示停半秒
void showLine(int n)
{
coutn": *********"endl;
}
void showN(int n)
{
coutn":"endl;
}
void delay(long n)//延时作用
{
long m,k,j,z;
m=k=j=z=n;
for(;n0;n--)
for(;k0;k--)
for(;j0;j--)
for(;z0;z--)
;
}
int main()
{
int i=0;
while(true)
{
//1
if(i%2!=0)
{
showLine(1);
showN(2);
showLine(3);
showN(4);
showLine(5);
showN(6);
showLine(7);
}
else
{
showN(1);
showLine(2);
showN(3);
showLine(4);
showN(5);
showLine(6);
showN(7);
}
//cin.clear();
system("cls");
//delay(5000000); //这个自己写的延时函数实在不怎么样,效果还算可以吧
Sleep(stl);
i++;
}
return 0;
}