第一周周考技能

文章目录

  • 1月
    • 1. 任意输入一个3位整数(100~999,包含100与999),判断输入的整数是否是质数,如果是质数则输出是质数,否则输出不是质数
    • 2.“降序数”是指一个自然数的低位数字不大于高位数字的数。例如:651,555,321都认为是降序数,但626不是降序数。编一个程序,输入一个3位数,判定它是否为降序数,并输出判断结果
    • 3.任意输入一个4位整数(1000~9999,包含1000与9999),先判断输入是否符合条件,不符合则提示重新输入,编程算出各位数字加在一起的和是多少并输出
    • 4.定义一个二维数组a,定义一个指针p指向数组,通过指针遍历数组。求出数组中各元素中的最大值,求出数组中各元素中的最小值,然后输出最大值和最小值
    • 5.输入整数a和b,求两个数的最大公约数,求两个数的最小公倍数,要求用上三元运算符与循环等
  • 2月
    • 1.编程计算 s=1*1+3*3+...+99*99 的值
    • 2.编程输出下面图形:(1)要求使用for循环 (2)正确输出图形
    • 3.编程实现输入5个整数
    • 4.4.输入一个大于0的整数
  • 12月
    • 1.已知n>=0,f(0)=0,f(n)=n+f(n-1),用递归函数计算f(n)的结果,并输出f(10)的值
    • 2.编写三个重载函数mul,分别实现整数相乘,浮点数相乘,Double数值相乘,并在main函数中调用,实现不同类型计算
    • 3.由键盘输入一个10~100间的整数做一个人的年龄,要求输入值正确,否则提示重新输入,根据输入数值,判断这个人是少年(10~18),青年(19~35),中年(36~60),还是老年(61~100)
    • 4. 编程求1~100(不包括1和100)间所有素数,并遍历输出这些素数,同时计算并输出素数个数
    • 5.定义四个整数abcd,求出最大值与最小值,并判断b是否是中间值(不是最大也不是最小值)
  • 10月
    • 1.输入:2, 3, 11, 9输出:2是素数 3是素数11是素数9不是素数
    • (2)输入三角形三个边长值,并判断该三角形是否为直角三角形
    • (3)由键盘输入两个2位正整数a、b,并由四个数字拼接成新的正整数c

目录

1月

1. 任意输入一个3位整数(100~999,包含100与999),判断输入的整数是否是质数,如果是质数则输出是质数,否则输出不是质数

void test1_1(){
    int num;
    cin >> num;
    if(num >=100 && num <=999){
        int count = 0; //计数
        for(int k = 1;k<=num;k++){ //因子
            if(num%k==0){
                count++;
            }
        }
        if(count==2){
            cout << num << "是质数" << endl;
        } else{
            cout << num << "不是质数" << endl;
        }

    } else{
        cout << "输入错误" << endl;
    }
}

2.“降序数”是指一个自然数的低位数字不大于高位数字的数。例如:651,555,321都认为是降序数,但626不是降序数。编一个程序,输入一个3位数,判定它是否为降序数,并输出判断结果

void test1_2(){
    int num ;
    cin >> num;
    int h = num/100%10; //百位
    int s = num/10%10; //十位
    int l = num%10; //个位
    if(h>=s && s>=l){
        cout << "是降序数" << endl;
    } else{
        cout << "不是降序数" << endl;
    }
}

3.任意输入一个4位整数(1000~9999,包含1000与9999),先判断输入是否符合条件,不符合则提示重新输入,编程算出各位数字加在一起的和是多少并输出

void test1_3(){
    int num ;
    cin >> num;
    if(num >=1000 && num<=9999){
        int q = num/1000%10;
        int b = num/100%10;
        int s = num/10%10;
        int g = num%10;
        cout << "和:" << q+b+s+g << endl;
        
    } else{
        cout <<"不符合条件";
    }
}

