#P1867. 程序阅读题.6

程序阅读题.6

第一题

#include<bits/stdc++.h>
using namespace std;
string s;
long long ans;
int main()
{
	int k,t;
	cin>>s>>k;
	
	for(int i=0;i<s.size();i++)
	{
		if(s[i]>='0'&&s[i]<='9')
			t = s[i] - '0';
		else
			t = s[i]-'A'+10;
		
		ans = ans*k+t;
	}
	cout<<ans;

	return 0;
}

运行程序,输入:34213 5

程序输出 {{ input(11) }}

运行程序,输入:34A29 11

程序输出 {{ input(12) }}

第二题

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n,k,ans=0,t;
	cin>>n>>k;
	
	for(int i=0;i<n;i++)
	{
		cin>>t;
		if(t%k==0)
			ans += t/k;
		else
			ans += t/k+1;
	}
	cout<<ans;

	return 0;
}

运行程序,输入:8 3 1 2 3 4 5 6 15 14

程序输出:{{ input(2) }}

第三题

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;

    cin>>n;

    if(n==0)
    	cout<<0;
    else
    {
    	int ans=0;
    	while(n)
    	{
    		ans = ans*10 + n%10;
    		n /= 10;
		}
		cout<<ans;
	}
 
    return 0;
}

运行程序,输入: 1298731

程序输出:{{ input(31) }}

运行程序,输入: 459720

程序输出:{{ input(32) }}

第四题

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,m;

    cin>>n>>m;

    if(n==0)
    	cout<<0;
    else
    {
    	int ans=0;
    	while(n)
    	{
    		ans = ans*10 + n%m;
    		n /= m;
		}
		cout<<ans;
	}
 
    return 0;
}

围绕上面的程序,描述正确的是:{{ select(4) }}

  • 程序可以用于计算 n 的水仙花数
  • 程序用于计算小于等于 n 的、最大的那个质数
  • 程序可以用于计算 n 的 m 进制反转数
  • 程序取出 n 的每一位(十进制形态),把每一位对 m 做模运算,再求和