输出1~n之间所有的整数
问题描述
从键盘读入一个整数
n
,请循环输出
1
∼
n
之间所有的整数,每 行输出 1 个。
比如,假设
n
=5
,那么输出结果如下:
1
2
3
4
5
输入
一个整数
n
。
输出
输出
1
∼
n
之间所有的整数。
样例
输入复制
5
输出复制
1
2
3
4
5
#include <bits/stdc++.h>
using namespace std;
int aaa(int);
int main()
{
int q;
cin>>q;
aaa(q);
return 0;
}
int aaa(int n)
{
if(n==1)
{
cout<<n<<endl;
return n;
}
int b = aaa(n-1)+1;
cout<<b<<endl;
return b;
}
编程求解1+2+3+...+n
问题描述
编程求解下列式子的值:
S
=1+2+3+
⋯
+
n
。
输入
输入一行,只有一个整数
n
(1≤
n
≤1000)
。
输出
输出只有一行(这意味着末尾有一个回车符号),包括
1
个整数。
样例
输入复制
100
输出复制
5050
#include <bits/stdc++.h>
using namespace std;
int aaa(int);
int sum = 0;
int main()
{
int q;
cin>>q;
aaa(q);
cout<<sum;
return 0;
}
int aaa(int n)
{
if(n==1)
{
sum = sum+n;
return n;
}
int b = aaa(n-1)+1;
sum = sum+b;
return b;
}
韩信点兵
韩信有一对士兵,他想知道有多少人,他就让士兵报数,如果
按照 1 到 5 报数,最末一个士兵报的数为 1 。
按照 1 到 6 报数,最末一个士兵报的数为 5 。
按照 1 到 7 报数,最末一个士兵报的数为 4 。
最后再按 1 到11 报数,最末一个士兵报的数为 10 。
请问韩信这队士兵最少有多少人?
#include <bits/stdc++.h>
using namespace std;
int aaa(int);
int main()
{
cout<<aaa(1);
return 0;
}
int aaa(int n)
{
if(n%5==1&&n%6==5&&n%7==4&&n%11==10)
{
return n;
}
int b = aaa(n+1);
}
小丽找数
问题描述
小丽同学想在
1
∼
n
中找出这样的数,这个数的各个位的和不能被
2
整除也不能被
5
整除,比
如
3
、
12
、
25
、
30
、
1003
、
12
、
25
、
30
、
100
。这些数都满足各个位的和不能被
2
和
5
整除。
请你编程找出
1
∼
n
中这些数有多少个?
输入
一个整数
n
(
n
≤9999
)。
输出
1
∼
n
中满足条件的数的个数。
#include <bits/stdc++.h>
using namespace std;
int aaa(int,int);
int main()
{
int n;
cin>>n;
cout<<aaa(1,n);
return 0;
}
int aaa(int i,int n)
{
if(i>n)
{
return 0;
}
int sum = 0;
int t = i;
while(t!=0)
{
sum = sum+t%10;
t = t/10;
}
if(sum%2!=0&&sum%5!=0)
{
return 1+aaa(i+1,n);
}
return aaa(i+1,n);
}
字符图形1-星号直角
问题描述
打印字符图形。
输入
一个整数(
0<
n
<10
)。
输出
一个字符图形。
样例
输入复制
3
输出复制
*
**
***
#include <bits/stdc++.h>
using namespace std;
int aaa(int,int);
int main()
{
int n;
cin>>n;
aaa(1,n);
return 0;
}
int aaa(int i,int n)
{
if(i>n)
{
return 0;
}
for(int j = 1;j<=i;j++)
{
cout<<"*";
}
cout<<endl;
return aaa(i+1,n);
}
数字直角(1)
问题描述
请打印 n 行的数字直角三角形。
输入
一个整数 n<10。
输出
输出如下方图所示
n 行的数字直角三角形。
输入复制
3
输出复制
1
22
333
#include <bits/stdc++.h>
using namespace std;
int aaa(int,int);
int main()
{
int n;
cin>>n;
aaa(1,n);
return 0;
}
int aaa(int i,int n)
{
if(i>n)
{
return 0;
}
for(int j = 1;j<=i;j++)
{
cout<<i;
}
cout<<endl;
return aaa(i+1,n);
}
请输出n~1之间所有的整数
问题描述
从键盘读入一个整数
n
,请输出
n
∼
1
之间所有的整数,每行输出
1
个。
比如,假设读入
n
=5
,输出结果如下:
5
4
3
2
1
输入
一个整数
n
。
输出
输出
n
∼
1
之间所有的数,每行
1
个。
样例
输入复制
5
输出复制
5
4
3
2
1
#include <bits/stdc++.h>
using namespace std;
int aaa(int,int);
int main()
{
int n;
cin>>n;
aaa(1,n);
return 0;
}
int aaa(int i,int n)
{
if(i>n)
{
return 0;
}
if(i==n)
{
cout<<i<<endl;
return i;
}
int b = aaa(i+1,n)-1;
cout<<b<<endl;
return b;
}