4.定义一个二维数组a,定义一个指针p指向数组,通过指针遍历数组。求出数组中各元素中的最大值,求出数组中各元素中的最小值,然后输出最大值和最小值

	int test3_zz(){
    int b[2][3] = {{1,2,3},{4,5,6}};
    int *p = b[0]; //相当于b[0][0]
    int max = b[0][0];
    int min = b[0][0];
    for(int i = 0;i<2;i++){
        for(int j = 0;j<3;j++){
            cout <<*p<<endl;
            if(max < *p){
                max = *p;
            }
            if(min > *p){
                min = *p;
            }
            p++;
        }
        cout <<endl;
    }
    cout << max << min << endl;
}

5.输入整数a和b,求两个数的最大公约数,求两个数的最小公倍数,要求用上三元运算符与循环等

void test1_5()
{
    int a,b;
    cin >>a >> b;
    int min = (a>b)?b:a; //最小数字 2
    for(int i = min;i>=1;i--){ // 2 1
        if(a%i == 0 && b%i==0){
            cout << "最大公约数:" << i<< endl;
            cout << "最小公倍数" << a*b/i << endl;
        }
    }
}

2月

1.编程计算 s=11+33+…+99*99 的值

(1)定义并初始值s=0
(2)实现0-99的循环
(3)输出结果s

	int test2_1(){
    int s=0;//局部变量
    for(int i=1;i<100;i+=2){//循环100次
        s+=i*i; //1*1 + 3*3
    }
    cout << "结果:"<<s<< endl;
}

2.编程输出下面图形:(1)要求使用for循环 (2)正确输出图形

在这里插入图片描述

int test2_2(){
    for(int i = 5;i>=1;i--){ //外层循环执行5次,表示5行
        for(int k = 5;k>=i;k--){
            cout << " "; //打印空格
        }
        for(int j=1;j<=2*i-1;j++) {
            cout << "*"; //打印*
        }
        cout << endl;//换行
    }
}

3.编程实现输入5个整数

(1)提示并输入5个整数
(2)定义数组,将输入数据存入数组
(3)然后由小到大排序
(4)输出排序结果
(5)然后输出最小值与最大值

	int test2_3(){
    int arr[5]; //空数组,长度是5
    for(int i = 0;i< size(arr);i++){//循环5次
        cin >> arr[i];  //给数组赋值
    }
    sort(arr,arr+5); //排序,升序
    cout << "最小:" << arr[0] <<"      "<< "最大值:" << arr[5-1];
}

4.4.输入一个大于0的整数

(1)判断是否符合条件,不符合则提示输入有误,请重新输入
(2)判断是奇数还是偶数并输出判断
(3)判断是否是素数并输出判断

int test2_4(){
    int num;
    cin >> num;//用户输入
    if(num>0){
        if(num%2==0){
            cout << "是偶数" << endl;
        } else{
            cout << "是奇数" << endl;
        }

        //i因子(范围  1-本身)
        int count = 0; //计数
        for(int i = 1;i<=num;i++){
            if(num%i == 0){
                count++; //只要能整除,就计数,素数最多只有2个
            }
        }
        if(count == 2){
            cout << num<<"是素数" << endl;
        } else{
            cout << num<<"不是素数" << endl;
        }
    } else{
        cout << "输入错误";
    }
}

12月

1.已知n>=0,f(0)=0,f(n)=n+f(n-1),用递归函数计算f(n)的结果,并输出f(10)的值

int f(int n){
    if(n==0){
        return 0;
    } else{
        return n+f(n-1);
    }
}

2.编写三个重载函数mul,分别实现整数相乘,浮点数相乘,Double数值相乘,并在main函数中调用,实现不同类型计算

void mul(int a,int b){ //2
    cout << a*b; //return
}
void mul(double a,double  b){
    cout << a*b;
}
void mul(float a,float  b){
    cout << a*b;
}

int main(){
    mul(1.2f,4.5f); //float
    mul(1.2,4.5);
    mul(4,5);
}

