计算机二级编程题的实现

废话不多说,直接上代码。主要用c++实现,不过有的也会有c和c++混着用的情况。

#include<iostream>
#include<string>
#include<vector>
#include<cmath>
#include<iomanip>
using namespace std;
//求100以内能被17整除的最大自然数
void Q1() {int i = 100;for (; i > 0; i--) {if (i % 17 == 0) {cout << i << endl;return;}}
}
//已知a,b,c都是1位整数,求abc+cba=1333时的abc
void Q2() {for (int i = 0; i < 10; i++) {for (int j = 0; j < 10; j++) {for (int k = 0; k < 10; k++) {if ((i * 100 + j * 10 + k) + (k * 100 + j * 10 + i) == 1333) {cout << i << j << k << endl;return;}}}}
}
//200到400之间不能被3整除的整数的和
void Q3() {int sum = 0;for (int i = 200; i < 401; i++) {if (i % 3 != 0) {cout << i << " ";sum += i;}}cout << sum << endl;
}
//输入10个数字,统计非负数的个数,计算非负数的和
void Q4(int a[],int len) {int sum = 0;int count = 0;for (int i = 0; i < len; i++) {if (a[i] < 0) {count++;sum += a[i];}}cout << "非负数有" << count << "个,其和为:" << sum << endl;//测试函数如下/*int arr[] = { -1,-2,-3,1,2,4,5,1,-9,-16 };int len = sizeof(arr) / sizeof(arr[0]);Q4(arr,len);*/
}
//100以内自然偶数和
void Q5() {int sum = 0;for (int i = 0; i < 100; i++) {if (i % 2 == 0) {cout << i << " ";sum += i;}}cout << sum << endl;
}
//五个数求和并输出
void Q6(int a[]) {int sum = 0;for (int i = 0; i < 5; i++) {sum += a[i];}cout << sum << endl;/*测试函数:int a[] = { 1,2,3,4,5 };Q6(a);*/
}
//求1到101每三个一乘的和 1*2*3+3*4*5+....+99*100*101
void Q7() {int sum = 0;for (int i = 1; i <= 99; i+=2) {cout << i << "*" << i + 1 << "*" << i + 2;if (i != 99) cout << "+";else cout << "=";sum += i * (i + 1) * (i + 2);}cout << sum << endl;
}
//字符串中的所有字符a用*代替
void Q8(char s[]) {int i = 0;while (s[i]!='\0') {if (s[i] == 'a') {s[i] = '*';}i++;}/** 测试函数:* char s[] = "I love china aaa a";Q8(s);cout << s;*/
}
//数组[1,2,3,4,5]逆序
void Q9Reverse(int a[], int len) {int temp=0;for (int i = 0; i < len / 2; i++) {temp = a[i];a[i] = a[len - 1 - i];a[len - 1 - i] = temp;}/** 测试函数:* int a[] = { 1,2,3,4,5 };Q9Reverse(a,5);for (int i = 0; i < 5; i++) {cout << a[i] << " ";}*/
}
//第十题丢失
//判断输入正负、奇偶,正数输出z;负数f;偶数o,奇数j
void Q11() {int a;cin >> a;if (a % 2 == 0) cout << "o" << endl;else cout << "j" << endl;if (a >= 0) cout << "z" << endl;else cout << "f" << endl;
}
//1-200之间不能被5整除的整数和
void Q12() {int sum = 0;for (int i = 0; i <= 200; i++) {if (i % 5 != 0) {cout << i << " ";sum += i;}}cout << endl;cout << sum;
}
//输入n,a,计算a+aa+aaa+....+aaaaaa(n个a)
void Q13() {int n, a;int temp;cin >> n >> a;temp = a;int sum = 0;for (int i = 1; i <= n; i++) {cout <<  temp<< " ";sum += temp;temp = pow(10, i) * a + temp;}cout << endl;cout << sum;
}
//求五个数的最大值和平均值
void Q14() {int a[] = { 15,231,25,654,33 };int max = 0;double sum = 0;for (int i = 0; i < 5; i++) {if (a[i] > max) max = a[i];sum += a[i];}cout << "最大值:" << max << ",平均值:" << sum / 5 << endl;
}
//输出200-400能被3整除且个位是6的
void Q15() {for (int i = 200; i <= 400; i++) {if ((i % 3 == 0) && (i % 10 == 6)) {cout << i << " ";}}cout << endl;
}
//去掉字符串之中的'a'
void Q16() {//真的去掉char s[] = "aaaaacjdalksbaaa";int len = strlen(s);char* s1 = new char;int i = 0;int j = 0;while (s[i]) {if (s[i] != 'a') {s1[j++] = s[i];}i++;}s1[j] = '\0';cout << s1 << endl;//假的去掉i = 0;while (s[i]) {if (s[i] != 'a') cout << s[i];i++;}
}
//200-400之间不能被7整除的整数和
void Q17() {int sum = 0;for (int i = 200; i <= 400; i++) {if (i % 7 != 0) {cout << i << " ";sum += i;}}cout << endl;cout << sum << endl;
}
//200-400之间不能被5整除的整数和
void Q18() {int sum = 0;for (int i = 200; i <= 400; i++) {if (i % 5 != 0) {cout << i << " ";sum += i;}}cout << endl;cout << sum << endl;
}
//统计十个数中非正数的个数及正数的和
void Q19() {int count = 0;int sum = 0;int a[] = { 1,-23,4,-1,5,-52,1,5,6,7 };for (int i = 0; i < 10; i++) {if (a[i] <= 0) {count++;sum += a[i];}}cout << "非正数有:" << count << "个,和为:" << sum << endl;
}
//字符串中大写字母变小写字母
void Q20() {char s1[] = "AaBbCcDd";char index = 'A' - 'a';int i = 0;while (s1[i]) {if (s1[i] >= 'A' && s1[i] <= 'Z') {s1[i] -= index;}i++;}cout << s1 << endl;
}
//打印所有水仙花数
void Q21() {int a, b, c;for (int i = 100; i < 1000; i++) {a = i % 10;b = i / 10 % 10;c = i / 100 % 10;if (pow(a, 3) + pow(b, 3) + pow(c, 3) == i) {cout << i << endl;}}
}
//100米自由落下的球,每次反弹原来高度一半,求第十次共经过多少米,反弹多高
void Q22() {double sum =0;double height = 100;for (int i = 0; i < 10; i++) {sum += height; height /= 2;sum += height;cout << "总路程:" << sum << "反弹高度:" << height << endl;}
}
//输出0-200能被3整除且个位是6的
void Q23() {for (int i = 0; i <= 200; i++) {if ((i % 3 == 0) && (i % 10 == 6)) {cout << i << " ";}}cout << endl;
}
//计算一个数的阶乘
int Q24(int n) {if (n == 1) return 1;else return n * Q24(n - 1);
}
//判断从键盘输入的字符中数字的个数,大写字母的个数,小写字母的个数,其他字符的个数
//*作为字符输入结束标志
void Q25() {int UppercaseLetters = 0;int LowercaseLetters = 0;int number = 0;int others = 0;string s="2021-11-17 Best wishes For YOU*";//cin >> s;int i = 0;while (s[i] != '*') {if (s[i] >= 'A' && s[i] <= 'Z') UppercaseLetters++;else if (s[i] >= 'a' && s[i] <= 'z') LowercaseLetters++;else if (s[i] >= '0' && s[i] <= '9') number++;else others++;i++;}cout << "大写、小写、数字、其他分别有:" << UppercaseLetters << " "<< LowercaseLetters << " " << number << " " << others << "个" << endl;
}
//循环打印平行四边形
/*    ****
*    ****
*   ****
*  ****
* ****
*/
void Q26() {int width;for (int i = 0; i < 5; i++) {width = 4 - i;while (width--) cout << " ";cout << "****" << endl;}
}
//数组实现字符串逆序输出
void Q27() {char s1[] = "I love China";for (int i = strlen(s1); i >= 0; i--) {cout << s1[i];}
}
//求1-1/2+1/3-1/4......+1/99-1/100
void Q28() {double sum = 0;double n = 1;double a = 1;for (int i = 1; i <= 100; i++) {a = pow(-1, i - 1) * (1 / n);sum += a;n++;}cout << endl;cout << sum << endl;
}
//3个学生4门课成绩,输出每个学生总分和平均分并输出,保留一位小数
void Q29() {int a1[] = { 60,70,65,75 };int a2[] = { 75,80,75,90 };int a3[] = { 95,75,90,65 };double sum1=0, sum2=0, sum3=0;for (int i = 0; i < 4; i++) {sum1 += a1[i];sum2 += a2[i];sum3 += a3[i];}cout << "总分为:" << sum1 << "," << sum2 << "," << sum3 << "," << endl;printf("平均分为:%.1f,%.1f,%.1f", sum1 / 4, sum2 / 4, sum3 / 4);
}
//求两个正整数的最大公约数
void Q30() {int a = 50, b = 75;if (a < b) {int temp = a;a = b;b = temp;}for (int i = b; i >= 1; i--) {if (b % i == 0 && a % i == 0) {cout << "最大公约数为:" << i << endl;return;}}
}
//100以内自然奇数之和
void Q31() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 != 0) {cout << i << " ";sum += i;}}cout << sum << endl;
}
//200到400之间能被3整除且个位是7的整数
void Q32() {for (int i = 200; i <= 400; i++) {if (i % 3 == 0 && i % 10 == 7) {cout << i << endl;}}
}
//计算1*2*3+4*5*6+...+97*98*99
void Q33() {int sum = 0;for (int i = 1; i <= 97; i += 3) {sum += i * (i + 1) * (i + 2);if(i!=97)cout << i << "*" << i + 1 << "*" << i + 2<<"+";elsecout << i << "*" << i + 1 << "*" << i + 2 << "=";}cout << sum << endl;
}
//输入n,输出1*1+2*2+3*3+4*4+...+n*n,要求编写函数求平方
int MyPow(int a) {return a * a;
}
void Q34(int n) {int sum = 0;for (int i = 0; i < n; i++) {sum += MyPow(i + 1);}cout << sum << endl;
}
//1-200不能被3整除的整数和
void Q35() {int sum = 0;for (int i = 1; i <= 200; i++) {if (i % 3 != 0) {sum += i;}}cout << sum << endl;
}
//36题和29题重复
//输入华氏温度输出摄氏温度(保留两位)
void Q37(double f) {double c;c = (5.0 / 9.0) * (f - 32);cout << setiosflags(ios::fixed)<<setprecision(2)<<c << "℃" << endl;}
//输入任意大小三个数降序输出
void Q38(int a,int b,int c) {cout << (a >= b ? (a >= c ? a : c) : (b >= c ? b : c)) << " ";cout << (a >= b ? (a >= c ? c : a) : (b >= c ? c : b)) << " ";cout << (a <= b ? (a <= c ? a : c) : (b <= c ? b : c)) << endl;/*  Q38(16,93,0x2123ACD);*/
}
//1元兑换5分,2分,1分共50个,每种硬币最少一枚,问共有多少种方案?每种方案中三种
//硬币的数量
void Q39() {int count = 0;for (int i = 1; i < 20; i++) {for (int j = 1; j < 50; j++) {for (int k = 1; k < 100; k++) {if (i * 5 + j * 2 + k == 100&&i+j+k==50) {count++;cout << "5分" << i << "个,2分" << j << "个,1分" << k << "个" << endl;}}}}cout << "共" << count << "种方案" << endl;
}
//输入园半径,计算面积周长,保留两位
void Q40(double r) {double length, area;area = r * r * 3.14159265358979323846264338;length = 2 * 3.14159265358979323846264338 * r;cout << setiosflags(ios::fixed) << setprecision(2) <<"面积:" << area << ",周长:" << length << endl;
}
//输入字符串,整数m,n,输出字符串从m开始的n位
void Q41() {char s[] = "abcdefg";int m = 2;int n = 3;while (n--) {cout << s[m - 1];m++;}
}
//输入一个不多于5位的正整数,判断它是几位数字并且逆序输出
void Q42(int n) {int temp;if (n / 10000 != 0) {cout << "这是一个五位数" << endl;for (int i = 0; i < 5; i++) {temp = n / pow(10, i);temp %= 10;cout << temp << " ";}}else if (n / 1000 != 0) {cout << "这是一个四位数" << endl;for (int i = 0; i < 4; i++) {temp = n / pow(10, i);temp %= 10;cout << temp << " ";}}else if (n / 100 != 0) {cout << "这是一个三位数" << endl;for (int i = 0; i < 3; i++) {temp = n / pow(10, i);temp %= 10;cout << temp << " ";}}else if (n / 10 != 0) {cout << "这是一个两位数" << endl;for (int i = 0; i < 2; i++) {temp = n / pow(10, i);temp %= 10;cout << temp << " ";}}else {cout << "这是一个个位数" << endl;cout << n << endl;}
}
//输出Fibonacci的前40项
int Q43(int n) {if (n == 1 || n == 2) return 1;else return Q43(n - 1) + Q43(n - 2);/*for (int i = 1; i <= 40; i++) {cout << "第" << i << "项:" << Q43(i) << endl;}*/
}
//判断是否闰年
void Q44(int year) {if (year % 400 == 0) {cout << "yes" << endl;}else if (year % 4 && year % 100 != 0) {cout << "yes" << endl;}else cout << "no" << endl;
}
//冒泡排序10个数字 太简单了不写
//判断是否素数
void Q46(int n) {if (n == 1 || n == 2) {cout << "yes" << endl;}else {for (int i = 2; i < n; i++) {if (n % i == 0) {cout << "no" << endl;return;}}cout << "yes" << endl;}
}
//计算1!+2!+...+10!
void Q47() {//24题写过计算阶乘的方法,直接调用long long sum = 0;for (int i = 1; i <= 10; i++) {sum += Q24(i);}cout << sum << endl;
}
//求前15项 1/2 3/2 5/3 8/5  的和
void Q48() {int i = 2;int j = 1;int temp=0;double sum=0;for (int k = 0; k < 15; k++) {sum += i / j;temp = i;i += j;j = temp;}cout << sum << endl;
}
//输入圆柱体的高和底面半径,计算表面积体积,保留两位
void Q49(double height, double r) {double area=2*3.1415926*r*r+3.1415926*2*r*height;double volume = 3.1415926 * r * r * height;printf("面积为%.2lf㎡,体积为%.2lfm³。", area, volume);
}
//输入十进制整数,计算各位数字之和
void Q50(int n) {int count = 0;int sum=0;int temp=n;while (temp) {count++;temp /= 10;}//获取n的位数for (int i = 0; i < count; i++) {temp = n / pow(10, i);temp %= 10;sum += temp;}cout << sum << endl;}
//51题丢失
//判断字符串是不是回文(正着读和反着读一样)
void Q52() {string s = "abcdba";int len = s.length();for (int i = 0; i < len / 2; i++) {if (s[i] != s[len - 1 - i]) {cout << "不是" << endl;return;}}cout << "是" << endl;
}
//删除字符串中的数字
void Q53() {string s = "sssabc12138jjkh";int i = 0;while (s[i]) {if (!(s[i] >= '0' && s[i] <= '9')) {cout << s[i];}i++;}
}
int main() {cout << "Hello World!" << endl;return 0;
}

计算机二级编程题题库相关推荐

  1. 计算机二级填空题输出,计算机二级编程填空题

    第60套: 给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定 所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平 均值的数据移至x所指数组的后部,平均值作 ...

  2. 计算机二级c语言作弊的东西,计算机二级C全部考试题库[作弊必备]编程题.txt

    计算机二级C全部考试题库[作弊必备]编程题.txt *funhpC 磬A*BC*DEF*GABCDEFGC prog.c mainfun void funchar *a,char *h,char *p ...

  3. c语言二级考试程序设计题难吗,计算机二级考试:题库抽的不是题是“命”!附赠考试通关全攻略!...

    原标题:计算机二级考试:题库抽的不是题是"命"!附赠考试通关全攻略! 四六级的报名刚截止不久, 考研复试如火如荼地进行, 计算机二级考试如约而至. 今天是考试第一天 老新猜你一定有 ...

  4. 2015计算机二级c语言题库,2015年计算机二级C语言题库找题目录

    2015年计算机二级C语言题库找题目录 找题目录 第01套:int fun(___1___ *std) 第02套:void WriteText(FILE ___1___) 第03套: fprintf( ...

  5. Python计算机二级编程题真题及考点总结(上篇)

    文章目录 一.前言 二.考纲/考试方式 三.编程题详解 3.1 基本操作题-真题 3.2 基本操作题-考点总结 3.2.1 考点一:基本输入输出函数 3.2.2 考点二.三:程序的控制结构和数据类型 ...

  6. Python计算机二级编程题真题及考点总结【纯干货】(下篇)

    文章目录 一.前言 二.编程题详解 2.1 简单应用题 2.1.1 简单应用题-真题 2.1.2 简单应用题-考点总结 考点一:turtle库绘图 考点二:数据类型处理相关 2.2 综合应用题 考点三 ...

  7. 计算机二级考试非选择题攻略,计算机二级考试:题库抽的不是题是“命”!附赠考试通关全攻略!...

    原标题:计算机二级考试:题库抽的不是题是"命"!附赠考试通关全攻略! 四六级的报名刚截止不久, 考研复试如火如荼地进行, 计算机二级考试如约而至. 今天是考试第一天 老新猜你一定有 ...

  8. access sql 取余_计算机二级ACCESS模拟题库2016最新

    计算机二级ACCESS模拟题库2016最新 1.表的组成内容包括( ). A.查询和报表 B.字段和记录 C.报表和窗体 D.窗体和字段 2.数据库DB.数据库系统DBS.数据库管理系统DBMS之间的 ...

  9. 计算机二级考试试题在线看,【TOP182015年全国计算机二级考试试题题库.doc文档免费在线阅读材料】...

    TOP182015年全国计算机二级考试试题题库.doc文档免费在线阅读 <2015年全国计算机二级考试试题题库.doc>由会员分享,可免费在线阅读全文,更多与<TOP182015年全 ...

最新文章

  1. 2019年值得关注的九个AI创业风口
  2. leetcode算法题--Russian Doll Envelopes
  3. 第七周实践项目2.3 顺序环形队列
  4. QT学习:多国语言国际化
  5. spark太基础了,今天聊下阿里 2 面必问的数据中台
  6. matlab程序生成.dll,matlab 调用fortran生成DLL
  7. python嵩天第二版第五章_如何避免从入门到放弃——python小组学习复盘
  8. oracle19c的版本号_Windows10安装Oracle19c数据库详细记录(图文详解)
  9. Bootstrap 列平移
  10. 怎么让同网络计算机强制关机,知道局域网ip怎么关机
  11. ssh 使用公钥登录客户端设置
  12. sybase:SQL Exception and Warning Messages大全
  13. 向园子里的朋友探讨一个问题:如果判定一个对象已被处置
  14. matlab 离散频域分析,离散系统频域分析及matlab实现.doc
  15. 如何建立自动语音问卷外呼系统
  16. 句法分析(PCFG,Transition-based parsing)
  17. 【数学】定积分和不定积分的区别
  18. MySQL-MySQL连接,创建,删除数据库database
  19. 如何在 DAX 中创建 “虚拟关系”
  20. SAP QM 检验批里某检验特性的取样数量跟检验计划设置不符?

热门文章

  1. Java 心心跳动,能把女朋友感动哭的效果
  2. HTML页面只能使用微信浏览器打开
  3. 【Android】期末选择题和判断题
  4. (python 3)1018 锤子剪刀布 (20分)
  5. java里获取当前月份_Java如何获取当前月份的名称?
  6. win10 计算机磁盘加内存,内存不够用?教你给Win10系统增加C盘空间
  7. 随着时间推移虚拟机C盘空间不够,如何在原有C盘基础上进行扩容!
  8. 【吐槽大会】互联网大厂秋招版
  9. JGG专刊征稿:时空组学
  10. 图解---电脑连接wifi,显示无法连接到这个网络