当前位置: 首页 > news >正文

一些简单的编程题(Java与C语言)

48c96158acea49eba420458a9a8386ae.png

引言:

这篇文章呢,小编将会举一些简单的编程题用来帮助大家理解一下Java代码,并且与C语言做个对比,不过这篇文章所出现的题目小编不会向随缘解题系列里面那样详细的讲解每一到题,本篇文章的主要目的是帮助小编和读者们熟悉Java代码。后续小编将会开始更新java模块的知识体系!!!

一、题目一

编写程序数一下1到 100 的所有整数中出现多少个数字9

1- 题目分析

首先,1~100之间要想出现9,只有可能出现在个位或者十位上,比如说19,这里9就出现在个位上,又比如说91,这里9就出现在十位上,因此我们想要得到1~100以内9的个数,只需要将该数num/10这样就可以得到十位上的数字,num%10这样就可以得到个位上的数字

2- C语言代码编写:

#include <stdio.h>
int main()
{int count = 0;//计数器用来存放9的个数for (int i = 1; i <= 100; i++){if (i / 10 == 9 )count++;//十位上是9就加1if (i % 10 == 9)count++;//个位上是9就加1}printf("%d", count);return 0;
}

3- Java代码编写:

public class Test {public static void main(String[] args) {int count = 0; //存放9的个数for (int i = 1; i <= 100 ; i++) {if(i/10 == 9)count++;if(i%10 == 9)count++;}System.out.println(count);}
}

4- 结果演示:

 3b6d073c87be42d9b2bdb6cb1dffe2c7.png

二、题目二

输出 1000 - 2000 之间所有的闰年

1- 题目分析

关于闰年相比大家都已经很熟悉了,简单说一下判断是不是闰年有两种方法;

  1. 能被4整除但不能被100整除
  2. 能被400整除的数

通过循环获得1000~2000的数。

2- C语言代码编写:

#include <stdio.h>
int main()
{for (int i = 1000; i <= 2000; i++){if ((i % 4 == 0 && i % 100 != 0) || i % 400 == 0){printf("%d ", i);}}return 0;
}

3- java代码编写:

    public class Test {public static void main(String[] args) {for (int i = 1000; i <= 2000 ; i++) {if(i%4 == 0 && i % 100!=0 || i%400==0){System.out.println(i);}}}
}

4- 结果演示:

63bcf9d674a04e0b8fbc397eb4dd46ef.png

36c4137d33a1439881bc9ddb52fe5b2a.png 三、题目三

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 。

1- 题目分析

本题分子都是1,且分母从1~100,每个数想表示出来很简单,因此这道题唯一需要解决的问题就是怎么表示正负,表示正负的方法有很多,这里我就使用一种来介绍一下,看代码

2- C语言代码编写:

#include <stdio.h>
int main()
{double sum = 0.0;int flg = 1;//假设起始为1for (int i = 1; i <= 100; i++){sum = sum + 1.0 / i * flg;//1.0/i是为了得到的数字是小数类型,每位数都与flg相乘flg = -flg;//如果上一个flg是1,则下次循环时flg变为-1,实现正负交替}printf("%lf", sum);return 0;
}

3- java代码编写:

    public class Test {public static void main(String[] args) {double sum = 0.0;int flg = 1;for (int i = 1; i <= 100 ; i++) {sum = sum + 1.0/i*flg;flg = -flg;}System.out.println(sum);}
}

4- 结果演示:

4309ac655fe44c37ad054bccd7fdf390.png

135bd114588c40ddba697b4851a69234.png 四、题目四

输出一个整数的每一位,如:123的每一位是3,2,1

1- 题目分析:

可以通过num%10得到最低位,再通过num/10去除最低位

这里就不详细介绍怎么得到的了,如果有不会的可以点这里查看

题目讲解(2)-CSDN博客

2- C语言代码编写:

#include <stdio.h>
int main()
{int num = 0;scanf("%d", &num);while (num){printf("%d ", num % 10);num /= 10;}return 0;
}

3- Java代码编写:

java的数据输入:

import java.util.Scanner;
public class Test {
public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num = scanner.nextInt();while(num!=0){System.out.println(num%10);num = num /10;}}
}

 这里使用了java中的数据输入,后面介绍java的时候会讲到

