啊哈磊_编程从这里起步

标题: 提示编写成功,但是无法运行 [打印本页]

作者: powaawahyy    时间: 2013-2-11 15:34
标题: 提示编写成功,但是无法运行
#include <stdio.h>
int main()
{
int n=1;
    int long s=0,t=1;
    for(;n<=20;n++)
    {
    t=t*n;
    s=s+t;
    }
    printf("1+2!+3!...+20!=%ld\n",s);
   
}


作者: rosynirvana    时间: 2013-2-11 16:09
你忘了sleep(5000);
作者: 李掌柜    时间: 2013-2-11 16:36
本帖最后由 月光疾风 于 2013-2-11 16:38 编辑

在 printf("1+2!+3!...+20!=%ld\n",s);
后面加一句getch();就成了,呵呵
[mw_shl_code=c,true]#include <stdio.h>
int main(void)
{
int n=1;
int long s=0,t=1;
for(;n<=20;n++)
{
t=t*n;
s=s+t;
}
printf("1+2!+3!...+20!=%ld\n",s);

getch();

return 0;
}[/mw_shl_code]
作者: zuiyouji1    时间: 2013-2-20 10:35
程序少了显示时间,
所以你的程序是成功了,不过窗口闪了一下就关闭了。
注意看的话,应该能看到闪一下。
可以再printf语句后面加上暂停语句,或者sleep语句或者getch语句。
最好在语句后再加上return 0;
表示结束。
作者: uir1393513835    时间: 2013-2-24 18:01
return前面加一个system("pause");
就ok了
作者: uir1393513835    时间: 2013-2-24 18:01
你没有返回值啊!

作者: uir1393513835    时间: 2013-2-24 18:02
#include <stdio.h>
int main()
{
int n=1;
    int long s=0,t=1;
    for(;n<=20;n++)
    {
    t=t*n;
    s=s+t;
    }
    printf("1+2!+3!...+20!=%ld\n",s);
    system("pause");
    return 0;
}

作者: rosynirvana    时间: 2013-2-25 23:34
uir1393513835 发表于 2013-2-24 18:01
你没有返回值啊!

大多数编译器对于主函数没返回值不会报error的
最后生成的程序也能运行

但是没返回值是不好的写法
作者: 逸飞扬_VbCNT    时间: 2017-8-14 19:13
末尾加上  “getch();"就可以了。




欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2