标题:调用函数,求指点啊~
只看楼主
zzj447393947
Rank: 1
等 级:新手上路
帖 子:3
专家分:3
注 册:2013-5-26
 问题点数:0 回复次数:4 
调用函数,求指点啊~
#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
void main()
{
    int i,j,sum,zongshu=0,duide=0,fenshu=0;
    char c;
jisuan:    srand(time(NULL));
    i=rand()%100;
    j=rand()%100;
    printf("%d+%d=",i,j);
    zongshu=zongshu+1;
    scanf("%d",&sum);
    if(sum==i+j)
    {
        duide=duide+1;
        fenshu=fenshu+10;
        printf("对了,加10分!\n继续吗?<y,n>");
        c=getche();
        printf("\n");
        if(c=='y')
            goto jisuan;
        else if(c=='n')
        {
            printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);

        
        }
        else
        {
            printf("继续吗?<y,n>");
            goto jisuan;
        }

    }
    else
        printf("错了,不加分!\n继续吗?<y,n>");
        c=getche();
        printf("\n    ");
        if(c=='y')
            goto jisuan;
        else if(c=='n')
        {
            printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);
            goto jisuan;
        }

}


我这个程序运行了下,是正确的,但是我改成以下这个调用函数,为什么就错了呢?怎么改?
void yi()
{
    int i,j,sum,zongshu=0,duide=0,fenshu=0;
    char c;
jisuan:    srand(time(NULL));
    i=rand()%100;
    j=rand()%100;
    printf("%d+%d=",i,j);
    zongshu=zongshu+1;
    scanf("%d",&sum);
    if(sum==i+j)
    {
        duide=duide+1;
        fenshu=fenshu+10;
        printf("对了,加10分!\n继续吗?<y,n>");
        c=getche();
        printf("\n");
        if(c=='y')
            goto jisuan;
        else if(c=='n')
        {
            printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);

        
        }
        else
        {
            printf("继续吗?<y,n>");
            goto jisuan;
        }

    }
    else
        printf("错了,不加分!\n继续吗?<y,n>");
        c=getche();
        printf("\n    ");
        if(c=='y')
            goto jisuan;
        else if(c=='n')
        {
            printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);
            goto jisuan;
        }

}

   



#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
void main()
{
    yi();
}


搜索更多相关主题的帖子: 函数 include void 
2013-05-26 13:55
apull
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:三体星系
等 级:版主
威 望:185
帖 子:1404
专家分:8479
注 册:2010-3-16
得分:0 
尽量不要用goto了。
2013-05-26 16:13
q13678986740
Rank: 4
等 级:业余侠客
帖 子:114
专家分:245
注 册:2012-7-7
得分:0 
#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>        //头文件应该放在函数定义前,函数定义在主函数前面不需要声明函数,如果在主函数之后声明就必须声明函数了
void yi(void)        //虽然没参数不填void也能编译,不过最好带上
{
    int i,j,sum,zongshu=0,duide=0,fenshu=0;
    char c;
jisuan:    srand(time(NULL));
    i=rand()%100;
    j=rand()%100;
    printf("%d+%d=",i,j);
    zongshu=zongshu+1;
    scanf("%d",&sum);
    if(sum==i+j)
    {
        duide=duide+1;
        fenshu=fenshu+10;
        printf("对了,加10分!\n继续吗?<y,n>");
        c=getche();
        printf("\n");
        if(c=='y')
            goto jisuan;
        else if(c=='n')
        {
            printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);

        
        }
        else
        {
            printf("继续吗?<y,n>");
            goto jisuan;
        }

    }
    else
        printf("错了,不加分!\n继续吗?<y,n>");
        c=getche();
        printf("\n    ");
        if(c=='y')
            goto jisuan;
        else if(c=='n')
        {
            printf("您共答了%d道题,答对了%d道题。得分:%d\n按任意键继续\n",zongshu,duide,fenshu);
            goto jisuan;
        }

}

   

void main()
{
    yi();

}
2013-05-26 20:58
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
得分:0 
同意2楼!goto现在用的很少了!

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-05-26 21:36
zzj447393947
Rank: 1
等 级:新手上路
帖 子:3
专家分:3
注 册:2013-5-26
得分:0 
回复 楼主 zzj447393947
goto有什么弊端吗?会出现什么错误,我觉得goto很好用啊
2013-05-26 23:33



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




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

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