B2028 反向输出一个三位数
2023.1.13 阴 happy
题目描述
将一个三位数反向输出,例如输入 358358,反向输出 853853。
输入格式
一个三位数 n。
输出格式
反向输出 n。
输入输出样例
输入 100
输出 001
输入 678
输出 876
思路:对三位数进行除法和取余,得到个、十、百位。
#include<bits/stdc++.h>
using namespace std;
int arr[3];
int main(){
int n;
cin>>n;
int pos = 0;
while(n){
int m = n%10;
n = n/10;
arr[pos++] = m;
}
//输入678
//1、 m = 8,n = 67, arr[0] = 8, pos = 1
//2、 m = 7, n = 6, arr[1] = 7, pos = 2
//3、 m = 6, n = 0, arr[2] = 6, pos = 3
for(int i=0; i<3; i++){
cout<<arr[i];
}
return 0;
}
万能头文件
#include<bits/stdc++.h>
关键语句:
while(n){
int m = n%10;
n = n/10;
arr[pos++] = m;
}
2023.1.15 cold angry->happy~ (干事业好快乐,忘记一些烦恼
B2089 数组逆序重存放
题目描述
将一个数组中的值按逆序重新存放。例如,原来的顺序为 8,6,5,4,18,6,5,4,1。要求改为 1,4,5,6,81,4,5,6,8。
输入格式
输入为两行:第一行数组中元素的个数 n(1<n≤100),第二行是 n 个整数,每两个整数之间用空格分隔。
输出格式
输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔。
输入输出样例
输入
5
8 6 5 4 1
输出
1 4 5 6 8
思路:输入存放进数组的时候,逆序存放,再顺序输出即可
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
int arr[n];
for(int i=n-1; i>=0; i--){
cin>>arr[i];
}
for(int i=0; i<n; i++){
cout<<arr[i];
cout<<" ";
}
return 0;
}
?:输出的空格还能咋搞呀
B2145 digit函数
题目描述
在程序中定义一函数digit(n,k),它能分离出整数 n 从右边数第 k 个数字。
输入格式
正整数 n 和 k。
输出格式
一个数字。
输入输出样例
输入
31859 3
输出
8
说明/提示
n≤10^9
k≤10。
思路:对整数进行除法运算,然后取余得到末尾即为结果。
#include<bits/stdc++.h>
using namespace std;
int digit(int n, int k){
for(int i=0; i<k-1; i++){
n = n/10;
}
//n = n/10^k;
//n = n%10;
cout<<n%10;
}
int main(){
int n;
cin>>n;
int k;
cin>>k;
digit(n, k);
return 0;
}
1、for循环对数字进行除法
for(int i=0; i<k-1; i++){
n = n/10;
不过为啥不能直接除10的k次方呀,明天问问,(今天某人嗨皮到选择性看不到我消息[/微笑]
int
2、digit函数前要加 int
不加 int 也可以运行,但是会报错。原因明天补充。
3、说明提示
需要在题目里给出规范吗,明天问!
B2071 余数相同问题
题目描述
已知三个正整数 a,b,c。现有一个大于 1 的整数 x,将其作为除数分别除 a,b,c,得到的余数相同。
请问满足上述条件的 x 的最小值是多少?数据保证 x 有解。
输入格式
一行,三个不大于 1000000 的正整数 a,b,c,两个整数之间用一个空格隔开。
输出格式
一个整数,即满足条件的 x 的最小值。
输入输出样例
输入
300 262 205
输出
19
思路:emm…有点问题,明天写
在这里插入代码片
为什么还是小白…什么时候能进阶大佬呀T_T,这个寒假可以吗,许个愿,上岸变大佬,Fighting!!!