为什么这个输出都是E啊各位

img

img


我在做实验报告,然后这个,程序,就一直输出为e,不管输入的多少都是e,改程序也没有错误

  您的E等级判定应该是score < 60 或者 0 <= score < 60,前一种写法可以忽略小于零的情况,因为合法的成绩都是不小于零的。

  我的表达式是python 写法,因为我不会C,仅会点儿python 。您的各个等级判定应该是同一级别的,我不懂c语法看不出来。

您改改试试看吧。😄


建议您去可视化网站一步一步执行代码,然后看输出结果

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7787592
  • 你也可以参考下这篇文章:删除顺序表的所有元素值为e的元素
  • 除此之外, 这篇博客: 题库敲敲打打中的 1、设计算法在有序单链表中删除重复元素e,使得单链表删除e后依然有序 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • #include<stdio.h>
    
    typedef int ElemType;
    typedef struct LNode{
    	ElemType data;
    	struct LNode *next;
    	int length;
    }LNode, *LinkList;
    
    void deleteValue(int e, LinkList *L)
    {
    	int cnt = 0;
    	int i;
    	int flag = 0;
    	LNode *p = (*L)->next;
    	LNode *q;
    	for(i = 0; i < (*L)->length; i++)
    	{
    		if(p->data == e)
    		{
    			if(flag == 0)
    			{
    				flag = 1;
    			}
    			else
    			{
    				LNode *p1 = p;
    				p = p->next;
    				q->next = p;
    				free(p1);
    			}
    		}
    		q = p;
    		p = p->next;
    	}
    }
    
  • 以下回答由chatgpt基于相关博客总结生成:

    作为一名资深的IT专家,我需要得到更加具体的问题和上下文,才能提供有效的帮助。在当前提供的参考资料中,并没有与实验报告中使用的程序、错误信息或输出结果相关的内容。如果能提供更多关于问题的详细描述和上下文,我会尽可能地给出具体的解决方案。

  1. 因为你的程序在不断的给result赋值,判断的逻辑错了,应该先从小往大判断
  2. 程序从上往下依次执行,到最后一个else if的时候只要成绩大于0都给他更新值E,所以到最后只要你输入的成绩大于0,result都会被更新为E
  3. 建议值的大小先从小值判断,参考如下

img