首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C 语言 新手,刚编写程序就出现一个有关问题。代码如下

2012-03-23 
C 语言 新手,刚编写程序就出现一个问题。代码如下。/*test.c*/#include stdio.hint main(void){int result

C 语言 新手,刚编写程序就出现一个问题。代码如下。
/*test.c*/
#include <stdio.h>
int main(void){
int result = dd(3);
printf("result is : %d.\n",&result);
return 0;
}

int dd(int num){
int result = 1;
for(int i=1;i<=num;i++){
result *= result*i;
}
return result;
}

感觉理论中的result应该是6、但结果却是1245060.真没看出哪里有错误

[解决办法]
printf("result is : %d.\n",&result);这个错误了,&result是result的地址,应该改成result
[解决办法]
而且结果应该是12 不是6 要注意你的result *= result*i;如果想输出6,应该改为result = result*i;
[解决办法]
printf("result is : %d.\n",&result);改成printf("result is : %d.\n",result);试试。




[解决办法]
输出不要加地址符号&那样输出的是result变量的地址,不是里面的值。楼上正解

热点排行