【查找数字x第k为上的数字】

#include<stdio.h>
#include<math.h>
// 求x用10进制表示时的数位长度
int len(int x){
    if(x<10) return 1;
    return len(x/10)+1;
}

// 取x的第k位数字
int f(int x, int k){
    if(len(x)-k==0) return x%10;
    return f(x / pow(10, len(x) - k), k);
}

int main()
{
    int x, k;
    printf("请输入数字和查找位置:");
    scanf("%d %d", &x, &k);
    printf("位置 %d 上的数字为 :%d\n", k, f(x,3));
    return 0;
}
时间: 2024-11-10 16:16:05

【查找数字x第k为上的数字】的相关文章

后台提醒数字(应用程序applicationIcon上的数字)

@property(nonatomic) NSInteger applicationIconBadgeNumber;  // set to 0 to hide. default is 0. In iOS 8.0 and later, your application must register for user notifications using -[UIApplication registerUserNotificationSettings:] before being able to s

分享C#识别图片上的数字

通过Emgu实现对图片上的数字进行识别.前期步骤:1.下载Emgu安装文件,我的版本是2.4.2.1777.3.0版本则实现对中文的支持.2.安装后需填写环境变量,环境变量Path值后加入Emgu安装路径到bin下.如C:\Emgu\emgucv-windows-x86-gpu 2.4.2.1777\bin:3.在bin下查找需要的dll如Emgu.CV.dll与Emgu.CV.OCR.dll等.4.将C:\Emgu\emgucv-windows-x86-gpu 2.4.2.1777\bin下的

C#识别图片上的数字

通过Emgu实现对图片上的数字进行识别. 前期步骤: 1.下载Emgu安装文件,我的版本是2.4.2.1777.3.0版本则实现对中文的支持. 2.安装后需填写环境变量,环境变量Path值后加入Emgu安装路径到bin下.如C:\Emgu\emgucv-windows-x86-gpu 2.4.2.1777\bin: 3.在bin下查找需要的dll如Emgu.CV.dll与Emgu.CV.OCR.dll等. 4.将C:\Emgu\emgucv-windows-x86-gpu 2.4.2.1777\

pta 又来一个上三角数字三角形

一道简单题,可是,因为格式错误的原因,我居然花了半个小时的时间! 题目: 输入一个正整数n,输出具有n层的上三角数字三角形. 输入格式: 只有一个正整数n,1<=n<=100. 输出格式: 一个上三角数字三角形,每个数字占四个字符位置. 输入样例: 5 输出样例: 1   6  10  13  15 2   7  11  14 3   8  12 4   9 5 一开始我的代码是这个样子的: #include <stdio.h> int main() { int n,i,j,k=1

LeetCode--SQL 查询:查找所有至少连续出现三次的数字。

编写一个 SQL 查询,查找所有至少连续出现三次的数字. +----+-----+| Id | Num |+----+-----+| 1 | 1 || 2 | 1 || 3 | 1 || 4 | 2 || 5 | 1 || 6 | 2 || 7 | 2 |+----+-----+例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字. +-----------------+| ConsecutiveNums |+-----------------+| 1 |+------------

给出一个非负整数 num,反复的将所有位上的数字相加,直到得到一个一位的整数。

1 package digitAddTogither; 2 3 /** 4 * Created by ZKY on 2017-08-15 01:00. 5 * 给出一个非负整数 num,反复的将所有位上的数字相加,直到得到一个一位的整数. 6 * 样例 7 * 给出 num = 38. 8 * 相加的过程如下:3 + 8 = 11, 9 * 1 + 1 = 2. 10 * 因为 2 只剩下一个数字,所以返回 2. 11 */ 12 public class DoMain 13 { 14 /**

如何使用alt键+数字键盘上的数字键打出特殊符号

如何使用alt键+数字键盘上的数字键打出特殊符号 有时当我需要画示意图说明一个问题,但是苦于没有合适的符号,因此,这篇博文将简单介绍一些特殊的符号方便自己以及大家使用. 实现原理很简单:所有的字符(包括字母.数字.汉字甚至是其他文字)在计算机内部都是以编码的形式存储的,比如其中小于127的称为标准ASCII编码,汉字也是有编码的,编码标准为GBK,在45687-63486之间存储着常用的6763个汉字.41377-43518存储者一些图形符号.43072-43424之间存储着一些非汉字符号.

28.求任意一个整数的十位上的数字

#include<iostream> using namespace std; int main() { int i,j,n; cout<<"please input an number :"<<endl; cin>>n; if(n/10<1) { cout<<0; }else { i=n/10; j=i%10; cout<<j; } return 0; } 28.求任意一个整数的十位上的数字

挑战面试编程:查找数组中第k大的数

查找数组中第k大的数 问题: 查找出一给定数组中第k大的数.例如[3,2,7,1,8,9,6,5,4],第1大的数是9,第2大的数是8-- 思路: 1. 直接从大到小排序,排好序后,第k大的数就是arr[k-1]. 2. 只需找到第k大的数,不必把所有的数排好序.我们借助快速排序中partition过程,一般情况下,在把所有数都排好序前,就可以找到第k大的数.我们依据的逻辑是,经过一次partition后,数组被pivot分成左右两部分:S左.S右.当S左的元素个数|S左|等于k-1时,pivo