Hzu挑战自我


私信TA

用户名:gxhzxyjsj

访问量:91744

签 名:

2023终究会过去,期待2024!

等  级
排  名 8
经  验 26431
参赛次数 61
文章发表 157
年  龄 0
在职情况 教师
学  校 贺州学院
专  业 软件工程

  自我简介:

弱鸡一个,继续努力!

解题思路:此题用普通方法判断是多少位也可以,但是代码比较长,如果用sprintf函数则很简单。把输入的数字转换为数字字符串,然后再求长度即可判断是几位数,然后再输出每一位,再逆序输出每一位即可。


参考代码:

#include <stdio.h>
#include <string.h>
int main()
{
	int a,len,i,j;
	char s[6];
	scanf("%d",&a);
	sprintf(s,"%d",a); //转换为数字字符串 
	len=strlen(s);     //求长度即可判断是几位数 
	printf("%d\n",len);
	for(i=0;i<len;i++)   //输出每一位 
		printf("%c ",s[i]);
	printf("\n");
	for(i=len-1;i>=0;i--)  //逆序输出每一位 
		printf("%c",s[i]);
	printf("\n");
	return 0;
}


 

0.0分

45 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区

老哥你的代码不行啊,虽然运行结果是对的,但是提交还是错误
2020-09-03 10:12:18
为啥我用你的代码,结果是错误的。
#include<stdio.h>
#include<string.h>
int main()
{
    int len,i;
    char s[5];
    scanf("%c",&len);
    len=strlen(s);
    printf("%d\n",len);
    for(i=0;i<len;i++)
    printf("%c",s[i]);
    printf("\n");
    for(i=len-1;i>=0;i--)
    printf("%c",s[i]);
    return 0;
}
2020-04-09 11:49:32
老哥前面定义的int j 那个整型j 没用到吧.
2020-02-28 11:29:34
直接scanf("%s",str)就行可以省一个sprintf
2019-11-05 21:47:11
为什么这里定义的数组要用字符数组呢?
2019-10-21 14:07:12
  • «
  • 1
  • »