辽阳公司网站建设,王璐 牟平 网站建设,做网站背景图的科技图片,网络营销推广方案文章目录 一、查找插入有序数组的位置二、最高分三、不与最大数相同的数字之和四、最大值和最小值的差五、数字放大六、多余的数七、数字接力八、幸运大抽奖 一、查找插入有序数组的位置
【试题描述】 给你 m 个已经从小到大排好序的整数#xff0c; 输入一个数 x#xff0c… 文章目录 一、查找插入有序数组的位置二、最高分三、不与最大数相同的数字之和四、最大值和最小值的差五、数字放大六、多余的数七、数字接力八、幸运大抽奖 一、查找插入有序数组的位置
【试题描述】 给你 m 个已经从小到大排好序的整数 输入一个数 x 输出 x 插入的位置,保证 x 插入后 的 m1 数还是有序的。 【输入要求】 第一行一个整数 m 表示数的个数 ( m 100 ) 第二行 m 个整数 ( 这些数在 0-999999 范围内 ) 第三行为要查找的数 x 【输出要求】 x 的位置 【输入样例】 10 9 19 20 23 56 78 90 180 190 230 35 【输出样例】 5
#include bits/stdc.h
using namespace std;/**给你 m 个已经从小到大排好序的整数 输入一个数 x 输出 x 插入的位置,保证 x 插入后的 m1 数还是有序的。*/
int main() { int m; cin m; // 输入数的个数 int nums[m]; for (int i 0; i m; i) { cin nums[i]; // 输入m个整数 } int x; cin x; // 输入要查找的数x //插入的位置int p;// 查找并输出x的插入位置 for (int i 0; i m; i) { if(nums[i]x){pi1;break;}} // 退出循环时p即为x的插入位置 coutpendl;return 0;
}二、最高分
【试题描述】 全班 n 个同学的成绩需要按学号读入 请找出班级最高分 并找出最高分的得主。 假设 无重复成绩 【输入要求】 两行 第一行为一个正整数 n 第二行为 n 个实数 每个实数之间用一个空格分隔。 【输出要求】 NO 学号 成绩 保留小数点后一位小数。 【输入样例】 5 92 97.5 93 87 89 【输出样例】 NO2:97.5
#include bits/stdc.h using namespace std;
/**全班 n 个同学的成绩需要按学号读入 请找出班级最高分 并找出最高分的得主。 假设无重复成绩*/
int main() { int n; cin n; // 读取学生数量 double scores[n];double maxScore 0; // 初始化最高分0int maxScoreIndex 0; // 最高分对应的学号索引 for (int i 0; i n; i) { cin scores[i]; // 读取成绩 } for (int i 0; i n; i) { if (scores[i] maxScore) { maxScore scores[i]; // 更新最高分 maxScoreIndex i; // 更新最高分对应的学号索引 } } // 输出最高分及其学号 cout NO maxScoreIndex 1 : fixed setprecision(1) maxScore endl; return 0;
}三、不与最大数相同的数字之和
【试题描述】 求出一个整数数列中不与最大数相同的数字之和。 【输入要求】 输入分为两行 第一行为 n n ≤ 100 第二行为 n 个整数。 【输出要求】 输出为 n 个数中不与最大数相同的其余数字之和。 【输入样例】 3 1 2 3 【输出样例】 3
#include bits/stdc.h
using namespace std;
/**求出一个整数数列中不与最大数相同的数字之和。*/int main() { int n; cin n; // 输入整数n //定义n个元素的数组int m[n]; for (int i 0; i n; i) { cin m[i]; // 输入n个整数 } // 找到数组中的最大数 int maxm[0];for(int i0;in;i){if(m[i]max){maxm[i];}}int sum 0; // 计算所有不与最大数相同的数字之和 for (int i 0; i n; i) { if (m[i] ! max) { sum summ[i]; } } cout sum endl; // 输出结果 return 0;
}
四、最大值和最小值的差
【试题描述】 输出一个整数序列中最大的数和最小的数的差。 【输入要求】 第一行为 n 表示整数个数 整数个数不会大于 10000 第二行为 n 个整数 每个整数的绝对值不会大于 10000。 【输出要求】 输出 n 给数中最大值和最小值的差。 【输入样例】 5 2 5 7 4 2 【输出样例】 5
#include bits/stdc.h
using namespace std;
/**最大值和最小值的差*/int main() { int n; cin n; // 输入整数个数 int numbers[n]; for (int i 0; i n; i) { cin numbers[i]; // 输入整数序列 } // 初始化最大值为最小值int max_num numbers[0]; int min_num numbers[0]; // 遍历数组找到最大值和最小值 for(int i0;in;i){max_num max(max_num, numbers[i]); min_num min(min_num, numbers[i]); }// 计算最大值和最小值的差 int diff max_num - min_num; cout diff endl; // 输出结果 return 0;
}五、数字放大
【试题描述】 给定一些整数以及放大倍数 x 将每个整数放大 x 倍后输出。 【输入要求】 包含三行 第一行为 n 表示整数的个数 第二行为 n 个给定的整数不超过整形范围 第三行为整数 x 表示放大的倍数 【输出要求】 n 个整数 为原数列放大之后的数列 两数之间以一个空格分开。 【输入样例】 3 1 5 7 2 【输出样例】 2 10 14
#includebits/stdc.h
using namespace std;
/**给定一些整数以及放大倍数 x 将每个整数放大 x 倍后输出。*/int main() { int n; cin n; // 输入整数的个数 int numbers[n]; for (int i 0; i n; i) { cin numbers[i]; // 输入给定的整数 } int x; cin x; // 输入放大的倍数 // 放大每个整数并输出 for (int i 0; i n; i) { cout numbers[i] * x ; } return 0;
}
六、多余的数
【试题描述】 小 A 同学在完成一个数学题 求给定的 n 个整数的和。 小 A 同学在求完之后发现和参考答案 对不上 检查后发现在求和过程中多计算了一个数 其他过程没问题。 现给出小 A 计算用的 n1 个数 以及正确的参考答案 请算出小 A 同学多计算的那一个数。 【输入要求】 第一行 n 的值 第二行 n1 个正整数 每个数小于等于 1000000 第三行一个整数 x 表示参考答案 【输出要求】 一个整数 表示多计算的那一个数。 【输入样例】 10 2 4 6 8 1 3 5 7 9 5 11 54 【输出样例】 7 【提示】 样例中原有的 10 个数为 2 4 6 8 1 3 5 9 5 11 和为 54 多余的数为 7。
#includebits/stdc.h
using namespace std;
/**小 A 同学在完成一个数学题 求给定的 n 个整数的和。 小 A 同学在求完之后发现和参考答案对不上 检查后发现在求和过程中多计算了一个数 其他过程没问题。 现给出小 A 计算用的n1 个数 以及正确的参考答案 请算出小 A 同学多计算的那一个数。*/int main() { int n; cin n; // 输入整数的个数 int m[n 1]; // 创建大小为n1的数组来存储n1个数 for (int i 0; i n 1; i) { cin m[i]; // 输入n1个整数 } int correct; cin correct; // 输入参考答案 // 计算所有n1个数的和 int sumOfAll 0; for (int i0;in1;i) { sumOfAll m[i]; } // 计算多出的那个数 int extraNum sumOfAll - correct; cout extraNum endl; // 输出多出的那个数 return 0;
}七、数字接力
【试题描述】 奶牛们在玩一个数字游戏 它们从一个整数开始 比如 6593。 将这个整数中的各位数 字全部取出 将他们相乘 得到一个新的整数 上面的例子就是 6593810 然后继续做 下去 8100 得到了一个个位数 0。 帮助奶牛完成这个游戏 读入一个数并计算出有游戏得到一个个位数的过程。 【输入要求】 一个整数 N(10n 2,000,000,000)。 【输出要求】 在单独的一行中按顺序输出游戏过程中产生的每一个数直到一个个位数结束。 相邻两数 之间要求严格用一个空格隔开 最后一个数之后不能有空格。 【输入样例】 98886 【输出样例】 98886 27648 2688 768 336 54 20 0
#includebits/stdc.h
using namespace std;
/**奶牛们在玩一个数字游戏,它们从一个整数开始,比如 6593。将这个整数中的各位数字全部取出将他们相乘得到一个新的整数上面的例子就是 6*5*9*3810然后继续做下去8*1*0*0 得到了一个个位数 0。帮助奶牛完成这个游戏读入一个数并计算出有游戏得到一个个位数的过程。*/
int main() { int n; cin n; // 输入整数 int current n; //输出ncout n ;//当得到一个个位数时停止while (current 9){int product 1; //取出每个位上的数相乘while (current 0) { product product* (current % 10); // 取出最低位数字并相乘 current current/10; // 去掉最低位数字 }currentproduct;// 输出游戏过程中产生的每一个数 cout product ;if(product9){//相邻两数之间要求严格用一个空格隔开。cout ; }} return 0;
}八、幸运大抽奖
【试题描述】 淘淘参加游乐园的幸运大抽奖活动。 活动规则如下 通过参加 5 项游乐活动 获得相应积分 积分和的各位数字之和若为回文数 则可到领奖处领取奖品一份。 请编程完成判断。 【输入要求】 输入 5 个整数 【输出要求】 Congratulations!或者 Sorry 【输入样例】 51 26 3 21 8 【输出样例】 Sorry! 【解题提示】 回文数即数字顺着和反着是同一个数。 如 121
#includebits/stdc.h
using namespace std;
/**淘淘参加游乐园的幸运大抽奖活动。 活动规则如下 通过参加 5 项游乐活动 获得相应积分积分和的各位数字之和若为回文数 则可到领奖处领取奖品一份。 请编程完成判断。输入20 21 10 11 12输出Congratulations!*/int main() { //定义积分数组int scores[5]; // 读取5个整数 for (int i 0; i 5; i) { cin scores[i]; } // 计算5个整数的和 109int total 0; for (int i0;i5;i) { total scores[i]; } // 计算和的各位数之和 90110int sum 0; while (total 0) { sum sum total % 10; //取最低位数字total / 10; // 去掉最低位数字} int s sum; // 将sum的各位数反过来 011int reversed 0; while (s 0) { //乘以10对10取余数 得到回文数字reversed reversed * 10 s % 10; s / 10; } // 判断各位数之和是否是回文数 1 不等于10 if (sum reversed) { cout Congratulations! endl; } else { cout Sorry! endl; } return 0;
}