「这是我参与2022首次更文挑战的第11天,活动详情查看:2022首次更文挑战」
BC111 小乐乐与进制转换
校招时部分企业笔试将禁止编程题跳出页面,为提前适应,练习时请使用在线自测,而非本地IDE。
描述
小乐乐在课上学习了二进制八进制与十六进制后,对进制转换产生了浓厚的兴趣。因为他的幸运数字是6,所以他想知道一个数表示为六进制后的结果。请你帮助他解决这个问题。
输入描述:
输入一个正整数n (1 ≤ n ≤ 109)
输出描述:
输出一行,为正整数n表示为六进制的结果
示例1
输入:
6
复制
输出:
10
复制
示例2
输入:
120
复制
输出:
320
复制
#include<stdio.h>
//n:123
//123 ->320
//123%10 ->3 取
//123/10=12
//12%10 -> 2 取
//12/10 = 1
//1%10 -> 1 取
//1/10=0
//所以方法:%6 /6循环直到n为0
int main()
{
long long n = 0;
long long arr[40] = {0}; //取模之后的值放到数组中,倒叙打印
scanf("%lld",&n);
//要保证数组能存放%6的所有数, 10^9 %6
int i = 0;
while(n)
{
arr[i] = n%6;
i++;
n /= 6;
}
//跳出循环时的上一步while中执行了i++
//所以for循环起始条件为i--
//倒叙打印
for(i-- ; i >=0; i--)
{
printf("%lld",arr[i]);
}
return 0;
}
BC112 小乐乐求和
描述
小乐乐最近接触了求和符号Σ,他想计算的结果。但是小乐乐很笨,请你帮助他解答。
输入描述:
输入一个正整数n (1 ≤ n ≤ 109)
输出描述:
输出一个值,为求和结果。
示例1
输入:
1
复制
输出:
1
复制
示例2
输入:
10
复制
输出:
55
复制
#include<stdio.h>
int main()
{
long long n = 0;
//输入n的值
scanf("%lld",&n);
long long sum = 0;
int i = 0;
for(i = 1; i <=n; i++)
{
sum+=i;
}
printf("%lld\n",sum);
return 0;
}
//注意n的范围很大,所以sum和n的类型应该定义为long long
预告: BC113 小乐乐定闹钟