首页 > 其他分享 >实验3

实验3

时间:2024-10-28 22:41:51浏览次数:6  
标签:return power int grade score 实验 ans

task1

源代码:

#include <stdio.h>

char score_to_grade(int score);  // 函数声明

int main() {
    int score;
    char grade;

    while(scanf("%d", &score) != EOF) {
        grade = score_to_grade(score);  // 函数调用
        printf("分数: %d, 等级: %c\n\n", score, grade);
    }

    return 0;
}

// 函数定义
char score_to_grade(int score) {
    char ans;

    switch(score/10) {
    case 10:
    case 9:   ans = 'A'; break;
    case 8:   ans = 'B'; break;
    case 7:   ans = 'C'; break;
    case 6:   ans = 'D'; break;
    default:  ans = 'E';
    }

    return ans;
}

截图:

问题1:score_to_grade的作用是将分数转化为相应的等级。形参类型为整型,返回值类型为字符型。

问题2:不能及时终止,输入任何值返回值都为E

task2

源代码:

#include <stdio.h>

int sum_digits(int n);  // 函数声明

int main() {
    int n;
    int ans;

    while(printf("Enter n: "), scanf("%d", &n) != EOF) {
        ans = sum_digits(n);    // 函数调用
        printf("n = %d, ans = %d\n\n", n, ans);
    }

    return 0;
}

// 函数定义
int sum_digits(int n) {
    int ans = 0;

    while(n != 0) {
        ans += n % 10;
        n /= 10;
    }

    return ans;
}

截图:

问题1:sum_digits的作用是将一个数每一位的值进行求和

问题2:能

task3

源代码:

#include <stdio.h>

int power(int x, int n);    // 函数声明

int main() {
    int x, n;
    int ans;

    while(printf("Enter x and n: "), scanf("%d%d", &x, &n) != EOF) {
        ans = power(x, n);  // 函数调用
        printf("n = %d, ans = %d\n\n", n, ans);
    }
    
    return 0;
}

// 函数定义
int power(int x, int n) {
    int t;

    if(n == 0)
        return 1;
    else if(n % 2)
        return x * power(x, n-1);
    else {
        t = power(x, n/2);
        return t*t;
    }
}

截图:

问题1:power的功能是求一个数的几次方

问题2:

标签:return,power,int,grade,score,实验,ans
From: https://www.cnblogs.com/dannyming/p/18511852

相关文章

  • 实验2
    实验任务1:实验代码:t.h:1#pragmaonce23#include<string>45//类T:声明6classT{7//对象属性、方法8public:9T(intx=0,inty=0);//普通构造函数10T(constT&t);//复制构造函数11T(T&&t);//移动构造函......
  • 实验二
    任务一:t.h1#pragmaonce2#include<string>34classT{5public:6T(intx=0,inty=0);7T(constT&t);8T(T&&t);9~T();1011voidadjust(intratio);12......
  • Springboot实验室设备维修维护管理系统81882(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,公告信息,设备分类,设备信息,设备报修,设备维修,预警信息,培训信息开题报告内容一、研究背景与意义随着科学技术的飞速发展,实验室作为科研与教学的重要基......
  • Springboot实验室教学管理平台59z69(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学生,老师,教室表,节次,学生课程表,老师课程表,调课申请单,教室,学生教室申请表,老师教室申请表开题报告内容一、研究背景与意义随着高等教育信息化的日益加速,......
  • GaussDB 数据库实验环境搭建指导
    @目录简介内容描述实验环境说明1GaussDB数据库购买1.1实验介绍1.1.1关于本实验1.1.2实验目的1.2购买GaussDB数据库1.2.1登录华为云1.2.2购买华为云GaussDB数据库简介本指导书适用于在华为云部署购买GaussDB数据库,通过该指导书可以顺利完成GaussDB数据库在华为云的购买。......
  • 实验二 类和对象_基础编程1
    1.实验任务1验证性实验:简单类T的定义和测试。实践、阅读代码,回答问题。这个简单任务覆盖以下内容:类的定义(封装)类的使用:对象的创建、访问数据共享机制在同一个对象的所有操作之间共享数据——实现机制:封装在同一个类的所有对象之间共享数据......
  • 实验2 类和对象_基础编程1
    实验任务1t.h源代码//类T:声明classT{//对象属性、方法public:T(intx=0,inty=0);//普通构造函数T(constT&t);//复制构造函数T(T&&t);//移动构造函数~T();//析构函数voidadjust(intratio);//......
  • 实验3
    11#include<stdio.h>2charscore(ints);3intmain()4{5ints;6chara;7while(scanf("%d",&s)!=EOF)8{9a=score(s);10printf("分数:%d",s);11printf("等级:%......
  • 实验3
    任务11#include<stdio.h>23charscore_to_grade(intscore);45intmain(){6intscore;7chargrade;89while(scanf("%d",&score)!=EOF){10grade=score_to_grade(score);11printf("分数......
  • 实验3
    #include<stdio.h>charscore_to_grade(intscore);//函数声明intmain(){intscore;chargrade;while(scanf("%d",&score)!=EOF){grade=score_to_grade(score);//函数调用printf("分数:%d,等级:%c\n\......