标题:求5!不知道拿错了,,,小菜我求大神求指导。。。
只看楼主
gou153076842
Rank: 1
来 自:陕西宝鸡
等 级:新手上路
帖 子:11
专家分:0
注 册:2012-11-28
结帖率:100%
已结贴  问题点数:20 回复次数:11 
求5!不知道拿错了,,,小菜我求大神求指导。。。
      题目:求5!用C语言表示。
哎,失败。  写的一个小程序不知道那错了?运行结果不对啊,,,,。



#include<stdio.h>
int main()
{
int i,t;
t=1;
{
for(i=2;i<=5;i++);
t=t*i;
}
printf("%10d\n",t);

return 0;
}

搜索更多相关主题的帖子: C语言 小菜 
2012-12-23 15:39
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:2 
{
for(i=2;i<=5;i++);
t=t*i;
}
哪学的写法?

授人以渔,不授人以鱼。
2012-12-23 15:43
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
得分:2 
就像T版说的{
for(i=2;i<=5;i++);
t=t*i;
}
这种写法是不对的,用到括号括起来的表示括号内的是一个语句块,但是对于楼主的顺序执行显然是不需要的,而for,while,if等语句之后如没有大括号划分语句块的话只有第一个分号前的部分是该函数的执行部分,想楼主这样写就成了for的循环体是空语句了,没有起到效果,将T版帖子中红色部分删除就好了

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-12-23 16:19
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
得分:2 
楼上的都正确,楼主多上机练习练习就能掌握了

I have not failed completely
2012-12-23 20:11
胡沥沥
Rank: 2
来 自:重庆邮电大学
等 级:论坛游民
帖 子:17
专家分:12
注 册:2012-11-5
得分:2 
写法出错,如楼上所言
2012-12-24 12:35
天空微亮
Rank: 1
等 级:新手上路
帖 子:13
专家分:8
注 册:2012-12-19
得分:2 
lz需要多学习下语法
2012-12-24 13:21
gou153076842
Rank: 1
来 自:陕西宝鸡
等 级:新手上路
帖 子:11
专家分:0
注 册:2012-11-28
得分:0 
哦 我知道了

新手上路哦
2012-12-25 23:18
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:2 
#include<stdio.h>
int main()
{
    int i,j=1;
    for(i=1;i<=5;i++)
    {
        j=j*i;   
    }
    printf("%d\n",j);
   return 0;
},不知道为什么,我将楼主的代码复制过我的编译器,修改一下代码却只有一个6,我重新写一遍后却可以了,不知道楼主的代码怎么回事

思考赐予新生,时间在于定义
2012-12-25 23:50
尹金魁2031
Rank: 3Rank: 3
来 自:河南省南阳市
等 级:论坛游侠
帖 子:156
专家分:162
注 册:2012-12-29
得分:0 

陕西的大哥,你只需要改一个地方就行了,那就是在for(i=2;i<=5;i++)后面的分号去掉就行了。你的程序在语法上没有错误,但是在逻辑上有错误。
love云彩大哥,你的程序写对了,也许由于代码的字迹太小,没有看清楚小毛病。
其实,一开始我看了代码,没有运行时,我看着对呀,但是运行时,才发现是老师讲的常犯的错误。
按照山西大哥的程序进行的话,在for(i=2;i<=5;i++);中是这样进行的,i一直自增,到最后i++的值为6,t=t*i的值当然是6了。
2012-12-30 21:18
zhao72349947
Rank: 1
来 自:成都东软学院
等 级:新手上路
帖 子:60
专家分:5
注 册:2012-10-20
得分:0 
程序代码:
#include<stdio.h>
int main()
{
int i,t=1;
for(i=2;i<=5;i++)
t=t*i;
printf("%10d\n",t);
return 0;
}
2012-12-31 16:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-393066-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.165290 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved