C练习_1005
题自:题目 1009: [编程入门]数字的处理与判断_C语言网
题目描述
输入
输出
点击查看代码 ```点击查看代码 ``` ``` ```
样例输入
12345
样例输出
5
1 2 3 4 5
54321
我的解答:
1 // Code file created by C Code Develop
2
3 #include "ccd.h"
4 #include "stdio.h"
5 #include "stdlib.h"
6 #include "math.h"
7
8 int main() {
9 int num;
10 while (1)
11 {
12 // scanf("%d", &num);
13 num = 12345;
14
15 if (num < 100000) break;
16 }
17
18
19 int d;
20 if(num < 10) {
21 d = 1; }
22 else if(num < 100) {
23 d = 2;
24 }
25 else if(num < 1000) {
26 d = 3;
27 }
28 else if(num < 10000) {
29 d = 4;
30 }
31 else {
32 d = 5;
33 }
34 //1
35 printf("%d\n", d);
36 //2
37 int c = num;
38 int s[5];
39 for(int i = 1; i < d + 1; i++ ) {
40
41 int z = 0;
42 z = (int) (c) / pow(10 , (d - i));
43 c = c - z*pow(10 , (d - i));
44 s[i - 1] = z;
45 // printf("s[%d]:%d ",i-1, s[i - 1]);
46 // printf("10^d-i+1:%d\n", (int) pow(10, (d - i)));
47 //printf("c:%d\n", c);
48 printf("%d", z);
49 if(i < d) {
50 printf(" ");
51 }else {
52 printf("\n");
53 }
54 }
55
56 // printf("OK");
57 int b;
58 int sum = 0;
59 for(int i = 0; i < d; i++ ) {
60 // printf("s[%d]:%d ", d - i - 1, s[d - i - 1]);
61 sum += s [d - i - 1]*pow(10, (d - i - 1));
62 // printf("10^d-i+1:%d\n", s [d - i] * pow(10, (d - i-1)));
63 // printf("c:%d\n", sum);
64 }
65 printf("%d", sum);
66
67
68 c = max(1, 6);
69 //printf("%d", c);
70 return 0;
71
72 }
优质解答:1009: [编程入门]数字的处理与判断 (C语言)字符数组与常规思路
将输入的数字当作字符串来储存,用strlen( ) 函数得到字符串长度,即为数字位数
将字符串从左到右遍历输出(带空格)
最后还有一个回车不要忘了
再将字符串从右往左遍历输出(不带空格)就好了
注意事项:
题目说数字位数不超过5,所以定义字符数组长度应不小于6
因为字符串结尾还有结尾符 '\0' 占一位
1 #include <stdio.h>
2 #include <string.h> //C语言字符串头文件,strlen() 函数包含在此内
3
4 int main()
5 {
6 char str[10]; //定义字符串长度为 10
7 scanf("%s", str); //输入数字 (作为字符串输入)
8
9 int len = strlen(str); //获取字符串长度
10 printf("%d\n", len); //输出字符串长度,即为数字位数
11 for (int i = 0; i < len; i++) //从左往右遍历输出
12 {
13 printf("%c ", str[i]);
14 }
15 printf("\n"); //输出回车
16 for (int i = len - 1; i >= 0; i--) //从右往左遍历输出
17 {
18 printf("%c", str[i]);
19 }
20 return 0;
21 }
随机推荐
- MPI学习笔记(四):矩阵相乘的Cannon卡农算法
mpi矩阵乘法:C=αAB+βC 一.Cannon卡农算法基本介绍 1.二维矩阵串行乘法 两个n维方阵的乘法A×B=C的串行计算公式为: 下图是用图示来表示的这种计算规则: 2.二维块划分的思想 并行 ...
- Vue cli之传递数据
1.父组件的数据传递给子组件 // 父组件 <Menu title="来自Home的数据" :clickNum="num"></Menu> ...
- Android 13 - Media框架(11)- MediaCodec(一)
关注公众号免费阅读全文,进入音视频开发技术分享群! MediaCodec 是 Android 平台上音视频编解码的标准接口,无论是使用软解还是硬解都要通过调用 MediaCodec来完成,是学习 An ...
- [Qt开发]当我们在开发兼容高分辨率和高缩放比、高DPI屏幕的软件时,我们在谈论什么。
前言 最近在开发有关高分辨率屏幕的软件,还是做了不少尝试的,当然我们也去网上查了不少资料,但是网上的资料也很零碎,说不明白,这样的话我就做个简单的总结,希望看到这的你可以一次解决你有关不同分辨率下的所 ...
- nfs笔记整理
NFS---共享存储系统 #network file system 网络文件系统 #NFS主要使用在局域网下,让不同的主机之间可以共享文件.或者目录数据.主要用于linux系统上实现文件共享的一种 ...
- element el-input 去掉边框
element样式还是蛮好的,只是有时候我们需要做一些调整,比如,el-input 的边框,官网是这样子的 我们需要去掉这个边框 试了常用的:border: none: 以及:outline:non ...
- Do not access Object.prototype method 'hasOwnProperty' from target object
hasOwnProperty 判断对象是否为空 在使用 hasOwnProperty 判断对象是否为空时遇到了一下问题,总结一下 // Do not access Object.prototype m ...
- 开启PHP-GD库
话不多说,上教程 环境 CentOS7 1. 安装php-gd yum install php-gd 2. 定位gd.so位置 rpm -qal | grep gd.so #第一行即是 3. 定位配置 ...
- Kubernetes(K8s)最新版搭建
Kubernetes简单介绍 Kubernetes意为舵手,简称K8s. 前身是Google的Borg.所以一开源就吸引了一大批注意力. 因为谷歌,所以墙.在国内搭建K8s非常头疼. 下面我就来介绍一 ...
- ZYNQ Linux使用SPI驱动
--- title: ZYNQ Linux使用SPI驱动 EntryName: xilinx-zynq-using-spi-driver-in-linux date: 2020-10-14 10:02 ...