EDUCoder编程练习题解(循环一)

2024-04-08 17:48

本文主要是介绍EDUCoder编程练习题解(循环一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

编辑与调试    顺序结构    选择结构一    选择结构二    循环一     循环二    函数
递归与嵌套函数     一维数组和二维数组     字符数组      指针一    指针二     结构体      文件

循环一

第1关:小球自由落体运动
任务描述
一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米? 结果保留两位小数。

输入
从键盘输入M和N的值。

输出
它在第N次落地时反弹多高?共经过多少米? 保留两位小数,空格隔开,放在一行。

测试说明
平台会对你编写的代码进行测试,若是与预期输出相同,则算通关。
样例输入:
1000 5
样例输出:
31.25 2875.00

解题说明:
注意大坑:经过多少米是指最后到落地经过了多少米,最后一次没有反弹的!
解题程序:

/* 第1关:小球自由落体运动 */#include<stdio.h>
int main(void)
{/*********Begin*********/float m;int n, i;scanf("%f%d", &m, &n);float sum = m;for(i = 1; i <= n; i++) {if(i > 1)sum += m + m;m /= 2;}printf("%.2f %.2f\n", m, sum);/*********End**********/return 0;
}

第2关:求解出n以内所有能被5整除的正整数的乘积
任务描述
本关任务:求解出n以内(包含n)所有能被5整除的正整数数的乘积s。

输入
输入包含多个样例,每个样例一个正整数n,占一行。读取到文件结尾。输入的n不超过100。

输入格式

scanf(“%d”, &n)
输出
对于每个样例n,输出n以内(包含n)所有能被5整除的正整数的乘积。
输出格式

printf(“%d\n”, s);

测试说明
平台会对你编写的代码进行测试,若是与预期输出相同,则算通关。
样例输入:
19
样例输出:
750

解题程序:

/* 第2关:求解出n以内所有能被5整除的正整数的乘积 */#include<stdio.h>
int main(void)
{  /*********Begin*********/int n;while(scanf("%d", &n) != EOF) {int p = 1, i; for(i = 5; i <= n; i += 5)p *= i; printf("%d\n", p);  }/*********End**********/ return 0;
}

第3关:最大公约数和最小公倍数
任务描述
本关任务:输入两个正整数m和n,求其最大公约数和最小公倍数。

输入
从键盘上任意输入两个数。

输出
分两行输出,第一行输出:最大公约数是多少;第二行输出最小公倍数是多少。

测试说明
平台会对你编写的代码进行测试,若是与预期输出相同,则算通关。
样例输入
2 3
样例输出
最大公约数是:1
最小公倍数是:6

解题程序:

/* 第3关:最大公约数和最小公倍数 */#include<stdio.h>int gcd(int n, int m)
{return m == 0 ? n : gcd(m, n % m);
}int main(void)
{  /*********Begin*********/int n, m;scanf("%d%d", &n, &m);int g = gcd(n, m);printf("最大公约数是:%d\n", g);printf("最小公倍数是:%d\n", n / g * m);  /*********End**********/ return 0;
}

第4关:字符串中各类字符数的统计
任务描述
本关任务:输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。

输入
一行字符。
输出
统计每种字符的个数值。

样例输入:
aklsjflj123 sadf918u324 asdf91u32oasdf/.';123
样例输出:
23 16 2 4

解题程序(2种):

/* 第4关:字符串中各类字符数的统计 */#include<stdio.h>
#include<ctype.h>#define N 1024
char s[N +1];int main(void)
{  /*********Begin*********/int letter = 0, digit = 0, space = 0, other = 0, i;fgets(s, N, stdin);for(i = 0; s[i] != '\n'; i++)if(isalpha(s[i])) letter++;else if(isdigit(s[i])) digit++;else if(isspace(s[i])) space++;else other++;printf("%d %d %d %d\n", letter, digit, space, other);  /*********End**********/ return 0;
}
/* 第4关:字符串中各类字符数的统计 */#include<stdio.h>
#include<ctype.h>#define N 1024
char s[N +1];int main(void)
{  /*********Begin*********/int letter = 0, digit = 0, space = 0, other = 0, i;fgets(s, N, stdin);for(i = 0; s[i] != '\n'; i++)if('a'<=s[i]&&s[i]<='z'||'A'<=s[i]&&s[i]<='Z') letter++;else if('0'<=s[i]&&s[i]<='9') digit++;else if(s[i] == ' ') space++;else other++;printf("%d %d %d %d\n", letter, digit, space, other);  /*********End**********/ return 0;
}

第5关:求sn=a+aa+aaa+aaaa+…的值
任务描述
本关任务:键盘输入正整数a和n,编程 s=a+aa+aaa+aaaa+aa…a(n个a)的值。
例如:
a=2 ,n=5时,表示计算由2组成的数的和:2+22+222+2222+22222 ( 此时 共有5个数相加)。

输入:5 3 表示3个由5组成的数相加,即计算5+55+555的值,输出:615

输入:5 4 表示计算5+55+555+5555的值,输出:6170

测试说明
以下是测试样例:

输入:5 3
输出:615
输入:6 4
输出:7404
输入:3 5
输出:37035

解题代码:

/* 第5关:求sn=a+aa+aaa+aaaa+......的值 */#include<stdio.h>int main(void)
{  /*********Begin*********/int a, n, t = 0, sum = 0, i;scanf("%d%d", &a, &n);for(i = 1; i <= n; i++) {t *= 10, t += a;sum += t;}printf("%d\n", sum);  /*********End**********/ return 0;
}

编辑与调试    顺序结构    选择结构一    选择结构二    循环一     循环二    函数
递归与嵌套函数     一维数组和二维数组     字符数组      指针一    指针二     结构体      文件

这篇关于EDUCoder编程练习题解(循环一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/886188

相关文章

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Java中的for循环高级用法

《Java中的for循环高级用法》本文系统解析Java中传统、增强型for循环、StreamAPI及并行流的实现原理与性能差异,并通过大量代码示例展示实际开发中的最佳实践,感兴趣的朋友一起看看吧... 目录前言一、基础篇:传统for循环1.1 标准语法结构1.2 典型应用场景二、进阶篇:增强型for循环2.

Python循环结构全面解析

《Python循环结构全面解析》循环中的代码会执行特定的次数,或者是执行到特定条件成立时结束循环,或者是针对某一集合中的所有项目都执行一次,这篇文章给大家介绍Python循环结构解析,感兴趣的朋友跟随... 目录for-in循环while循环循环控制语句break语句continue语句else子句嵌套的循

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Python 异步编程 asyncio简介及基本用法

《Python异步编程asyncio简介及基本用法》asyncio是Python的一个库,用于编写并发代码,使用协程、任务和Futures来处理I/O密集型和高延迟操作,本文给大家介绍Python... 目录1、asyncio是什么IO密集型任务特征2、怎么用1、基本用法2、关键字 async1、async

Spring三级缓存解决循环依赖的解析过程

《Spring三级缓存解决循环依赖的解析过程》:本文主要介绍Spring三级缓存解决循环依赖的解析过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、循环依赖场景二、三级缓存定义三、解决流程(以ServiceA和ServiceB为例)四、关键机制详解五、设计约

Java并发编程之如何优雅关闭钩子Shutdown Hook

《Java并发编程之如何优雅关闭钩子ShutdownHook》这篇文章主要为大家详细介绍了Java如何实现优雅关闭钩子ShutdownHook,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 目录关闭钩子简介关闭钩子应用场景数据库连接实战演示使用关闭钩子的注意事项开源框架中的关闭钩子机制1.

Spring 中的循环引用问题解决方法

《Spring中的循环引用问题解决方法》:本文主要介绍Spring中的循环引用问题解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录什么是循环引用?循环依赖三级缓存解决循环依赖二级缓存三级缓存本章来聊聊Spring 中的循环引用问题该如何解决。这里聊

C# foreach 循环中获取索引的实现方式

《C#foreach循环中获取索引的实现方式》:本文主要介绍C#foreach循环中获取索引的实现方式,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、手动维护索引变量二、LINQ Select + 元组解构三、扩展方法封装索引四、使用 for 循环替代