我想实现一个主函数调用 INT SHUCHU(INT A,INT B)函数
SHUCHU 函数中间用了printf输出了一个表达式
可是主函数的参数在js在调用前赋值为0,在每次函数调用前执行JS=JS+1的操作,可是执行了函数调用之后,JS的值变为了254,
我调用过程是这样的:
SHUCHU(A,B)
不知道这是为什么啊?是不是我的调用过程不对啊??
哦,行,我马上贴出来,但是估计不是变量的问题,也不是什么堆栈的问题了!我猜应该是函数调用出现问题了!由于粘贴不下,我删除了定义变量和函数的部分.但是其中没有用到变量js,有空了加我QQ,查看全部代码!
#include<stdio.h>
char xianshi[3]; /*定义一个存放符号的数组*/
int jisuan/*完成对a,b之间的i运算*/
int shuch(int a,int b,int c,int d) /*完成对四个数字的运算,并且把结果输出*/
{shuchu[0]=a;shuchu[1]=b;shuchu[2]=c;shuchu[3]=d;
for(i=0;i<=3;i++)
{zhongjian1=jisuan(i,shuchu[0],shuchu[1]);
for( j=0;j<=3;j++)
{zhongjian2=jisuan(j,zhongjian1,shuchu[2]);
for(k=0;k<=3;k++)
{zhongjian3=jisuan(k,zhongjian2,shuchu[3]);
printf("%d %c %d %c %d %c %d=%f\n",shuchu[0],xianshi[i],shuchu[1],xianshi
[j],shuchu[2],xianshi[k],shuchu[3],zhongjian3);}}}}
main ()
{int js=0;
这一段实现对四个数字的12种排列
js=js+1;
shuch(shuru[0],shuru[1],shuru[2],shuru[3]);/*调用函数*/
这一段实现对最后两个数字的交换
js=js+1;同上一样,调用函数
}}}