首页 > 其他分享 >实验三

实验三

时间:2024-10-23 17:33:20浏览次数:1  
标签:return int grade score 实验 ans underline

任务一

验证性实验

源码

#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. 功能是数值分数与等级转换,形参类型int,返回值类型char
  2. 有问题,此时输入一个成绩,会输出其下所有的等级。

任务二

源码

#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. 功能是将输入的数字每一位相加。
  2. 可以实现,运用了递归的算法思想,迭代自上而下,递归自下而上。

任务三

源码

#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. 实现了输入x的y次方操作。
  2. 是递归函数,有点像二分,先算偶数幂,最后乘以落单的最后一个x。

\[x^n=\underline{\underline{x*x}*\underline{x*x}}*·\underline{·\underline{·*x}}*\underline{x} \]

关于MarkDownLaTeX语法

任务四

打印100以内的孪生素数

源码

#include <stdio.h>

int isprime(int n)
{
    if (n < 2)
        return 0;
    for (int i = 2; i <= n / 2; i++)
    {
        if (n % i == 0)
            return 0;
    }
    return 1;
}

int main()
{
    int cnt = 0;
    for (int i = 1; i < 101; i += 2)
    {
        if (isprime(i)&&isprime(i + 2))
        {
                printf("%d %d\n", i, i + 2);
                cnt++;
        }
    }
    printf("Total count: %d\n", cnt);
    return 0;
}

结果

任务五

对教材「例4.9 Hanoi塔问题」稍做改写

源码

法一



法二



结果

标签:return,int,grade,score,实验,ans,underline
From: https://www.cnblogs.com/churk/p/18497896

相关文章

  • 实验3
    TASK11#include<stdio.h>23charscore_to_grade(intscore);45intmain(){6intscore;7chargrade;89while(scanf("%d",&score)!=EOF){10grade=score_to_grade(score);11printf(......
  • 实验2
    实验任务1:源码及截图:1#pragmaonce23#include<string>45//类T:声明6classT{7//对象属性、方法8public:9T(intx=0,inty=0);//普通构造函数10T(constT&t);//复制构造函数1//类T:实现2//普通函数实现34......
  • 20222316 2024-2025-1 《网络与系统攻防技术》实验二实验报告
    一、实验内容1.学习总结——后门与免杀1)后门基本概念后门就是不经过正常认证流程而访问系统的通道。狭义后门:特指潜伏于操作系统中专门做后门的一个程序,“坏人”可以连接这个程序,远程执行各种指令。后面类型有编译器后门、操作系统后门、应用程序后门、潜伏于操作系统中或......
  • 20222324 石国力 《网络与系统攻防技术》 实验二
    1.实验内容(1)使用netcat获取主机操作Shell,cron启动某项任务(2)使用socat获取主机操作Shell,任务计划启动(3)使用MSFmeterpreter(或其他软件)生成可执行文件(后门),利用ncat或socat传送到主机并运行获取主机Shell(4)使用MSFmeterpreter(或其他软件)生成获取目标主机音频、摄像头、......
  • 实验2
    x.h#include<iostream>#include<math.h>#include<string>usingnamespacestd;usingstd::string;classT{public:T(intx=0,inty=0);T(constT&t);T(T&&t);~T();sta......
  • 实验2
    任务1:t.h代码:#pragmaonce#include<string>//类T:声明classT{//对象属性、方法public:T(intx=0,inty=0);//普通构造函数T(constT&t);//复制构造函数T(T&&t);//移动构造函数~T();//析构函数voida......
  • 实验2 类和对象 基础编程1
    1,实验任务1t.cpp1//类T:实现2//普通函数实现34#include"t.h"5#include<iostream>6#include<string>78usingstd::cout;9usingstd::endl;10usingstd::string;1112//static成员数据类外初始化13conststd::stringT::doc{"......
  • 20222310 2024-2025-1 《网络与系统攻防技术》实验三实验报告
    一、实验内容1.正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧(1)正确使用msf编码器,使用msfvenom生成如jar之类的其他文件(2)学会使用veil,加壳工具(3)能够使用C+shellcode编程2.通过组合应用各种技术实现恶意代码免杀成功实现了免杀的,简单语言描述原理,不......
  • 实验2
    实验任务1t.h代码点击查看代码#pragmaonce#include<string>//类T:声明classT{//对象属性、方法public:T(intx=0,inty=0);//普通构造函数T(constT&t);//复制构造函数T(T&&t);//移动构造函数~T();//析构......
  • 实验二
    任务一:代码:t.h:1#pragmaonce23#include<string>45//类T:声明6classT{7//对象属性、方法8public:9T(intx=0,inty=0);//普通构造函数10T(constT&t);//复制构造函数11T(T&&t);//移动构造函数12......