4- 结果演示:

c4c7033725754e1da84b9bc025759ffa.png

9975e947f60a4208ac429b619d6a4d47.png

五、题目五

编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序

1- 题目分析

首先需要设置一个正确密码,然后再创建一个数组用来存放你输入的密码,题目中说了有三次输入机会,因此可以使用while循环,循环条件可以是输入次数不为0,这样当循环次数为0也就是说三次都输错了,退出循环。使用strmp函数来比较我们输入的字符串与原密码是否相等,如果相等,则提示登陆成功。

2- C语言代码编写:

#include <stdio.h>
#include <string.h>
int main() {char rightPIN[] = "123456"; // 设定正确密码char inputPIN[20];int count = 3;while (count != 0) {printf("请输入密码:");scanf("%s", inputPIN);if (strcmp(inputPIN, rightPIN) == 0) //比较输入的密码是否和正确密码一样{printf("登录成功!\n");return 0;}else {printf("密码错误,请重新输入。\n");count--;}}printf("三次密码输入错误,退出程序。\n");return 0;
}

3- java代码编写:

import java.util.Scanner;
public class Test {   
public static void main(String[] args) {int count = 3;Scanner scanner = new Scanner(System.in);while(count != 0){System.out.println("你还有"+count+"次机会");System.out.println("请输入密码:");String pass = scanner.nextLine();if (pass.equals("123456")){System.out.println("登陆成功");return;}else{count--;}}}
}

这里使用了java中字符串比较的方法,后续也会介绍到。 

4- 结果演示:

6fe92cca75944fd29ae61c571f5ea9f7.png

7bcef1e8beb4492cb0e3593babdd30af.png


结语:

这篇文章没有介绍什么知识点,主要是为了引出小编后续将要介绍的知识,不过从这篇文章也能了解一些关于java的用法,比如说java的输入,输出,以及字符串比较!

关于C语言的知识,小编还没有更新完成,不过不用担心小编更新Java就不更新C语言后面的知识了,关于C语言剩下的那点内容,小编呢会找时间将它们全部介绍完,能够让大家在我这里找到完整的C语言笔记。敬请期待!!!

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=2wx151v8lw00c

相关文章:

一些简单的编程题(Java与C语言)

引言&#xff1a; 这篇文章呢&#xff0c;小编将会举一些简单的编程题用来帮助大家理解一下Java代码&#xff0c;并且与C语言做个对比&#xff0c;不过这篇文章所出现的题目小编不会向随缘解题系列里面那样详细的讲解每一到题&#xff0c;本篇文章的主要目的是帮助小编和读者们…...

java计算机毕设课设—愤怒小鸟游戏(附源码、文章、相关截图、部署视频)

这是什么系统&#xff1f; 资源获取方式再最下方 java计算机毕设课设—愤怒小鸟游戏(附源码、文章、相关截图、部署视频) 基于Java的愤怒小鸟游戏&#xff0c;我们不仅复刻了原版游戏的核心玩法&#xff0c;还增加了一些创新元素。游戏以2D图形界面呈现&#xff0c;玩家需要…...

【ARM】MDK-Flex服务管理软件使用说明

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 记录MDK网络版部署工具Imtools.exe 的各个界面中相关配置的功能说明 2、 问题场景 解决客户咨询&#xff0c;该服务管理软件如何使用&#xff0c;为客户使用服务管理软件后期自行维护增加一定指导作用。 3、软硬件环…...

【H2O2|全栈】WPS/Office系列有哪些好用的快捷方式?

