函数习题(1)
1、等差数列求和
编写一个函数sum(…),计算等差数列中前n项数据的和。已知等差数列的起始项为2。例如:等差数列2,5,8,11…,需要利用sum函数求出前3项的和为15。
【题目要求】
① 等差数列中数字之间的差值不固定,需要自行输入。
② 输入要求的数列项数n。
③ 输出前n项数据的和。
输入描述:两个正整数,第一个正整数为数列中数字之间的差值(1≤差值≤50),第二个正整数为求和数列的项数n(1≤n≤100),两项内容中间用空格分隔。
输出描述:一个正整数,代表前n项数据的和。
样例输入:4 5
样例输出:50
2、判断数字位数
编写一个函数get_length(...),计算输入的正整数有多少位。输入的第一个数字不为 0。
输入描述:一个正整数(不超过10位)。
输出描述:一个正整数,代表数字的位数。
样例输入:123456
样例输出: 6
/*
* 编写一个函数get_length(int number),计算输入的正整数有多少位。
* 让这个数number一直 / 10 直到结果 == 0 时
* 计算 / 的次数
* 第一个数字不为 0
*/
3、有规律的图形
编写一个函数graph(…),输出一个a行b列(1≤a,b≤10000)由任意符号组成的矩形。
输入描述:一行,两个整数a, b(分别代表行与列,1≤a,b≤10000)一个字符,中间用空格分隔。
输出描述:a行b列由指定字符组成的矩形。
样例输入:3 4 @
样例输出:
@@@@
@@@@
@@@@
4、简易计算器
编写一个函数calcu(…),模拟可以进行四则运算的计算器。输入两个数,和四则运算符号,即可返回计算的结果。
输入描述:一行,两个正整数(1≤数字≤10000),一个字符(‘+’、‘-’、‘*’、‘/’),内容之间用空格分隔。
输出描述:一个整数,代表计算结果。
样例输入1: 10 - 8
样例输出1: 2
样例输入2: 10 / 3
样例输出2: 3
void calcu(int number1, char arithmeticOperator, int number2)
5、素数对
两个相差为 2 的素数成为素数对,5 和 7,17 和 19,求出不大于 n 的素数对,没有输出 “empty”。n≤1000。
输入描述:输入一个 n。
输出描述:n 以内的素数对。
样例输入: 11
样例输出:
3 5
5 7
/*
* 质数(素数)是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
* 素数 prime number
*/
#include <bits/stdc++.h>
using namespace std;
int primeNumber(int x) {
// sqrt()平方根函数
int t = sqrt(x);
// 质数(素数)是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
for (int i = 2;i <=t;i++) {
// 如果 x 能被其他数整除,那就不是素数,然后返回 0;否则返回 1
if (x % i == 0) {
return 0;
}
}
return 1;
例题:
例1

例2

例3

6、求n的阶乘
给定一个整数n,求它的阶乘,0≤n≤12,用循环和递归各写一个函数。
Input
输入一个数n
Output
输出一个数,表示n的阶乘
Sample Input
5
Sample Output
120
相应知识点:



浙公网安备 33010602011771号