C语言题目。输入一个不多于4位的正整数,求它的位数,并按逆序输出各位数字。

作者&投稿:郝河 (若有异议请与网页底部的电邮联系)
C语言编程题 给一个不多于4位的正整数,求出它是几位数,并正序和逆序打印出各位数字。~

#include
int main()
{
int i=0; //输入的数字
int n=0; //几位数
int a[50]; //存放每位的数字
printf("输入一个整数:");
scanf("%d",&i);
while(i!=0)
{
a[n]=i%10;
i/=10;
n++;
}
printf("是%d位数
",n);
for(int j=0;j<n;j++) //逆序输出
printf("%d",a[j]);
printf("
");
for(int j=n-1;j>=0;j--) //顺序输出
printf("%d",a[j]);
printf("
");
}

#include
#include

int main(void)
{
int num;
do
{
printf("请输入一个不大于四位的数据:
");
scanf("%d", &num);
while(getchar()!='
')//防止意外输入无效字符
continue;
}while(!(num>0 && num<10000));

int i=1, weishu=0;
for(i=1; num/i>0; i=i*10)
weishu++;
printf("输入的数据是%d位数据
", weishu);

int num1 = num;
for(i=pow(10, weishu-1); i>=1; i/=10)
{
printf("%d", num1/i);
num1 = num1%i;
}
printf("
");

num1 = num;
for(i=10; i<=pow(10, weishu); i*=10)
{
printf("%d", num1%10);
num1 = num1/10;
}
printf("
");

return 0;
}

/*
VC++ 6.0 运行结果

请输入一个不大于四位的数据:
1234
输入的数据是4位数据
1 2 3 4
4 3 2 1
Press any key to continue
*/

输入一个不多于4位的正整数,求它的位数,并按逆序输出各位数字,可以参考下面的代码:

#include<stdio.h>

int main()

{

int n, ans = 0;

scanf("%d", &n);

printf("逆序输出:");

while(n != 0)

{

int t;

t = n % 10;

n /= 10;

ans++;

printf("%d ", t);

}

puts("");

printf("位数为:%d
", ans); // 位数

return 0;

}

扩展资料:

C语言函数列举:

C语言asin()函数:求反正弦

C语言atan()函数:求反正切

C语言atan2()函数:求x/y的反正切值

C语言cos()函数:求余弦

C语言cosh()函数:求双曲余弦

C语言log()函数:返回x的自然对数(以e为底的对数)

C语言ldiv()函数:求两个数的商和余数(针对long类型)

C语言isupper()函数:判断一个字符是否是大写字母

C语言isspace()函数:判断一个字符是否是空白符

参考资料来源:百度百科-c语言



#include<stdio.h>

int main()
{
    char digtal[20];
    int  count = 0;
    int  i;
    int  num;
    scanf("%d",&num);
    while( num )
    {
        digtal[count]= num % 10;
        num /= 10;
        count ++;
    }
    
    printf("输入%d, 共%d位
", num,count);
    for(i = count - 1; i >= 0 ; i--)
        printf("%d",digtal[i]);
    return 0;
}


#include<stdio.h>

int main()
{
    int n, ans = 0;
    scanf("%d", &n);
    printf("逆序输出:");
    while(n != 0)
    {
        int t;
        t = n % 10;
        n /= 10;
        ans++;
        printf("%d ", t);
    }
    puts("");
    printf("位数为:%d
", ans); // 位数
    return 0;
}


定义变量为整数,用求余函数分别除10到1000么


C语言字符串问题: 输入一个字符串,其中有空格,因此字符串被分为n个...
mark=1;\/\/已经找到过该字母 } if(mark==0){ ch[m++]=word[i][p];} } } } } } return m;} void main(){ char str[256],ch[256];char word[256][256];int i,m=0,n=0;printf("请输入一个字符串:\\n");gets(str);n=Div(str,word);printf("共有%d个单词\\n",n+1);f...

c语言,我看不出来那错了。题目是,输入一个非负整数,计算并输出该数的...
include <stdio.h>int main(){int s=0,n=1;printf("input=:");scanf("%d",&s);for(s\/=10;s;s\/=10)n++;printf("%d位数\\n",n);return 0;}

输入一个正整数n,再输入n个整数,输出最小值 c语言
你题目有没有写全,如果按照你这个题目,没有规定输入整数的位数,考虑要输入任意位数的数字,那么数字就不能使用已有的整数类型来保存(比如int只有4个字节大小,超出就溢出了)。我写的是任意长度的数字输入,比较取最小值。(你内存够就行)include <stdio.h>#include <malloc.h>#include <string....

c语言题目:从高位开始逐位输出一个整数的各位数字:输入一个整数,从高...
include<math.h>#include<stdio.h>int main(){ int a,b,c,n,i,m; printf("输入一个整数"); scanf("%d",&n); i=1; m=n; while(n>10){ n\/=10; \/\/这里 少了一个等于号。导致死循环。 i*=10; } while(m>0){ n=m\/i; \/\/不要改变m值...

c语言 输入一个整数n,输出1+2+...+n的值。代码
include <stdio.h>\/\/望采纳!^_^ int main(void){ int n;int sum=0,i;printf ("please input n:");if (scanf("%d",&n)!=1){ printf("输入错误!");} if(n<=0){ printf("输入不合法,n值必须大于等于1");} for(i=1;i<=n;i++){ sum+=i;} printf("%d\\n",sum);return...

汇编语言题目 从键盘上输入0~9之间的任意一个数字,利用查表的方法计算...
MOV AH, 1 INT 21H ;输入一字符 CMP AL, '0'JB EXIT CMP AL, '9'JA EXIT AND AL, 0FH ;AL=0~9 MOV AH, 0 MOV BX, AX ;BX=0~9 ADD BX, BX MOV AX, [BX] ;查表得出结果 LEA DX, OUT_TABLE ADD DX, AX MOV AH,...

C语言设计题:输入一个数值给x,若3<=x<=10则计算表达式x3+x2+x+1...
x3是x^3吗?#include<stdio.h>int main(){ int x; while(scanf("%d", &x) == 1) { if(x >= 3 && x <= 10) printf("%d\\n", x * x * x + x * x + x + 1); else printf("error\\n"); } return 0;} ...

c语言。要求使用while 题目 输入一个整数a 做1+2+3+…+n的运算 当合 ...
include<stdio.h>int main(){int a,n=1,sum=0;scanf("%d",&a);do{sum=sum+n;n++;}while(sum<=a);n--;printf("%d",n);return 0;}

C语言编程问题:从键盘上输入一个字符串按照以下规则对其加密。
include <stdio.h>int main(){int i=0;char string[50];gets(string);puts(string);while(string[i] != '\\0'){if(string[i]>='a'&&string[i]<='z'){string[i]=(string[i]+3-'a')%26+'a';}else if(string[i]>='A'&&string[i]<='Z'){string[i]=(string[i]+3-'A'...

c语言,输入一个整数n和n个整数,输出这n个整数的最大值
include<stdio.h>int main(){int n,a,i,t;scanf("%d",&n);scanf("%d",&t); \/\/先读的第一个数要默认成最大的,不然,t的初值是不定的for(i=1;i<n;i++) \/\/循环中再读n-1个数{scanf("%d",&a);if(t

滕州市15987329684: c语言:(输入一个不多于4位的正整数,判断它是几位数)这是我的解法,我觉得不好,有没精炼的,求指导 -
相丁右旋: main() {int a,b;scanf("%d",&a);if ( a > 9999 ){printf("E\n");}else{b=0;do{b++;a /= 10 ;}while( a );printf("%d\n",b);}getch(); }

滕州市15987329684: C语言如何编程实现给出一个不多于4位的正整数,输出它是几位数并且按逆序输出每一位数字? -
相丁右旋: #include <stdio.h> #include <math.h>int main(void) {int num;do{printf("请输入一个不大于四位的数据:\n");scanf("%d", &num);while(getchar()!='\n') //防止意外输入无效字符continue;}while(!(num>0 && num<10000)); int i=1, ...

滕州市15987329684: c语言编辑,请输入一个不大于四位数的正整数,要求一,求它是几位数,要求二,求逆序打印出数字 -
相丁右旋: 直接将这个数字以字符串形式输入,然后再调用string.h头文件中的函数可以得到答案.

滕州市15987329684: C语言题目.输入一个不多于4位的正整数,求它的位数,并按逆序输出各位数字. -
相丁右旋: #includeint main() { char digtal[20]; int count = 0; int i; int num; scanf("%d",&num); while( num ) { digtal[count]= num % 10; num /= 10; count ++; } printf("输入%d, 共%d位\n", num,count); for(i = count - 1; i >= 0 ; i--) printf("%d",digtal[i]); return 0; }

滕州市15987329684: C语言编程题:输入一个不多于4位的正整数,要求如下1求出它是几位数;2输出每一位数.有谁会帮帮忙 -
相丁右旋: #include <stdio.h>#include <string.h>#include <ctype.h>#include <stdlib.h>#define SIZE 512 int main() { int num=0,sum=0; char szNum[SIZE]={0}; char *p=szNum; puts("请输入一个数:"); scanf("%d",&num); itoa(num,szNum,10); ...

滕州市15987329684: C语言编程题给一个不多于4位的正整数,求出它是几位数,并正序和逆序打印出各位数字. -
相丁右旋: 源程序如下: #include <stdio.h> int main() { int i,n = 0,num,x; char ch,s[20]; printf("请输入小于四位的数: "); scanf("%d",&num); x=num; while(x) { s[n] =x%10 + '0'; x/= 10; ++n; } s[n] = '\0'; printf("%d 是%d位数\n",num,n); printf("逆序...

滕州市15987329684: 从键盘输入一个不超过4位数的正整数,计算它是几位数的整数. 用c语言编程 -
相丁右旋: #include<cstdio>#include<cstdlib> int main() { int n,t,ans=0; scanf("%d",&n); while(n>0) {ans++; n=n/10; } printf("%d\n",ans); return 0; }

滕州市15987329684: 输入一个不超过4位数的正整数,要求输出位数及每位数上对应的数字 -
相丁右旋:[答案] 1位:0-9 2位10-99 3位100-999 4位1000-9999 你是要代码么?还是只是要结果捏

滕州市15987329684: 用C语言试编程完成如下功能:输入一个不多于4位的整数,求出它是几位数. -
相丁右旋: int main() { int x; scanf("%d",&x); printf("是%d位数\n",x>99?x>999?4:3:x>9?2:1); return 0; }

滕州市15987329684: c语言输入一个不多于4位的正整数,求出它的几位数,逆序打印出各位数字 用if else做 -
相丁右旋: a[j++] = i % 10; 相当于a[j] = i % 10;后面的i%10是求个位上的那个数字,赋值给a[j]j从0开始 也就是说各位上的数字付给a[0] 然后j++,i/=10;就是去掉个位数,再对i%10就是求十位数,放在a[1]以此类推下去就可以了例子: 123 123%10 = 3123/10 = 12; 12 % 10 = 2体会一下吧

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网