关于C语言编程过程中遇到的问题?

我想实现一个主函数调用INTSHUCHU(INTA,INTB)函数SHUCHU函数中间用了printf输出了一个表达式可是主函数的参数在js在调用前赋值为0,在每次函数调... 我想实现一个主函数调用 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;同上一样,调用函数
}}}
展开
 我来答
lmzonline
2006-12-18 · 超过27用户采纳过TA的回答
知道答主
回答量:99
采纳率:0%
帮助的人:91.9万
展开全部
#include<stdio.h>
char xianshi[4] = {'+','-','*','/'}; /*定义一个存放符号的数组*/
float jisuan(int i, float a, float b)/*完成对a,b之间的i运算*/
{
switch(i)
{
case 0: return a+b;
case 1: return a-b;
case 2: return a*b;
case 3: return a/b;//此处b不为0的情况未处理
}
}
int shuch(int a,int b,int c,int d) /*完成对四个数字的运算,并且把结果输出*/
{
int i,j,k,shuchu[4],zhongjian1,zhongjian2;
double zhongjian3;
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);
}
}
}
return 0;
}
main ()
{int js=0;
//这一段实现对四个数字的12种排列
js=js+1;
int shuru[] = {5,2,5,3};
shuch(shuru[0],shuru[1],shuru[2],shuru[3]);/*调用函数*/
//这一段实现对最后两个数字的交换
js=js+1;//同上一样,调用函数
printf("%d\n",js);
}
我还是未能完全明白你的意思,我大致猜测了你的意图,修改了一下程序,但并没有发现js有何异常,希望能对你起到一定帮助
wallonvann
2006-12-17 · TA获得超过218个赞
知道小有建树答主
回答量:208
采纳率:0%
帮助的人:184万
展开全部
把程序完整贴出来,这样才能帮你看。但是要注意是不是你的变量有问题,不要随便使用全局变量,再有就是参数压栈别搞错了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fengzhongsha88
2006-12-17
知道答主
回答量:7
采纳率:0%
帮助的人:0
展开全部
把原程序贴出来啊!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
axianzi
2006-12-17 · TA获得超过141个赞
知道答主
回答量:65
采纳率:0%
帮助的人:75.7万
展开全部
把你的源程序完整的写出来看看!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式