西电OJ题解-21(C语言):数位输出
大家好,我是不温卜火,是一名计算机学院大数据专业大三的学生,昵称来源于成语—不温不火,本意是希望自己性情温和。作为一名互联网行业的小白,博主写博客一方面是为了记录自己的学习过程,另一方面是总结自己所犯的错误希望能够帮助到很多和自己一样处于起步阶段的萌新。但由于水平有限,博客中难免会有一些错误出现,有纰漏之处恳请各位大佬不吝赐教!暂时只在csdn这一个平台进行更新,博客主页:https://bu
大家好,我是不温卜火,是一名计算机学院大数据专业大三的学生,昵称来源于成语—
不温不火
,本意是希望自己性情温和
。作为一名互联网行业的小白,博主写博客一方面是为了记录自己的学习过程,另一方面是总结自己所犯的错误希望能够帮助到很多和自己一样处于起步阶段的萌新。但由于水平有限,博客中难免会有一些错误出现,有纰漏之处恳请各位大佬不吝赐教!暂时只在csdn这一个平台进行更新,博客主页:https://buwenbuhuo.blog.csdn.net/。
PS:由于现在越来越多的人未经本人同意直接爬取博主本人文章,博主在此特别声明:未经本人允许,禁止转载!!!
目录
西电OJ题解-21(C语言):数位输出
本专栏为西安电子科技大学C语言课程题库的题解,题目及其部分解题思路由好兄弟梁忠鑫提供,学长在此只是修改完善。请各位支持原创,目前仅在CSDN发布
。
推荐
♥各位如果想要交流的话,可以加下QQ交流群:974178910,里面有各种你想要的学习资料。♥
♥欢迎大家关注公众号【不温卜火】,关注公众号即可以提前阅读又可以获取各种干货哦,同时公众号每满1024及1024倍数则会抽奖赠送机械键盘一份+IT书籍1份哟~♥
一、题目
1. 题目描述
输入一个5位整数,求出其各数位数值,并按照从高位到低位的顺序输出,
如:输入12345,输出为1 2 3 4 5。
2. 输入说明
输入一个五位正整数。
3. 输出说明
按数位从高到低依次输出,各数位之间以一个空格相分隔。
4. 样例输出
输入样例:
96237
输出样例:
9 6 2 3 7
二、解题思路及题解
1. 解题思路
- 1.暴力
感觉此种方法没啥说的,小学生都能明白的解题思路(小学生可能真会-。-)
- 2.循环
循环包括正向打印与逆向打印
2. 题解
2.1 暴力
- 源码
/**
* @Author: 梁忠鑫 / 李华鑫(修改)
* @Email: 459804692@qq.com
* @Date: 2020/12/06
* @Time: 15:55
* @Version: 1.0
*/
#include <stdio.h>
int main()
{
int a,g,s,b,q,w;
scanf("%d",&a);
w=(a/10000)%10;
q=(a/1000)%10;
b=(a/100)%10;
s=(a/10)%10;
g=a%10;
printf("%d %d %d %d %d",w,q,b,s,g);
return 0;
}
- 运行结果
2.2 循环
1. 逆向打印(此方法与非本题的正确解题思路,仅供参考)
- 源码
/**
* @Author: 李华鑫
* @Email: 459804692@qq.com
* @Date: 2020/12/06
* @Time: 15:55
* @Version: 1.0
*/
#include <stdio.h>
int main()
{
int x,a[100]; // a[100]存储数字
int i =0; // i表示输入值x的位数 (需要加上当输入为0时,位数为1)
scanf("%d",&x);
if(x==0){
i=1;
}
while(x!=0){
a[i]=x%10;
x=x/10;
printf("%d ",a[i]);
i++;
}
return 0;
}
- 运行结果
2. 顺序打印
- 源码
/**
* @Author: 李华鑫
* @Email: 459804692@qq.com
* @Date: 2020/12/06
* @Time: 16:30
* @Version: 1.0
*/
#include <stdio.h>
int main()
{
int n,a,b,d,i,j,k,m;
scanf("%d",&n);
for(k=1;k<=n;k++)
{
scanf("%d",&a);
b=a;
m=0;
while(b>=10)
{
b=b/10;
m++;
}
for(i=m; i>0; i--)
{
d = 1;
for(j=0; j<i; j++)
d = d*10;
printf("%d ", a/d);
a = a-a/d*d;
}
printf("%d\n", a%10);
}
return 0;
}
- 运行结果
好书不厌读百回,熟读课思子自知。而我想要成为全场最靓的仔,就必须坚持通过学习来获取更多知识,用知识改变命运,用博客见证成长,用行动证明我在努力。
如果我的博客对你有帮助、如果你喜欢我的博客内容,请“点赞” “评论”“收藏”
一键三连哦!听说点赞的人运气不会太差,每一天都会元气满满呦!如果实在要白嫖的话,那祝你开心每一天,欢迎常来我博客看看。
码字不易,大家的支持就是我坚持下去的动力。点赞后不要忘了关注
我哦!
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)