zoukankan      html  css  js  c++  java
  • 杭电2010计算机复试笔试题 2道acm简单题(2010):1.猜数字游戏;2.字符串提取数字并求和;

    //第一题是猜数字的游戏。
    //题目:随即产生一个3位的正整数,让你进行猜数字,
    //如果猜小了,输出:“猜小了,请继续”。
    //如果猜大了,输出:“猜大了,请继续”。
    //如果猜对了。输出:“恭喜你,猜对了”。
    //不过最多只能猜10次,如果猜了10次还没有猜对,就退出程序,输出:“Bye Bye”。

    /*总结:此题最主要的地方就是产生随机数的方法:rand() % N + A, A为起始位,N为数字的总数。例如:随机生成0~10的数字,rand()%(10-0+1)+0;生成1~10的数字:rand()%(10-1+1)+1;生成100~999的数字:rand()%(999-100+1)+100*/
    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main()
    {
    int r;//记录随机产生的三位数
    //srand函数是随机数发生器的初始化函数。原型:void srand(unsigned int seed);
    //srand和rand()配合使用产生伪随机数序列。
    srand(unsigned(time(NULL)));
    //rand函数在产生随机数前,需要系统提供的生成伪随机数序列的种子,rand根据这个种子的值产生一系列随机数。
    r = rand() % 900 + 100;
    printf("输入一个你猜的数: ");
    int n;
    int cnt = 0;
    while (~scanf("%d",&n))
    {
    if (n > r)
    {
    printf("猜大了,请继续 ");
    }
    else if (n < r)
    {
    printf("猜小了,请继续 ");
    }
    else
    {
    printf("恭喜你,猜对了 ");
    break;//猜对退出
    }
    cnt++;
    if (cnt==9)
    {
    printf("Bye Bye ");
    break;
    }
    }

    return 0;
    }

    //第二题:字符串提取数字并求和
    //字符串求和。编写函数 FindAndSum,输入一个字符串,把字符串中的数字作为整数进行求和,并输出结果。Sample : 输入:There are some apple.输出:0 。输入:124and 1524 输出:1648 。
    #include<iostream>
    #include<string>
    #include<cctype>
    using namespace std;
    int FindAndSum(string str)
    {
    int temp = 0, sum = 0;
    for (int i = 0; i < str.length(); i++)
    {
    if (isdigit(str[i]))
    {
    //124,首先是1,逐渐乘以10直到遇到字符,乘以了100,在百位,其他位也类似
    temp = temp * 10 + str[i] - '0';
    }
    else
    {
    sum += temp;
    temp = 0;
    }
    }
    return sum;
    }

    int main()
    {
    string str;
    cout << "输入一个字符串" << endl;
    //cin >> str;
    getline(cin, str);//不会将末尾的“/n”保存到str中
    str += "/n";
    cout << FindAndSum(str) << endl;
    //下面是测试size和length是否相等
    //cout << str.length()<<endl;
    //cout << str.size()<<endl;
    return 0;
    }

    参考博客:http://blog.csdn.net/hackbuteer1/article/details/6667026

    一生有所追!
  • 相关阅读:
    ruby 中 raise 抛出异常
    ruby中attr_accessor方法的理解
    Redis实现分布式缓存
    应用服务器集群概念
    反向代理和正向代理区别
    如何限制同一用户同时登录多台设备?
    Docker 初始
    Java 的反射机制你了解多少?
    JWT 实战
    判断 uniapp 项目运行到 什么机型
  • 原文地址:https://www.cnblogs.com/BlueBlue-Sky/p/8471091.html
Copyright © 2011-2022 走看看