C语言输入一个2-5位数,去除首位后剩的数!

#include <stdio.h>
int main(){
   int i;
   do{
      printf("请输入一个2-5位的数:");
      scanf("%d",&i);
      if(i>9&&i<=99)
        printf("去掉首位后的余数为:%d\n",i%10); 
       else if(i>99&&i<=999)
        printf("去掉首位后的余数为:%d\n",i%100);
     else if(i>999&&i<=9999)
        printf("去掉首位后的余数为:%d\n",i%1000); 
     else if(i>9999&&i<=99999) 
        printf("去掉首位后的余数为:%d\n",i%10000); 
       else{

       printf("格式错误!\n");break;

    } 
   }while(1);
   
 return 0;
}

时间: 2024-12-17 10:34:42

C语言输入一个2-5位数,去除首位后剩的数!的相关文章

C语言——输入一个字符串,将连续数字字符转换为数字

输入一个字符串,内有数字和非数字字符,例如: A123cdf 456.78cpc876.9er 849.1 将其中连续的数字作为一个实数,依次存放到一数组a中.例如123存放在a[0],456.78存放在a[2],依次类推,统计共有多少个数,并输出这些数. #include <stdio.h> #include <string.h> #include <math.h> #define N 50 int Number(char str[],float num[]); in

c语言输入一个字符串,统计其字母,数字和其他字符的个数,并以柱状图输出

#include<stdio.h>int main(int arge,char *argv[]){ char ch; int alp=0,num=0,oth=0,len,alp_start,num_start,oth_start,i; while((ch=getchar())!=-1) { if(ch>='0'&&ch<='9') num++; else if((ch>='a'&&ch<='z')||(ch>='A'&&am

输入一个整数,将各位数字反转后输出

1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int inversion(unsigned int num) 5 { 6 int ret=0; //定义返回值 7 int remainder; //定义一个余数 8 9 while(num) //当num除10不为零时,循环 10 { 11 remainder = num % 10; //取余数 12 num = num / 10; 13 ret = ret*10 + remainde

小南刚学了二进制,他想知道一个数的二进制表示中有多少个1,你能帮他写一个程序来完成这个任务吗? 输入 第一行输入一个整数N,表示测试数据的组数(1&lt;N&lt;1000) 每组测试数据只有一行,是一个整数M(

#include<stdio.h> int main() { int n; int m; int i; int num=0; int a[32]; scanf("%d",&n); while(n--) { scanf("%d",&m); i=-1; while(m!=0) { i++; a[i]=m%2; m=m/2; } num=0; for(;i>-1;i--) { //    printf("%d",a[i

用C语言写一个程序,得出当前系统的整形数字长(16位,32位,64位)等,不能使用sizeof()

#include <iostream>#include <cmath>using namespace std; int main(){ int num = -1; unsigned int s = num;              //当前位级表示即为最大无符号数 cout << (int)log2(s)+1 << endl; //第一种 int intSize = 0; while(s != 0) { s = s >> 1; intSize

C语言编程输入一个5位数以内的正整数,完成以下操作

<1>判断输入的数是一个几位数 这里利用一个简单的while循环即可实现 while (x) { if (x / 10 != 0) suu++; x = x / 10; } <2>按序或逆序输出其各位数字 首先使用数组将数字每一位取出存入数组 for (i = 0; i <= suu; i++) { if (n == 1) a[suu] = n; a[i] = n % 10; n = n / 10; } 最后利用for循环语句将其正反输出即可 完整源代码如下: #includ

输入一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

package com.hanqi; import java.util.*; public class Nixudayin { public static void main(String[] args) { // TODO 自动生成的方法存根 System.out.println("输入一个不多于5位的正整数"); Scanner shu=new Scanner(System.in); String a=shu.next(); System.out.println("输入的

任意输入一个4位正整数,调用函数(函数自定义)输出该正整数数的各位数 字组成的最大数。

/*任意输入一个4位正整数,调用函数(函数自定义)输出该正整数数的各位数字组成的最大数.*/#include <stdio.h>int numb(int a){ int i = 0, j = 0,sum = 0, b[4]; b[0] = a%10; b[1] = a/10%10; b[2] = a/100%10; b[3] = a/1000; for (i = 0 ;i < 4; i++) { for(j = 0;j < 3 - i; j++) { if(b[j] > b[

输入一个正整数n,返回一个最小正整数m(m至少是2位数),使得m的各位乘积等于n,例如输入36,输出49,输入100,输出455,对于某个n不存在这样的m,请返回-1。

输入一个正整数n,返回一个最小正整数m(m至少是2位数),使得m的各位乘积等于n,例如输入36,输出49,输入100,输出455,对于某个n不存在这样的m,请返回-1. package hope20141002_01; import java.util.*; public class JingDong { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("