3.由键盘输入一个10100间的整数做一个人的年龄,要求输入值正确,否则提示重新输入,根据输入数值,判断这个人是少年(1018),青年(1935),中年(3660),还是老年(61~100)

void test3(){//无返回值
    int age;
    cin >> age;
    if(age>=10 && age<=100){
        if(age>=10 && age <=18){
            cout << "少年";
        } else if(age>=19 && age <=35){
            cout << "青年";
        }
        else if(age>=36 && age <=60){
            cout << "中年";
        } else{
            cout << "老年";
        }
    } else{
        cout << "输入错误";
    }
}

4. 编程求1~100(不包括1和100)间所有素数,并遍历输出这些素数,同时计算并输出素数个数

void test4(){
    int total = 0; //素数的总个数
    for(int num = 2;num<100;num++){ //循环num从2开始到99
        int count = 0; //计数 用来判断是不是素数
        for(int k = 1;k<=num;k++){ //k因子,从1到本身
            if(num%k == 0){ //数字%因子
                count++;
            }
        }
        if(count == 2){ //是素数
            cout << num << endl;
            total++; //素数的数量累加
        }
    }
    cout << "共有" << total << "个素数" << endl;
}

5.定义四个整数abcd,求出最大值与最小值,并判断b是否是中间值(不是最大也不是最小值)

void test5(){
    int a,b,c,d; //定义4个变量
    cin >> a >> b >> c>> d; //输入4个数字
    int arr[4] ={a,b,c,d}; //4个放到数组
    sort(arr,arr+4); //升 小到大
    cout << "最小:" << arr[0] << "最大" << arr[3] << endl;
    if(b>arr[0] && b<arr[3]){ //判断中间值
        cout <<b <<"是中间值" << endl;
    } else{
        cout <<b << "不是中间值" << endl;
    }
}

10月

1.输入:2, 3, 11, 9输出:2是素数 3是素数11是素数9不是素数

void test10_1(){ //只能被1和本身整数的数字
    int n[]={2,3,11,9};
    for(int i = 0;i< size(n);i++){ //下标
        int count = 0; //计数
        for(int k = 1;k<=n[i];k++){ //因子1开始  数字本身结束
            if(n[i]%k ==0){ //数字%因子
                count++;//计数
            }
        }
        if(count == 2){ //1、本身
            cout << n[i]<<"是素数(质数)"<< endl;
        } else{
            cout << n[i]<<"不是素数(质数)"<<endl;
        }
    }
}

(2)输入三角形三个边长值,并判断该三角形是否为直角三角形

提示:根据勾股定理,斜边C=5,直角边A、B分别为3、4时,是直角三角形
使用if条件判断c方= a方+b方为真时,输出是直角三角形的文字到屏幕
计算A/C 和 B/C的值,即sin和cos
并输出至屏幕

void test10_2(){
    double a,b,c;
    cin >> a>> b>>c;
    if(a*a+b*b==c*c){ //a方+b方=c方  c是斜边
        cout << "是直角三角形" << a/c <<" "<< b/c <<endl; //sin和cos
    } else if(b*b+c*c == a*a){
        cout << "是直角三角形" << c/a <<" "<< b/a << endl;
    } else if(a*a+c*c==b*b){
        cout << "是直角三角形" <<a/b<<" "<< c/b << endl;
    } else{
        cout << "不是直角三角形" << endl;
    }
}

(3)由键盘输入两个2位正整数a、b,并由四个数字拼接成新的正整数c

a的十位、个位放置于c的百位、个位
b的十位、个位放置于c的千位、十位
例:a=56;b=34
则C=3546

