永发信息网

怎么在自定义的函数中使用static静态局部整形变量,计算3的立方值?本人初学试了一下,但不行,请高手指教

答案:3  悬赏:60  手机版
解决时间 2021-11-20 06:29
  • 提问者网友:精神病院里
  • 2021-11-19 08:50
怎么在自定义的函数中使用static静态局部整形变量,计算3的立方值?本人初学试了一下,但不行,请高手指教
最佳答案
  • 五星知识达人网友:你可爱的野爹
  • 2021-11-19 09:23
分号去掉就行了。你这个程序里没用到 静态存储的作用。你只执行了一次函数。

#include

void AddOne()
{
static int ilnt=3;
iint=ilnt*ilnt*ilint;
printf("%d\n",ilnt);
}
int main()
{
printf("值");
AddOne();
return 0;
}追问那怎么用到啊?追答楼上的用到了。
for(i=1;i<=3;i++)
val=AddOne();
这个就是。
第一次 执行AddOne();
运行前ilnt=1;运行后:iInt=3;
第二次执行 运行前:ilnt=3;运行后iInt=9;
第三次执行 运行前:ilnt=9;运行后iInt=27;

.....
以后执行iInt就不是定义的数值了。而是上一次运算的结果 。
全部回答
  • 1楼网友:迷人又混蛋
  • 2021-11-19 11:15
#include

int AddOne()
{
static int ilnt=1;
ilnt=ilnt*3;
return ilnt;
}
int main()
{
int val,i;
for(i=1;i<=3;i++)
val=AddOne();
printf("3的立方为:%d",val);
getchar();
return 0;
}
  • 2楼网友:北方的南先生
  • 2021-11-19 09:56
错了好几个地方。
1)语句后面加分号
2)ilnt ilint iint 不分
都改过来了,见下面的代码:
#include
void AddOne()
{
static int ilnt=3;
ilnt=ilnt*ilnt*ilnt;
printf("%d\n",ilnt);
}
int main()
{
printf("值");
AddOne();
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