目录 WPS/Office 前言 准备工作 Office通用快捷键 PPT快捷键 Excel快捷键 Word快捷键 结束语 WPS/Office 前言 本章节属于前端前置知识&#xff0c;即使不学习前端&#xff0c;在工作中掌握常见的WPS/Office办公技能也是十分重要的。在本篇中&#xff0c;我将会分享常…...

对比学习)

目录 概念 数据增强 损失函数 NCE&#xff08;noise contrastive estimation&#xff09; Info NCE CV上的发展 InstDisc InvaSpread CPC CMC MoCo simCLR MoCo v2 SimCLR v2 SwAV BYOL SimSiam MoCo v3 DiNO 概念 通过利用样本之间的相似性和不相似性&…...

第十六届蓝桥杯嵌入式真题

蓝桥杯嵌入式第十二届省赛真题二 蓝桥杯嵌入式第十三届省赛真题一 蓝桥杯嵌入式第十三届省赛真题二 蓝桥杯嵌入式第十四届省赛真题 蓝桥杯嵌入式第十四届模拟考试一 蓝桥杯嵌入式第十四届模拟考试二 蓝桥杯嵌入式第十五届模拟考试一 蓝桥杯嵌入式第十五届模拟考试二 蓝…...

音频转码常用命令

1.转码为wav8k16bit -v提高音量 pitch调高音调 speed调整语速 sox -v 2.0 input.wav -r 8000 output.wav pitch 50 speed 1.05 sox input.wav -r 8000 output.wav 只是转码&#xff0c;不提高音调语速 压缩文件&#xff1a;zip -r filename.zip file1 file2 file3 2.批量转…...

INNER JOIN、LEFT JOIN 和 RIGHT JOIN有什么区别?什么是自连接?

INNER JOIN、LEFT JOIN 和 RIGHT JOIN 都是多表连接的不同方式&#xff0c;它们的主要区别在于它们如何处理表之间不匹配的数据。下面分别介绍它们的区别。 目录 一.多表连接查询 INNER JOIN&#xff08;内连接&#xff09; LEFT JOIN&#xff08;左连接&#xff09; RIGHT…...

原型模式具体和直接调用构造函数创建实例的区别

原型模式与直接调用构造函数创建实例的区别主要在于创建对象的方式和使用场景。让我们一步一步来理解。 直接调用构造函数创建实例 这是我们通常使用的创建对象的方法。通过调用类的构造函数&#xff0c;传入必要的参数来初始化对象。每次都要通过构造函数为对象设置所有初始值…...

MySQL 数据备份与恢复指南

本文将介绍如何通过命令行对 MySQL 数据库进行备份与恢复操作&#xff0c;适用于日常开发和生产环境中的数据管理需求。 1. MySQL 数据备份 MySQL 提供了 mysqldump 工具来执行数据库的备份操作&#xff0c;可以备份单个数据库、多个数据库或整个数据库实例。 1.1 备份单个数…...

NGINX 保护 Web 应用安全之基于 IP 地址的访问

根据客户端的 IP 地址控制访问 使用 HTTP 或 stream 访问模块控制对受保护资源的访问&#xff1a; location /admin/ { deny 10.0.0.1; allow 10.0.0.0/20; allow 2001:0db8::/32; deny all; } } 给定的 location 代码块允许来自 10.0.0.0/20 中的任何 IPv4 地址访问&#xf…...

数据结构——顺序表的基本操作

前言 介绍 &#x1f343;数据结构专区&#xff1a;数据结构 参考 该部分知识参考于《数据结构&#xff08;C语言版 第2版&#xff09;》24~28页 补充 此处的顺序表创建是课本中采用了定义方法为SqList Q来创建&#xff0c;并没有使用顺序表指针的方法&#xff0c;具体两个…...

智能去毛刺:2D视觉引导机器人如何重塑制造业未来

机器人技术已经深入到各个工业领域中&#xff0c;为制造业带来了前所未有的变革。其中&#xff0c;2D视觉引导机器人技术以其精准、高效的特点&#xff0c;在去毛刺工艺中发挥着越来越重要的作用。本文将为您介绍2D视觉引导机器人技术的基本原理及其在去毛刺工艺中的应用&#…...

