关于c的问题,如何解决?


#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include<Windows.h>
int main()
{
    srand(time(0));
    int number = rand()%100+1;
    int count = 0;
    int a = 0;
    int mun;
    printf("我已经想好一个1到100之间的数");
    do {
        printf("请猜猜这个数");
        scanf("%d", &a);
        count++;
        if (a>number) 
        {printf("你的数猜大了");
        
        }else if (a<number) 
        {printf("你的数猜小了");
        }
    } while (a != number);
    printf("恭喜你用了%d次猜对了\n", count);
    if(count<5){
        mun=1;
    }else if(count>5&&count<10){
        mun=2;
    }
    if(count>10){
        mun=3;
    }
    switch(mun){

    case 1:
    float x,y,b;
     for(y=1.5; y>-1.5; y-=0.1)
     {
      for(x=-1.5; x<1.5; x+=0.05)
      {
       b=x*x+y*y-1;
       putchar(b*b*b-x*x*y*y*y<=0.0?'*':' ');
      }
      system("color 0c");
      putchar('\n');
     }
    case 2:printf("你错的有点多,再接再励,请交给轩哥亿元,才能继续玩\n");
    case 3: for( ; ;){
        printf("你是一个大傻子,可以猜这么多次\n");
        break;
    }
        
    
    }

    return 0;
}


img

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7799627
  • 这篇博客也不错, 你可以看下开灯问题用C语言怎么解决 ?
  • 同时,你还可以查看手册:c语言-成员访问与间接 中的内容
  • 除此之外, 这篇博客: 聊聊我是如何编程入门的中的 C语言 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    刚开始就是泡书,然后就是抄代码,上机调试,模仿修改,看n遍,量变引起质变就会培养出编程思维!!!

  • 您还可以看一下 黄强老师的10天快速学习C语言课程中的 什么是C语言常量?小节, 巩固相关知识点
  • 以下回答来自chatgpt:

    回答:

    在学习C语言过程中遇到各种问题是很正常的,以下是一些解决问题的方法及例子:

    1. 编译错误

    编译错误指的是在编译代码时出现的错误。处理步骤如下: (1)先理清错误提示的意思; (2)找到代码中对应的行数及出现错误的函数、变量等; (3)检查代码是否符合语法规范; (4)查找错误并做出修改; (5)重新编译代码。

    以下是一个简单的例子:

    #include <stdio.h>
    
    int main() {
        printf("Hello world");
        return 0
    }
    

    第4行多了一个中文符号“;”,这是语法错误,编译时就会出现以下错误提示:

    error: expected ; before } token
    return 0
            ^
    

    此时,只需要把中文符号修改为英文符号即可。

    1. 语法错误

    语法错误只有凭经验及不断调试代码才能解决。下面是一些可能遇到的语法错误及解决方法:

    (1)变量未声明或声明不正确:

    error: a undeclared (first use in this function)
    a = 1;
    ^
    

    解决方法:检查是否已经声明变量,并确保声明的类型正确。

    (2)不正确的格式化:

    printf("The sum of %d and %d is %d \n", 1, 2);
    

    解决方法:注意格式化输出的占位符与实际需要输出的变量是否对应,以及输出的格式是否正确。

    (3)不匹配的括号:

    if (a > 10 {
        printf("a is greater than 10");
    }
    

    解决方法:检查括号是否匹配,以及代码是否符合语法规范。

    1. 逻辑错误

    逻辑错误指的是程序的运行结果与预期不符,以下是一些可能遇到的逻辑错误及解决方法:

    (1)数组越界:

    int arr[5] = {1, 2, 3, 4, 5};
    for (int i = 0; i <= 5; i++) {
        printf("%d ", arr[i]);
    }
    

    解决方法:确保数组维度与使用的索引匹配。

    (2)死循环:

    int i = 0;
    while (i >= 0) {
        printf("Hello world\n");
    }
    

    解决方法:检查循环条件是否正确,并确保循环中会存在条件使其终止。

    (3)类型不匹配:

    int a = 10;
    float b = 3;
    printf("%f", a / b);
    

    解决方法:把不同类型的变量转换为同一类型。

    以上只是一些简单的例子,不同的问题需要采用不同的处理方法。在解决问题时,要注重观察错误提示并查阅相关文档资料,遇到问题不要轻易放弃,多加思考和尝试,相信问题总会有解决方法。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

代码功能归根结底不是别人帮自己看或讲解或注释出来的;而是被自己静下心来花足够长的时间和精力亲自动手单步或设断点或对执行到某步获得的中间结果显示或写到日志文件中一步一步分析出来的。
提醒:再牛×的老师也无法代替学生自己领悟和上厕所!
单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。