当前位置: 首页 > 知识库问答 >
问题:

用C语言编写的彩票分配程序。出现exe错误

昌栋
2023-03-14

嘿,伙计们,所以我正在为一个类编写这个程序,我在下面发布的作业以及我的程序。我编译了我的程序,似乎没有问题,但是当我运行. exe版本的程序时,它会在用户输入后崩溃,我不知道如何解决这个问题。如果有人能帮我,那就太棒了,谢谢!!!这是c语言的

方向假设您要开发一个玩彩票的程序。该程序随机生成一个两位数的彩票,提示用户输入一个两位数的号码,并根据以下规则确定用户是否中奖:1.如果用户按照准确的顺序匹配彩票,则奖励为10,000美元。2.如果用户输入与彩票匹配,则奖励为3,000美元。3.如果用户输入中的一位数字与彩票中的一位数字匹配,则奖励为1,000美元。

我的程序

#include<stdio.h>
#include<stdlib.h>
void dowork(int num, int *d1, int *d2);

int main()
 {

    int loto,d1l,d2l,num,d1,d2,reward;

    printf("Enter 2 digit number:\n");

 while(scanf("%d",&num != EOF)) 
    {

        loto=rand()%( 100 - 10 ) + 10;

        dowork(num,&d1,&d2);

        dowork(loto,&d1l,&d2l);

            if
                ((d1==d1l)&&(d2==d2l))

                printf(" You have won 10,000$ \n",reward);

            else if 
                ((d1==d2l)&&(d2==d1l))
                printf(" You have won 3,000$ \n",reward);

            else if
                ((d1==d1l) || (d1==d2l) || (d2==d1l) || (d2==d2l))
                printf(" You have won 1,000$ \n",reward);

    }

    return 0;
}   

void dowork(int num, int *d1, int *d2)

{

   *d1 = num /10;
   *d2 = num %10;

}

共有1个答案

袁弘方
2023-03-14
 while(scanf("%d",&num != EOF))

这看起来像是放错了括号——它可能会编译,但几乎肯定不是您想要的。试试这个:

 while(scanf("%d",&num) == 1)

scanf返回成功转换的字段数,因此对于您的问题,您需要将返回值与1进行比较,而不是EOF。

 类似资料:
  • 主要内容:安装C-Free 5.0,运行C语言代码安装C-Free 5.0 C-Free 是一款国产的Windows下的C/ C++ IDE,最新版本是 5.0,整个软件才 14M,非常轻巧,安装简单。 下载地址: C-Free 5.0下载 按照教程中的说明安装并  C-Free 5.0。 需要注意的是:C-Free 5.0 在 XP、Win7 下能够完美运行,在 Win8、Win10 下可能会存在兼容性问题,读者可以先尝试安装,不行的话再使用

  • 主要内容:1) 新建源文件,2) 生成可执行程序,4) 总结前面我们给出了一段完整的C语言代码,就是在显示器上输出“小牛知识库”,如下所示: 本节我们就来看看如何通过 Dev C++ 来运行这段代码。 Dev C++ 支持单个源文件的编译,如果你的程序只有一个源文件(初学者基本都是在单个源文件下编写代码),那么不用创建项目,直接运行就可以;如果有多个源文件,才需要创建项目。 1) 新建源文件 打开 Dev C++,在上方菜单栏中选择“文件 --> 新建 -

  • 主要内容:安装VC6.0,在VC6.0下运行C语言程序,工程文件说明Visual C++ 6.0简称VC或者VC6.0,是微软1998年推出的一款C/C++ IDE,界面友好,调试功能强大。VC6.0是一款革命性的产品,非常经典,至今仍然有很多企业和个人在使用,很多高校也将VC6.0作为C语言的教学基础,作为上机实验的工具。本教程中的代码,也都是在VC6.0下运行通过。 VC6.0 确实有点老了,如果不是学校要求或者项目需要,建议使用 Visual Studio

  • 主要内容:创建工程,CLion运行C语言程序对于安装完成并配置好 C/C++ 编译器的 CLion,就可以直接使用它编写并运行 C 语言程序了。接下来,我们以一段完整的 C 语言代码为例,为大家讲解如何用 CLion 运行这段代码。 创建工程 打开 CLion,选择“新建项目”,如下图所示: 图 1 新建项目 弹出如下窗口,选择要创建的项目类型,这里选择创建“C 可执行文件”项目,该项目遵循的 C语言标准为 C11: 图 2 创建C语言项目

  • 主要内容:1) 创建项目(Project),2) 添加源文件,3) 编写代码并生成程序,4) 总结提示:VS2010 可以在 XP、Win7 和 Win8 下完美运行,但在 Win10 下 可能会有兼容性问题,使用 Win10 的读者建议安装 VS2015 或者 VS2017。 前面我们给出了一段完整的C语言代码,就是在显示器上输出“小牛知识库”,如下所示: 本节我们就来看看如何通过 VS2010 来运行这段代码。 1) 创建项目(Project) 在 VS2010 下开发程序首先要创建项目,

  • 主要内容:1、创建项目,2、添加源文件,3、运行程序,总结继《 VS2022下载地址和安装教程》之后,本节教大家如何用 VS2022 运行 C 语言程序。 例如,在 VS2022 中编写并运行下面的 C 语言代码: 需要经历如下几步操作。 1、创建项目 打开 VS2022,可以看到如下界面: 图 1 进入 VS2022 主界面 点击“继续但无需代码”,跳转到 VS2022 的主界面: 图 2 新建项目 在菜单中依次选择“文件->新建->项目”,在弹出的如