计算机系统的层次

目录 计算机系统的层次ISA&#xff08;指令集体系结构&#xff09; 计算机系统的层次 计算机硬件是基础指令集体系结构&#xff1a;将硬件的功能封装从指令供软件使用操作系统&#xff1a;提供人机交互界面、提供服务功能的内核例程语言处理系统&#xff1a; 语言处理程序&…...

一起搭WPF架构之LiveCharts.Wpf的简单了解与安装

一起搭WPF架构之LiveCharts.Wpf的简单了解与安装 前言LiveCharts.Wpf介绍LiveCharts.Wpf的安装总结 前言 根据项目需求&#xff0c;我单独留了一个界面用于进行数据分析。数据分析的内容考虑是采用图表的形式将SQLite数据库中存储的数据进行绘制成图&#xff0c;以便数据分析。…...

深度学习杂乱知识

阿达玛乘积&#xff08;Hadamard Product&#xff09;详解 1. 定义&#xff1a; 阿达玛乘积&#xff08;Hadamard Product&#xff09;&#xff0c;又称为元素乘积或逐元素乘积&#xff0c;是指对两个维度相同的矩阵进行逐元素相乘的操作。 假设我们有两个维度相同的矩阵 ( …...

本地编译运行Thingsboard-gateway之python版本——modbus数据采集

1、ideal 我用的是2020版本&#xff0c;这个关系不大&#xff0c;随便 Thingsboard-gateway之python版本源码拉取&#xff08;老版本是java写的&#xff0c;新版都是python写的&#xff09; 地址&#xff1a;git clone https://github.com/thingsboard/thingsboard-gateway.git…...

京东笔试题

和谐敏感词 &#x1f517; 题目地址 &#x1f389; 模拟 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner new Scanner(System.in);int n scanner.nextInt();String s scanner.next();String[] words new String[…...

URP学习(一)

URP是unity出的比较简单的可供改造引擎渲染管线的流程。能实现用较低的代价消耗实现较好的效果。 现记录学习&#xff1a; 一.如何设置URP关键 这步结束后材质会被替换 加package Create/Rendering/URP Universal Rendering Setting设置为urp 材质也需要urp目录下的 几种…...

Linux中修改和查看Redis的内存大小

目录 一&#xff1a;修改redis内存大小1. 编辑配置文件2. 在命令行修改 二&#xff1a;查看redis内存大小1. get maxmemory2. info memory 一&#xff1a;修改redis内存大小 1. 编辑配置文件 sudo vim /etc/redis/redis.conf maxmemory 300MB1、Redis可用内存大小只能是整数&…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存

文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...

MySQL账号权限管理指南:安全创建账户与精细授权技巧

在MySQL数据库管理中&#xff0c;合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号&#xff1f; 最小权限原则&#xf…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

宇树科技,改名了!

提到国内具身智能和机器人领域的代表企业&#xff0c;那宇树科技&#xff08;Unitree&#xff09;必须名列其榜。 最近&#xff0c;宇树科技的一项新变动消息在业界引发了不少关注和讨论&#xff0c;即&#xff1a; 宇树向其合作伙伴发布了一封公司名称变更函称&#xff0c;因…...

springboot 日志类切面,接口成功记录日志,失败不记录

springboot 日志类切面&#xff0c;接口成功记录日志&#xff0c;失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...

Ubuntu系统多网卡多相机IP设置方法

目录 1、硬件情况 2、如何设置网卡和相机IP 2.1 万兆网卡连接交换机&#xff0c;交换机再连相机 2.1.1 网卡设置 2.1.2 相机设置 2.3 万兆网卡直连相机 1、硬件情况 2个网卡n个相机 电脑系统信息&#xff0c;系统版本&#xff1a;Ubuntu22.04.5 LTS&#xff1b;内核版本…...