a为函数执行次数+2
目前成都创新互联公司已为上1000家的企业提供了网站建设、域名、网络空间、绵阳服务器托管、企业网站设计、盐山网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
因为c为静态变量,会保存上次函数执行后的值,所以第一次执行c=3,第二次执行c=4,第三次c=5...
这是C语言中的指令。
是无条件跳转到指定的标号位置开始执行程序。
这个指令用起来要慎重,它容易让你的程序变得可读性比较差,日后维护和调试都不方便。
但是有时用一下会显得十分方便。
曾经有建议可以使用大量的这样的语句来对程序惊醒反编译的加密。
举个例子:
//二分查找法//
#
include
void
main()
{
int
a[16],i,num,flag=0,top,bottom,mid;
//定义一个一维数组a[16]用来存放供查找用的数据,但只用a[1]——a[15]//
//num用来放要查找的数据,flag是表示是否找到的开关变量,top表示查找的起始位置,bottom表示查找的终止位置,mid表示top与bottom的中间位置//
char
goon;
//变量goon为'y'或'Y'时表示继续下一轮查找,否则终止程序//
printf("请输入第1个数字:\n");
scanf("
%d",a[1]);
//依次输入第二到第十五个数,并要求输入的数递减//
for(i=2;i=15;i++)
{
printf("请输入第%d个数字:\n",i);
scanf("
%d",a[i]);
if(a[i]=a[i-1])
{
printf("请再次输入,它应该比上一个数小:\n");
scanf("
%d",a[i]);
}
}
//输出刚才输入的数//
printf("你刚才输入的数是:\n");
for(i=1;i=15;i++)
printf("
%d",a[i]);
printf("\n");
//查找循环开始//
do
{
printf("现在请输入你要查找的数:\n");//输入想要查找的数//
scanf("
%d",num);
top=15;
bottom=1;
mid=15/2+1;
if(numa[1]
||
num
0)//如果在规定的范围内,开始二分法查找//
{
if(num==a[mid])//找到所需数据,退出本层循环//
{
printf("你所要查找的数字是第%d个。\n",mid);
flag=1;
}
else
if(numa[mid])//如果要查找的数据比a[mid]大,在前半数组查找//
{
top=mid+1;
mid=(top+bottom)/2;
}
else
//如果要查找的数据比a[mid]小,在后半数组查找//
{
bottom=mid-1;
mid=(top+bottom)/2;
}
}
if(flag==0)//如果未找到数据,输出找不到的信息//
printf("无法找到你要找的数字!\n");
printf("是否继续查找?(Y/N):\n");//询问是否开始下一轮查找//
scanf("
%c",goon);
}while(goon=='y'
||
goon=='Y');
}