详见视频课https://edu.csdn.net/course/detail/370181.数的输入和输出
输入一个整数和双精度浮点数,先将浮点数保留2位小数输出,然后输出整数。
时间限制:1000
内存限制:65536
输入
一行两个数,分别为整数N(不超过整型范围),双精度浮点数F,以一个空格分开。
输出
一行两个数,分别为保留2位小数输出的F,以及整数N,以一个空格分开。
样例输入
100 123.456789
样例输出
123.46 100
#include<iostream>
#include<iomanip>
using namespace std;
int main(){
int N;
double F;
cin>>N>>F;
cout<<fixed<<setprecision(2)<<F<<" ";
cout<<N;
}
2、(a/b)*c的值
给定整数a、b、c,计算(a / b)*c的值,这里的除法为实数除法。
#include<iostream>
#include<iomanip>
using namespace std;
int main(){
int a,b,c;
cin>>a>>b>>c;
cout<<fixed<<setprecision(6)<<(a*1.0/b)*c;
return 0;
}
输入一个字符,判断是否是英文大写字母,即是否是A-Z中的一个。
#include<iostream>
using namespace std;
int main(){
char ch;
cin>>ch;
if(ch>='A'&&ch<='Z'){
cout<<"YES";
}else{
cout<<"NO";
}
return 0;
}
4、特殊求和
如果一个数能够被7整除或者十进制表示中含有数字7,那么我们称这个数为幻数,比如17,21,73是幻数,而6,59不是。
对于给定的N,求出1~N中所有幻数的和。
#include<iostream>
using namespace std;
int reversal(int x){
int remain = 0;
while(x){
remain =x%10;
if(remain==7){
return true;
}
x = x / 10;
}
return false;
}
int main(){
int N;
int sum=0;
cin>>N;
for(int i=1;i<=N;i++){
if(i%7==0||reversal(i)){
sum+=i;
}
}
cout<<sum;
return 0;
}
5、硬币翻转
假设有N个硬币(N为不大于5000的正整数),从1到N按顺序依次编号,初始时全部处于正面向上的状态;有M个人(M为不大于N的正整数)也从1到M依次编号。
第一个人(1号)将硬币全部翻转一次,第二个人(2号)将编号为2的倍数的硬币翻转一次,第三个人(3号)将编号为3的倍数的硬币翻转一次。依照编号递增顺序,以后的人都和3号一样,将凡是自己编号倍数的硬币翻转一次。
请问:当第M个人操作之后,哪些硬币是正面向上的,按从小到大输出其编号,以空格分开。
#include<iostream>
using namespace std;
int main(){
int N,M;
cin>>N>>M;
int a[N];
a[N]={0};
for(int i=2;i<=M;i++){
for(int j=2;j<=N;j++){
if(j%i==0){
if(a[j]==1)
a[j]=0;
else
a[j]=1;
}
}
}
for(int i=1;i<=N;i++){
if(a[i]==1){
cout<<i<<" ";
}
}
return 0;
}