上机练习十四
导航:复试上机历年真题,题目未搜集全
十四:2003 十三:2004
十二:2005 十一:2006
十:2007 九:2008
八:2009 七:2012
六:2013 五:2014
四:2015 三:2017
二:2018 一:2019
十四、2003
1、字符串统计连续整数
题目:
输入一个字符串,内有数字和非数字字符。如 A123X456Y7A,302ATB567BC,打印字符串中所有连续(指不含非数字字符)的数字所组成的整数,并统计共有多少个整数
代码:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
using namespace std;
//1. 输入一个字符串,内有数字和非数字字符。如 A123X456Y7A,302ATB567BC,
//打印字符串中所有连续(指不含非数字字符)的数字所组成的整数,并统计共有
//多少个整数。
const int maxn = 100;
bool isNumber(char ch)
{
if(ch<='9'&&ch>='0')
return true;
else
return false;
}
char a[maxn][maxn];//用二维数组统计
int row=0, col=0;
int main()
{
char str[maxn];
int i, j, len;
gets(str);
len = strlen(str);
memset(a, 0, maxn*maxn);
for(i=0;i<len;i++)//逐个判断
{
while(i<len&&isNumber(str[i])==true)//如果是数字则放在二维数组中
a[row][col++] = str[i++];
row++;
col = 0;
}
for(i=0;i<row;i++)
if(strlen(a[i])>0)//打印数字
{
for(j=0;j<strlen(a[i]);j++)
printf("%c", a[i][j]);
printf("\n");
}
return 0;
}
2、分糖果
题目:
甲、乙、丙、丁四人共有糖若干块,甲先拿出一些糖分给另外三人,使他们三人的糖数加倍;乙拿出一些糖分给另外三人,也使他们三人的糖数加倍;丙、丁也照此办理,此时甲、乙、丙、丁四人各有 16 块,编程求出四个人开始各有糖多少块。
逆推即可
代码:
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
//甲、乙、丙、丁四人共有糖若干块,甲先拿出一些糖分给另外三人,使他们
//三人的糖数加倍;乙拿出一些糖分给另外三人,也使他们三人的糖数加倍;丙、
//丁也照此办理,此时甲、乙、丙、丁四人各有 16 块,编程求出四个人开始各有
//糖多少块
int main()
{
int sums, i, j;
int a[4];
fill(a, a+4, 16);//最后每个人都有16块糖果
for(i=3;i>=0;i--)
{
sums = 0;
for(j=0;j<4;j++)
{
if(j!=i)//分别找到另外三个人,糖果减半
{
sums += a[j] / 2;
a[j] /= 2;
}
}
a[i] += sums;
}
for(i=0;i<4;i++)
printf("%d ", a[i]);
return 0;
}
3、汇总链接
posted on 2020-04-18 19:08 weilanhanf 阅读(532) 评论(0) 编辑 收藏 举报
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