• 上机练习十四


    导航:复试上机历年真题,题目未搜集全
    十四: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("
    ");
    		}
    		
    	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;
     } 
    
  • 相关阅读:
    显示器的分类和主要性能指标
    关闭Win 10 自动更新功能
    MySQL下载安装教程
    经济学十大原理
    西方经济学概述(经济学原理 1 )
    工作表基本操作
    输入和编辑工作表
    因特网概述
    摩尔定律(Moore's Law)
    C 语言编程机制
  • 原文地址:https://www.cnblogs.com/welan/p/12727519.html
Copyright © 2020-2023  润新知