目录
1.小乐乐与进制转换(十进制转六进制)
2.[NOIP2015]金币(按规律计算金币个数)
3. 水仙花数(正常水仙花数的升级版)
4.翻转直角三角形图案(正着输出三角形你会,但反着输出你会吗)
5.带空格直角三角形图案+金字塔三角形(for的嵌套使用)
6. 小乐乐走台阶(一次走一阶台阶或两节台阶,算多少方法的问题)
7.函数实现计算一个数的阶乘(用递归实现数字的阶乘)
8. 牛牛的digit(输出后面的数字)
9.序列中删除指定数字
10. 有序序列合并
1.小乐乐与进制转换(十进制转六进制)
链接 小乐乐与进制转换_牛客题霸_牛客网 (nowcoder.com)
先看一下十进制怎么转六进制
好了下来上两种方法的代码
#includeint main() { int n = 0, i = 0, count = 0; int arr[10] = { 0 }; scanf("%d", &n); if (n < 6) { printf("%dn", n); } else { while (n) { count++; arr[i++] = n % 6; n /= 6; } for (int j = count; j > 0; j--) { printf("%d", arr[j - 1]); } } return 0; }
#includevoid print(int n) { if(n>5) { print(n/6); } printf("%d",n%6); } int main() { int n =0; scanf("%d",&n); print(n); return 0; }
2.[NOIP2015]金币(按规律计算金币个数)
链接 [NOIP2015]金币_牛客题霸_牛客网 (nowcoder.com)
#includeint main() { int k=0,m=0,sum=0; scanf("%d",&k); for(int i=1;m
3. 水仙花数(正常水仙花数的升级版)
链接 水仙花数_牛客题霸_牛客网 (nowcoder.com)
#includeint main() { int m,n; while(~scanf("%d %d",&m,&n)){ int count=0; for(int i=m;i<=n;i++) { if(((i%10)*(i%10)*(i%10)+(i%100/10)*(i%100/10)*(i%100/10)+(i/100)*(i/100)*(i/100))==i) { count++; printf("%d ",i); } } if(count==0){ printf("non"); }else{ printf("n"); } } return 0; }
4.翻转直角三角形图案(正着输出三角形你会,但反着输出你会吗)
链接 翻转直角三角形图案_牛客题霸_牛客网 (nowcoder.com)
正着for循环是正着的三角形,那么现在要反着的三角形要怎么做,很简单,也反着for循环--;
#includeint main() { int n=0,d=0; while(~scanf("%d",&n)) { int i,j; for(i=n;i>0;i--) { for(j=i;j>0;j--) { printf("* "); } printf("n"); } } return 0; }
5.带空格直角三角形图案+金字塔三角形(for的嵌套使用)
链接 带空格直角三角形图案_牛客题霸_牛客网 (nowcoder.com)
#includeint main() { int n=0; while(~scanf("%d",&n)) { for(int i=0;i 再看一个输出金字塔(和上个题方法基本一样)
#includeint main() { int n=0; while(~scanf("%d",&n)) { for(int i=0;i
6. 小乐乐走台阶(一次走一阶台阶或两节台阶,算多少方法的问题)
链接 小乐乐走台阶_牛客题霸_牛客网 (nowcoder.com)
#includeint method(int n) { return n<=2?n:method(n-1)+method(n-2); } int main() { int n=0; scanf("%d",&n); printf("%dn",method(n)); return 0; }
7.函数实现计算一个数的阶乘(用递归实现数字的阶乘)
链接 函数实现计算一个数的阶乘_牛客题霸_牛客网 (nowcoder.com)
#includelong long factorial(int n) { if(n==1) { return 1; } return n*factorial(n-1); } int main() { int n=0; scanf("%d",&n); factorial(n); printf("%lld",factorial(n)); return 0; }
8. 牛牛的digit(输出后面的数字)
链接 牛牛的digit_牛客题霸_牛客网 (nowcoder.com)
这里有一个比较巧妙的方法,大家可以看一下
#includevoid digit(int x,int i) { int n=1; while(i) { i--; n*=10; } printf("%dn",x%n); } int main() { int x=0,i=0; scanf("%d %d",&x,&i); digit(x, i); return 0; }
9.序列中删除指定数字
链接 序列中删除指定数字_牛客题霸_牛客网 (nowcoder.com)
#includeint main() { int n=0,a=0,i=0; scanf("%d",&n); int arr[10]={0}; for(i=0;i
10. 有序序列合并
链接 有序序列合并_牛客题霸_牛客网 (nowcoder.com)
#includeint main() { int n = 0; int m = 0; int arr1[1000] = {0}; int arr2[1000] = {0}; //输入 scanf("%d %d", &n, &m); int i = 0; for(i=0; i



