2015****n个数分成m份求平均值的题,不足m按实际值计算
#include<iostream>
using namespace std;
int main(){
int n,m;
int a[101];
while(cin>>n>>m){
int t=n/m;
int j=0,sum=0,count=0,b=0;
for(int i=1;i<=n;i++){
j+=2;
sum+=j;
count++;
if(count==m){
a[b++]=sum/m;
count=0;
sum=0;
}
}//for循环结束,已经录好了值
for(int i=0;i<t;i++){
cout<<a[i];
if(i<t-1)cout<<" ";
}
if(sum)//若sum还有值,即有不足m个数字
{
a[b]=sum/(n-t*m);
cout<<" "<<a[b]<<endl;
}
else
cout<<endl;
}
return 0;
}
2016水题
#include<iostream>
using namespace std;
int main(){
int a[101];
int n;
while(1){
cin>>n;
if(n==0)
break;
for(int i=0;i<n;i++){
cin>>a[i];
}
int min=0;
for(int j=0;j<n;j++){
if(a[j]<a[min])
min=j;//找出最小的数的下标
}
if(min!=0){
int t=a[min];
a[min]=a[0];
a[0]=t;
}
//注意输出格式
for(int j=0;j<n;j++){
if(j==n-1)
cout<<a[j]<<endl;
else
cout<<a[j]<<" ";
}
}
return 0;
}
2017水题
#include<iostream>
#include<string>
using namespace std;
int main(){
string str;
int n;
cin>>n;
cin.get();//刚开始get放在while里面一直wrong
while(n--){
int count=0;
getline(cin,str);
for(int i=0;i<str.size();i++){
if(str[i]>='0'&&str[i]<='9')
count++;
}
cout<<count<<endl;
}
return 0;
}