求教C语言,从键盘输入一个整型数据(int型),编写程序判断该整数共有几位,并输出包含各个数字的个数。

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-27
编写程序判断该整数共有几位,并输出包含各个数字的

#include
void fun(int n)
{if(n>9)fun(n/10);
printf("%d ",n%10);
}
int main()
{int n,x,k=0;
scanf("%d",&n);
for(x=n;x;x/=10)k++;
printf("%d是一个%d位数
它由这些数字组成:",n,k);
fun(n);
return 0;
}

#include
#include void main(){
int number,n=0; //变量number保存输入的数;变量n保存该数的位数;
printf("请输入一个整数
");
scanf("%d",&number); //读取用户输入的数,保存到变量number中
printf("逆向输出后结果:");
while(number){ //number不为0时始终循环
printf("%d",number%10); //每次循环输出最后一个数位
number=number/10; //number除10取整(相当于截掉最后一个数位)
n++; //位数+1
}
printf("
该数是%d位数
",n); //输出变量n的值也就是该数的位数
getch(); //这一句没用,只是让控制台窗口不关闭
}

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n,a,b,c,d,e,f,g,h,i,j,counter=0,num;
    a=0;
    b=0;
    c=0;
    d=0;
    e=0;
    f=0;
    g=0;
    h=0;
    i=0;
    j=0;
    printf("Please enter the number:
");
    scanf("%d",&n);
    num=n;
    do{
            n=abs(n);
        switch(n%10)
        {
            case 0:a++;break;
            case 1:b++;break;
            case 2:c++;break;
            case 3:d++;break;
            case 4:e++;break;
            case 5:f++;break;
            case 6:g++;break;
            case 7:h++;break;
            case 8:i++;break;
            default :j++;
        }
        n=n/10;
    }while(n);
    counter=a+b+c+d+e+f+g+h+i+j;
    printf("%d: %d bits
",num,counter);
    if(a){printf("0: %d
",a);}
    if(b){printf("1: %d
",b);}
    if(c){printf("2: %d
",c);}
    if(d){printf("3: %d
",d);}
    if(e){printf("4: %d
",e);}
    if(f){printf("5: %d
",f);}
    if(g){printf("6: %d
",g);}
    if(h){printf("7: %d
",h);}
    if(i){printf("8: %d
",i);}
    if(j){printf("9: %d
",j);}
    return 0;
}


#include<stdio.h>
#include<string.h>
 int main()
{
char num[100];
int cnt[10] = {0};
int i;

scanf("%s", num);
printf("%s:%dbits
", num, strlen(num));
for(i = 0; num[i]; i ++)
if(num[i] <= '9' && num[i] >= '0') cnt[num[i] - '0'] ++;

for(i = 0; i < 10; i ++)
if(cnt[i]) printf("%d:%d
", i, cnt[i]);
}


这个用数组的方式来实现比较好,包括后面的输出

#include <stdio.h>
#include<stdlib.h>

main()
{   
int N,n,b,i,c[]={1,2,3,4,5,6,7,8,9},d[9]={0};
int r=0;
printf("Please enter the number:
");
scanf("%d",&n);
N=n;
n=abs(n);
while(n>0){
b=n%10;
for(i=0;i<9;i++){
if(b==c[i])
d[i]++;
}
n=n/10;
r++;
}
printf("%d: %d bits
",N,r);
for(i=0;i<9;i++){
if(d[i]!=0)
printf("%d: %d
",c[i],d[i]);
}
system("pause");
}


  • C语言的 scanf("%d",&x) 是什么意思?
    答:scanf("%d",&x);从输入设备接收一个整型变量,把他他赋给x,&是x地址.%d表示十进制整数.
  • c语言请编写一个程序从键盘输入十个整型数据然后输出这十个数
    答:int arr[10] = { 0 };for (int i = 0; i < 10; i++){printf("input pos is %d : ", i + 1);scanf("%d", &arr[i]);}for (int i = 0; i < 10; i++){printf("%-4d", arr[i]);}printf("\n");
  • 求教:C语言输入10个整数,将其中最小的数与第一个数字对换,把最大的数字...
    答:include<stdio.h> int main(){void change(int a[]);void input(int a[10]);void output(int a[10]);int a[10];input(a);change(a);output(a);return 0;} void input(int a[10]){ int i;for(i=0;i<10;i++){ scanf("%d",&a);} } void output(int a[10]){ int i;...
  • C语言 输入一个正整数N,输出2/1+3/2+5/3+8/5+……的前N项和,保留两位...
    答:include<stdlib.h> int main(void){ int n,i,x,y;double s,temp;s=0;x=2;y=1;scanf("%d",&n);for(i=1;i<=n;i++){ s=s+1.0*x/y;temp=x;//用一个临时变量存放x x=x+y;//经历了这个过程 x不再是原来的值了 所以你写的y=x就错了 y=temp;} printf("%.2lf\n",...
  • 给数组赋值,从键盘输入一组整型数据,并以enter键结束
    答:{ i++;} for(int j=0;j<=i;j++){ printf(" %d",s[j]);} getchar();上面的代码我测试过了能达到你的要求哦,while(scanf("%d",&s[i]),(a=getchar())!='\n') 这一句代码你仔细体会下。注意事项:在输入数据的时候,每输入一个以逗号或者空格隔开。希望能对你有帮助 输入1,2...
  • 编写C语言程序:从键盘上输入两个整型数据,分别存放在整型变量a 和b 中...
    答:include <stdio.h> int main(){ int a,b;scanf("%d %d", &a,&b );printf("%d/%d=%d\n", a,b,a/b );printf("%d%%%d=%d\n", a,b,a%b );return 0;}
  • C语言中 scanf_s和 scanf 区别是什么
    答:1、使用区别 scanf()不会检查输入边界,可能造成数据溢出。scanf_s()会进行边界检查。2、意思 scanf表示从键盘输入指定格式的数据。如:scanf("%d",x);指从键盘给x输入一个int型(整型)数据;scanf("%f",x);指从键盘给x输入一个float型(实型)数据;对应的输出为:printf 按照指定的格式输出...
  • C语言 从键盘输入10个整数,将这10个整数按从小到大的顺序输出。_百度知 ...
    答:1、打开软件进入页面,点击文件-新建-文件-C++ Source File。2、输入预处理命令和主函数:#include<stdio.h>/*输入输出头文件*/void main()/*空类型:主函数*/。3、定义变量和数组的数据输入10个数:int a[10],i,t;/*定义变量和数组数据类型为整型*/printf("输入10个整数:");/*输出文字...
  • C语言中的scanf是什么意思
    答:scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include <stdio.h>。(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令#include <stdio.h>。)函数 scanf() 是格式输入函数,即按用户指定的格式从键盘上把数据输入...
  • C语言求教大神
    答:N(代表一个正整数):对实数,表示输出n位小数;对字符串,表示截取的字符个数 地址列表:是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址 举例:用scanf函数输入数据。include<stdio.h> void main(){ int a,b,c;scanf(“%d%d%d”,&a,&b,&c);printf(“%d,%d,%d\n”,a,...