void test10_3(){
    int a,b;
    cin >>a >> b; //用户输入
    int c = b/10%10*1000+a/10%10*100+b%10*10+a%10;
    cout << c<< endl;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/486631.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

工单系统大揭秘!选择工单系统需注意的关键因素!

如何选择工单系统&#xff1f;工单系统作为数字化工具&#xff0c;可以帮助企业高效处理工单业务问题&#xff0c;助力企业数字化转型。目前市面上的工单系统可谓是琳琅满目。 本文详细讲解了目前市面上工单系统的主要类型&#xff0c;以及企业该如何选择工单系统~ 一、工单系…

怎样批量在文件名后面加上相同的字符?

怎样批量在文件名后面加上相同的字符&#xff1f;在日常工作中&#xff0c;有时我们需要对大量文件进行批量处理&#xff0c;比如在文件名后面统一添加相同的字符。这项工作可以通过编写简单的脚本或程序来实现&#xff0c;从而提高工作效率。批量在文件名后面加上相同的字符是…

JS-13-高阶函数

一、高阶函数的定义 JavaScript的函数其实都指向某个变量&#xff0c;如&#xff1a; var abs function (x) {// 函数体 }; 既然变量可以指向函数&#xff0c;函数的参数能接收变量&#xff0c;那么一个函数就可以接收另一个函数作为参数&#xff0c;这种函数就称之为高阶函…

CCF-CSP认证考试 202212-2 训练计划 100分题解

更多 CSP 认证考试题目题解可以前往&#xff1a;CSP-CCF 认证考试真题题解 原题链接&#xff1a; 202212-2 训练计划 时间限制&#xff1a; 1.0s 内存限制&#xff1a; 512.0MB 问题背景 西西艾弗岛荒野求生大赛还有 n n n 天开幕&#xff01; 问题描述 为了在大赛中取得…

shell实现查询进程号并批量kill(脚本)

问题或需求描述 在shell中&#xff0c;如果你想通过命令行查询出一系列匹配某个关键词的进程&#xff0c;并使用xargs命令批量结束这些进程&#xff0c;可以按照以下步骤操作&#xff1a; # 查询并提取进程号 pgrep -f "关键词" | xargs kill# 或者&#xff0c;如果…

Qt 用任意直线来分割多边形,返回分割后的多边形

任意直线分割多边形&#xff0c;返回分割后的多边形 效果 使用示例 QPolygonF LineSegmentationPolygon(const QPolygonF& poly, const QLineF& line, SideToRemove sideToRemove)源码 enum class SideToRemove {None,Left,Right};// 直线分割多边形 QPolygonF LineS…

多叉树题目:N 叉树的前序遍历

文章目录 题目标题和出处难度题目描述要求示例数据范围进阶 解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 解法三思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;N 叉树的前序遍历 出处&#xff1a;589. N 叉树的前序遍历 难度 3 级 题目…

10-shell编程-辅助功能

一、字体颜色设置 第一种: \E[1:色号m需要变色的字符串\E[0m 第二种: \033[1:色号m需要变色的字符串\033[0m ########################### \E或者\033 #开启颜色功能 [1: #效果 31m #颜色色号 \E[0m #结束符 1&#xff0c;颜色案例 2&#xff0c;效果案例 二、gui&am…

波奇学Linux:网络接口

127.0.0.1本地回环ip&#xff0c;用于本地测试&#xff0c;不会进行网络通信 TCP是面向连接的&#xff0c;服务器比较被动 需要服套接字监听 listen状态 正常通信默认会进行主机序列和网络序列的转换 TcpServer.cc #pragma once#include<iostream> #include<string…

GAMES101 学习4

材质和外观 材质 BRDF 漫反射 任何方向的光进来都会被均匀的反射到周围各个不同的方向上去 假设能量守恒&#xff0c;那么 Li Lo&#xff0c;这之后BRDF就 &#xff0c;就可以定义一个反照率 &#xff08;Albeo&#xff09; - &#xff0c;在&#xff08;0 - 1&#xff0…

【包远程安装运行】SpringBoot+Mysql实现的图书商城平台+演示视频+开发文档(论文模板)

今天发布的是一款由SpringBootMySQL实现的在线图书商城系统源码&#xff0c;系统主要实现的功能分前台用户和后台管理。 前台功能主要有&#xff1a; 图书物展示、图书分类展示、图书搜索、用户登录注册、图书收藏、图书添加购物车、用户个人信息修改、用户充值提交、购物车图…

【Linux基础】ubuntu虚拟机配置及原理

一、虚拟机 虚拟机&#xff08;Virtual Machine&#xff0c;VM&#xff09;是一种软件实现的计算机系统&#xff0c;它在物理计算机上模拟了一个完整的计算机硬件环境&#xff0c;包括处理器、内存、存储设备和网络接口等。通过虚拟机&#xff0c;用户可以在单个物理计算机上同…

扭矩衰减的影响因素及改善措施——SunTorque智能扭矩系统

智能扭矩系统-智能拧紧系统-扭矩自动控制系统-SunTorque 扭矩衰减是许多机械系统中常见的问题&#xff0c;特别是在长期运行或高负荷工作环境下。扭矩衰减不仅影响设备的性能&#xff0c;还可能引发安全隐患。因此&#xff0c;了解扭矩衰减的影响因素及采取相应的改善措施至关…

Python Flask框架 -- ORM模型的CRUD操作(增删改查)

CRUD操作 使用ORM进行CRUD(Create、Read、Update、Delete)操作&#xff0c;需要先把操作添加到会话中&#xff0c;通过db.session可以获取到会话对象。会话对象只是在内存中&#xff0c;如果想要把会话中的操作提交到数据库中&#xff0c;需要调用db.session.commit()操作&…

Navicat Premium 16中文---数据库管理与开发的强大引擎

Navicat Premium 16是一款功能强大的数据库管理工具&#xff0c;旨在为用户提供高效、便捷的数据库连接、管理和保护体验。该软件支持多种数据库系统&#xff0c;如MySQL、Oracle、SQL Server等&#xff0c;满足用户多样化的需求。通过直观的图形界面&#xff0c;用户可以轻松进…

电脑中msvcp140_codecvt_ids.dll丢失的解决方法,实测有效的方法

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中最常见的就是缺少某个DLL文件。而msvcp140CODECVTIDS.dll就是其中之一。那么&#xff0c;msvcp140CODECVTIDS.dll是什么&#xff1f;msvcp140CODECVTIDS.dll文件属性又是什么呢&#xff1f;msvcp140C…

探索LLaMA模型:架构创新与Transformer模型的进化之路

引言 在人工智能和自然语言处理领域&#xff0c;预训练语言模型的发展一直在引领着前沿科技的进步。Meta AI&#xff08;前身为Facebook&#xff09;在2023年2月推出的LLaMA&#xff08;Large Language Model Meta AI&#xff09;模型引起了广泛关注。LLaMA模型以其独特的架构…

C语言例4-3:复合语句,输出a,b的值

代码如下&#xff1a; //复合语句&#xff0c;输出a,b的值 #include<stdio.h> int main(void) {int a 10;printf("a %d\n",a);{int b20; //复合语句printf("b %d\n",b); //复合语句中的数据定义语句放在其他语句的前面}return …

【每日力扣】332. 重新安排行程与51. N 皇后

&#x1f525; 个人主页: 黑洞晓威 &#x1f600;你不必等到非常厉害&#xff0c;才敢开始&#xff0c;你需要开始&#xff0c;才会变的非常厉害。 332. 重新安排行程 给你一份航线列表 tickets &#xff0c;其中 tickets[i] [fromi, toi] 表示飞机出发和降落的机场地点。请你…

急速解决代码扫描Mybatis的SQL注入问题

1.sql注入是什么 sql注入见名知意&#xff0c;是指一些非法用户通过将一些特殊字符或者sql语句插入到要提交的表单之中&#xff0c;从而让服务器在不知情的情况下执行恶意的sql命令&#xff0c;从而引发一系列的安全隐患。 讲的通俗一点就是说&#xff0c;用户利用sql语法将一…