C语言如何实现成绩等级判别

 更新时间:2022年11月07日 15:49:23   作者:小林C语言  
这篇文章主要介绍了C语言如何实现成绩等级判别,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

如何实现成绩等级判别

看实例

C语言实现按照考试成绩的等级输出百分制分数段,A等为85-100分,B等为70-84分,C等为60-69分,D等为60分以下。

解题思路:这是一个多分支选择问题,根据百分制分数将学生成绩分为4个等级,如果用if语句来处理至少需要3层嵌套的if,进行3次检查判断。用switch语句,进行一次检查即可得到结果。

源代码演示

#include<stdio.h>//头文件 
int main()//主函数 
{
  char grade; //定义成绩级别字符变量 
  printf("输入成绩级别:");//提示语句 
  scanf("%c",&grade); //键盘输入 
  printf("成绩段:");//提示语句 
  switch(grade) //switch多分支 
  {
    case'A':printf("85-100\n");break;//输出A的成绩分布 
    case'B':printf("70-84\n");break;//输出B的成绩分布 
    case'C':printf("60-69\n");break;//输出C的成绩分布 
    case'D':printf("不及格小于60\n");break;//输出D的成绩分布 
    default:printf("输入成绩等级有误\n");//输出成绩级别有误 
  } 
  return 0;//函数返回值为0 
}

编译结果:

输入成绩级别:D
成绩段:不及格小于60

--------------------------------
Process exited after 1.931 seconds with return value 0
请按任意键继续. . .

读者需要注意的一点是:switch后面括号内的“表达式”,其值的类型应为整数类型(包括字符型),switch语句的作用是根据表达式的值,使流程跳转到不同的语句。

用C语言解决成绩评定问题

题目:给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。

简单分析后得知,此问题有至少两种解法。一种是笨方法:用if语句来完成;一种是用switch语句来完成。

首先先看“笨方法”

#include<stdio.h>//笨方法 
 
int main (void)
 
{
    int a;
    
    scanf("%d",&a);
    
    if(a>=90)
      putchar('A');
      
    if(a>=80 && a<90)
      putchar('B');
      
    if(a>=70 && a<80)
      putchar('C');
      
    if(a>=60 && a<70)
      putchar('D');
      
    if(a<60)
      putchar('E');
      
    putchar('\n');
}

此方法多次使用if语句,所以过于繁琐。

下面是较为简单的switch语句

#include<stdio.h>
 
int main()
{
    int a;
    scanf("%d",&a); 
    switch(a/10)
    {
        case 10:
        case 9:
            putchar('A');
            break;
        case 8:
            putchar('B');
            break;
        case 7:
            putchar('C');
            break;
        case 6:
            putchar('D');
            break;
        default:
            putchar('E');      
    }
}

今天的分享就到这里了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C#中 MessageBox的使用技巧

    C#中 MessageBox的使用技巧

    这篇文章主要介绍了C#中 MessageBox的使用技巧,在C#中MessageBox消息对话框位于System.Windows.Forms命名空间中,更多详细的内容需要的朋友可以参考一下
    2022-08-08
  • C语言字符串左旋的两种实现方法

    C语言字符串左旋的两种实现方法

    汇编语言中有一种移位指令叫做循环左移(ROL),下面这篇文章主要给大家介绍了关于C语言字符串左旋的两种实现方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • C语言中字符串的两种定义方式详解

    C语言中字符串的两种定义方式详解

    这篇文章主要为大家详细介绍了C语言中字符串的两种定义方式,小编觉得这篇文章写的还不错,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • C++ 搬水果贪心算法实现代码

    C++ 搬水果贪心算法实现代码

    这篇文章主要介绍了C++ 搬水果贪心算法实现代码的相关资料,需要的朋友可以参考下
    2017-06-06
  • C++ cin速度优化详解

    C++ cin速度优化详解

    这篇文章主要介绍了C++ cin速度优化详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • C++ 学习之旅 Windows程序内部运行原理

    C++ 学习之旅 Windows程序内部运行原理

    学习C++与.net不同的是,一定要搞清楚Windows程序内部运行原理,因为他所涉及大多数是操作系统的调用,而.net毕竟是在.netFrameWork上唱戏
    2012-11-11
  • C语言数据结构实现链表逆序并输出

    C语言数据结构实现链表逆序并输出

    这篇文章主要介绍了C语言数据结构实现链表逆序并输出的相关资料,需要的朋友可以参考下
    2017-04-04
  • C++ Socket实现TCP与UDP网络编程

    C++ Socket实现TCP与UDP网络编程

    本文主要介绍了C++ Socket实现TCP与UDP网络编程,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • C语言实现制作通讯录(新手推荐)

    C语言实现制作通讯录(新手推荐)

    本文推荐给C语言学习到结构体的新手们,供其练习。这篇文章主要是利用C语言制作一个简单的通讯录功能,感兴趣的小伙伴可以跟随小编一起了解一下
    2022-09-09
  • Cocos2d-x Schedule定时器的使用实例

    Cocos2d-x Schedule定时器的使用实例

    这篇文章主要介绍了Cocos2d-x Schedule定时器的使用实例,本文的讲解内容包含在代码注释中,需要的朋友可以参考下
    2014-09-09

最新评论