当前位置:   article > 正文

中国电子学会C++考级真题一级题精选_c++一级考试题目

c++一级考试题目

第一题:给定3个整数a、b、 C,计算表达式(a+b)/C的值, /是整除运算。

输入仅一行,包括三个整数a. b. C, 数与数之间以一个空格分开。

( - 10,000 < a,b,c < 10,000, c不等于0)

输出一行,即表达式的值。

样例输入:1 1 3

样例输出:0

答案:

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int a,b,c,d;
  6. cin>>a>>b>>c;
  7. d=(a+b)/c;
  8. cout<<d;
  9. return 0;
  10. }

第二题反向输出一个三位数

将一个三位数反向输出

输入一个三位数,反向输出n。

样例输入:100

样例输出:001

答案:

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int n,bai,shi,ge;
  6. cin>>n;
  7. bai=n/100;
  8. shi=n%100/10;
  9. ge=n%10;
  10. n=ge*100+shi*10+bai;
  11. cout<<n;
  12. return 0;
  13. }

第三题:判断能否被3 , 5, 7整除

给定-一个整数,判断它能否被3 , 5, 7整除,并输出以下信息:

1、能同时被3,5, 7整除(直接输出3 5 7 ,每个数中间一个空格) ;

2、只能被其中两个数整除(输出两个数,小的在前,大的在后。例如: 3 5或者3 7或者5 7,中间用空格分隔) ;

3、只能被其中一个数整除(输出这个除数) ;

4、不能被任何数整除,输出小写字符’n’,不包括单引号。

样例输入105

样例输出357

答案

  1. int main() {
  2. int num;
  3. cin >> num;
  4. bool divisibleBy3 = (num % 3 == 0);
  5. bool divisibleBy5 = (num % 5 == 0);
  6. bool divisibleBy7 = (num % 7 == 0);
  7. if (divisibleBy3 && divisibleBy5 && divisibleBy7) {
  8. cout << "3 5 7" << endl;
  9. } else if (divisibleBy3 && divisibleBy5) {
  10. cout << "3 5" << endl;
  11. } else if (divisibleBy3 && divisibleBy7) {
  12. cout << "3 7" << endl;
  13. } else if (divisibleBy5 && divisibleBy7) {
  14. cout << "5 7" << endl;
  15. } else {
  16. cout << "No" << endl;
  17. }
  18. return 0;
  19. }

第四题:骑车与走路

在北大校园里,没有自行车,上课办事会很不方便.

但实际上,并非去办任何事情都是骑车快因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间.

假设找到自行车,开锁并车上自行车的时间为27秒,停车锁车的时间为23秒,步行每秒行走1.2米骑车每秒行走3.0米。

请判断走不同的距离去办事,是骑车快还是走路快。

输入:输入一行,包含一个整数,表示一次办事要行走的距离,单位为米。

输出:输出一行,如果骑车快,输出一行" Bike" ;如果走路快,输出一行"Walk" ;如果一样快,输出一行"All",

样例输入:120

样例输出:Bike

答案:

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. float b,w;
  6. int a;
  7. cin>>a;
  8. b=50+a/3;
  9. w=a/1.2;
  10. if (b>w) cout<<"bike";
  11. else if(b==w) cout<<"All";
  12. else cout<<"walk";
  13. return 0;

第五题

输入两个正整数m和k,其中1 < m < 100000, 1 < k< 5,判断m能否被19整除,且恰好含有k个3,如果满足条件,则输出YES,否则,输出NO。

例如,输入:438333   满足条件,输出YES.

如果输入:393313

尽管有3个3,但不能被19整除,也不满足条件,应输出NO。

样例输入:43833 3

样例输出:YES

答案:

  1. cpp
  2. #include <iostream>
  3. using namespace std;
  4. int main() {
  5. int m, k;
  6. cin >> m >> k;
  7. // 判断m能否被19整除
  8. bool divisibleBy19 = (m % 19 == 0);
  9. // 统计m中数字3的个数
  10. int countThree = 0;
  11. int temp = m;
  12. while (temp > 0) {
  13. if (temp % 10 == 3) {
  14. countThree++;
  15. }
  16. temp /= 10;
  17. }
  18. // 判断是否满足条件
  19. if (divisibleBy19 && countThree == k) {
  20. cout << "YES" << endl;
  21. } else {
  22. cout << "NO" << endl;
  23. }
  24. return 0;
  25. }

在这个程序中,我们首先声明两个整数变量`m`和`k`来存储输入的两个正整数。然后,我们判断`m`是否能被19整除,并将结果保存在布尔变量`divisibleBy19`中。

接下来,我们使用循环和取余操作来统计`m`中数字3的个数。我们用一个临时变量`temp`来存储`m`的值,在每次循环中,我们取`temp`的个位数进行判断,如果等于3,则将计数器`countThree`加1。最后,我们将`temp`除以10,以便在下一次循环中继续处理下一位数字。

最后,我们使用条件语句判断是否满足条件。如果`m`能被19整除且数字3的个数等于`k`,则输出"YES";否则,输出"NO"。 你可以将上述代码复制到一个C++编译器中,输入两个正整数`m`和`k`,然后运行程序,即可得到相应的输出结果。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/169705?site
推荐阅读
相关标签
  

闽ICP备14008679号