zoukankan      html  css  js  c++  java
  • C语言寒假大作战03

    1.1作业头

    这个作业属于哪个课程 班级链接
    这个作业的要求在哪里 C语言寒假大作战03
    我在这门课程的目标是 学习C 库函数 - rand()随机数的产生;continue,for(),while(),switch-case-default循环的熟练运用;以及函数调用和上传代码至码云
    作业正文 (https://www.cnblogs.com/chenyiAndy/p/12300567.html)
    参考文献 随机数rand

    2.2设计思路和遇到的问题

    设计思路

    心路历程:开始做的时候,没有什么思路,光想着怎么做好这个随机数,而没有付诸实践,主要是不知道怎么去做,有崩溃的想法;
    设计思路:首先利用rand函数实现数值的随机产生,然后利用switch()函数实现加减乘除的随机分配;

    遇到的问题

    (1)不知道怎么运用rand函数,使数值随机产生;
    (2)在排版加减运算的时候,会出现错位,一上一下。

    3.3 程序结果截图

    4.4 程序代码

    include<stdio.h>

    define _CRT_SECURE_NO_WARNINGS

    include<stdlib.h>

    include<time.h>

    int menu()
    {
    printf("=口算生成器= ");
    printf("欢迎使用口算生成器 : ");
    return 0;
    }
    int help()
    {
    printf("帮助信息: ");
    printf("你需要输入命令代号来进行操作,且 ");
    printf("一年级题目为不超过十位的加减法: ");
    printf("二年级题目为不超过百位的乘除法: ");
    printf("三年级题目为不超过百位的加减乘除混合题目. ");
    return 0;
    }
    int error()
    {
    printf("Error!!! ");
    printf("错误操作指令,请重新输入 ");
    return 0;
    }
    void first()
    {
    printf("现在是一年级题目: ");
    int a, b, c, d,i;
    srand((unsigned)time(NULL));
    printf("请输入生成个数>");
    scanf_s("%d",&d);
    printf("<执行操作:) ");
    for (i = 0; i < d; i++)
    {
    a = rand() % 10 + 0;
    b = rand() % 10 + 0;
    c = rand() % 2 + 1;
    printf("%d", a);
    switch (c)
    {
    case 1:printf(" + %d", b); break;
    case 2:printf(" - %d", b); break;
    }

    	printf(" = ___
    ");
    
    }
    

    }
    void second()
    {
    printf(" 现在是二年级题目: ");
    int a, b, c, d,i;
    srand((unsigned)time(NULL));
    printf("请输入生成个数>");
    scanf_s("%d", &d);
    printf("<执行操作:) ");
    for (i = 0; i < d; i++)
    {
    a = rand() % 100 + 0;
    b = rand() % 100 + 0;
    c = rand() % 2 + 3;
    if (c == 4 && b == 0)
    {
    i--;
    continue;
    }
    printf("%d", a);
    switch (c)
    {
    case 3:printf(" * %d", b); break;
    case 4:printf(" / %d", b); break;
    }

    	printf(" = ___
    ");
    }
    

    }
    void third()
    {
    printf(" 现在是三年级题目: ");
    int a, b, c, d,i;
    srand((unsigned)time(NULL));
    printf("请输入生成个数>");
    scanf_s("%d", &d);
    printf("<执行操作:) ");
    for (i = 0; i < d; i++)
    {

        a = rand() % 100 + 0;
    b = rand() % 100 + 0;
    c = rand() % 4 + 1;
    if (c == 4 && b == 0)
    {
    	i--;
    	continue;
    }
    printf("%d", a);
    switch (c)
    {
    case 1:printf(" + %d", b); break;
    case 2:printf(" - %d", b); break;
    case 3:printf(" * %d", b); break;
    case 4:printf(" / %d", b); break;
    }
    int j;
    j = rand() % 100 + 0;
    c = rand() % 4 + 1;
    if (c == 4 && j == 0)
    {
    i--;
    continue;
    }
    switch (c)
    {
    case 1:printf(" + %d", j); break;
    case 2:printf(" - %d", j); break;
    case 3:printf(" * %d", j); break;
    case 4:printf(" / %d", j); break;
    }
    
    printf(" = ___
    ");
    }
    

    }
    int main()
    {
    menu();
    printf(" ");
    help();
    printf(" ");
    int n=-1;
    while (n != 5)
    {
    printf("操作列表: ");
    printf("1)一年级 2)二年级 3)三年级 ");
    printf("4)帮助 5)退出程序 ");
    printf("请输入操作:");
    scanf_s("%d",&n);
    printf(" <执行操作:) ");
    printf(" ");
    switch (n)
    {
    case 1:
    first();
    printf(" ");
    break;
    case 2:
    second();
    printf(" ");
    break;
    case 3:
    third();
    printf(" ");
    break;
    case 4:
    help();
    printf(" ");
    break;
    case 5:
    printf("程序结束,欢迎下次使用,任意键结束 ");
    printf(" ");
    break;
    default:
    error();
    printf(" ");
    break;
    }
    }
    return 0;
    }

    5.5 Gitee上传截图与链接

    6.6Gitee链接

    https://gitee.com/chen_yi1/git20199311

  • 相关阅读:
    POJ 1328 Radar Installation
    POJ 1700 Crossing River
    POJ 1700 Crossing River
    poj 3253 Fence Repair (贪心,优先队列)
    poj 3253 Fence Repair (贪心,优先队列)
    poj 3069 Saruman's Army(贪心)
    poj 3069 Saruman's Army(贪心)
    Redis 笔记与总结2 String 类型和 Hash 类型
    数据分析方法有哪些_数据分析方法
    数据分析方法有哪些_数据分析方法
  • 原文地址:https://www.cnblogs.com/chenyiAndy/p/12300567.html
Copyright © 2011-2022 走看看