从一个字符数组中读出相应的整数、实数(有点问题,待调试,求大神帮忙)

原创 2017年01月14日 02:28:37

从一个字符数组中读出相应的整数、实数

// author:yangyang。
//main.c
#include "stdafx.h"
void shishupanduan(int flag);
char s[11];
char *p = s;
void main()
{
    gets_s(s);
    char zhengshu[10];
    int i = 0;
    int dianflag=0;//有几个小数点
    int dianflaga[10] = { 0 };//每个小数点的位置
    int *pdianflaga = dianflaga;//小数点位置数组的指针
    int wflag = 1;
    while (wflag==1)
    {
        //输出整数
        if ((*p >= '0'&&*p <= '9'))
        {
            zhengshu[i] = *p;
            i++; p++;
        }
        else if (*p == '.')
            {
                *(pdianflaga+dianflag) = i;//记录小数点在第几个
                dianflag++;//更新小数点个数
                p++; i++;
            }
        //p++;
        else if (*p == '\0')//遇到结束标识符退出死循环
        {
            p = zhengshu;
            while (1)
            {
                for (int j = 0; j < i; j++)
                printf("%c", *(p + j));
                wflag = 0;
                break;
            }
        }
        else
        {
            //p++; //i++;
        }

    }
    printf("\n");
    for (int dd = 0; dd < dianflag; dd++) 
    {
        shishupanduan(*(pdianflaga));
        pdianflaga++;
    }
}
void shishupanduan(int flag)
{
    p = s;
    int flag1 = flag;
    int flag2 = flag;
    for (int k = 0;k<flag; k++) //往前判断是否为整数
    {
        if (*(p + flag1-1) >= '0'&&*(p + flag1-1) <= '9')//是整数往前移位
        {
            flag1--;
        }
        else//不是整数跳出for循环
            break;
    }
    for (int k = 0;k<10-flag; k++)//往后判断是否为整数
    {
        if (*(p + flag2+1) >= '0'&&*(p + flag2+1) <= '9')//是整数往后移位
        {
            flag2++;
        }
        else//不是整数跳出for循环
            break;
    }
    for (int k = flag1 ; k <= flag2; k++)
            printf("%c", *(p + k));
    printf("\n");
}

从一个字符数组中读出相应的整数、实数

昨天说过的程序就在这里啦,自由取用,若有问题,可以评论,大家一起讨论 /*从一个字符数组中读出相应的整数、实数*/   #include ...
  • qq_36691432
  • qq_36691432
  • 2016年12月01日 19:04
  • 111

入门训练2_实数输出

/* 问题描述 给定圆的半径r,求圆的面积。 输入格式 输入包含一个整数r,表示圆的半径。 输出格式 输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。 说明:在本题中,输入是一个整...
  • liubinzi123
  • liubinzi123
  • 2014年10月10日 08:43
  • 1020

{求大神帮忙!!!!!!}

原题描述: 给定一个日期,输出这个日期是该年的第几天。 Input 输入数据有多组,每组占一行,数据格式为YYYY-MM-DD组成,具体参见sample input ,另外,可以向你确保所有的输入...
  • u012246348
  • u012246348
  • 2013年10月23日 15:43
  • 623

求大神帮忙啊!!!!!!!!!!!!!!!!!!!

启动tomcat的时候总是报错; [ERROR] 2015-12-30 14:45:05 :Context initialization failed  java.lang.IllegalArgu...
  • li1402133184
  • li1402133184
  • 2015年12月30日 14:59
  • 389

每日一个C++小程序(十一)--两个整数、实数、复数的相加

#include #define OK 1 using namespace std; struct complex { double real; double imaginary; };...
  • u014571355
  • u014571355
  • 2014年05月01日 19:12
  • 3053

01背包问题(当有的背包重量是非整数时)的递归(优化成动态规划+再用滚动数组优化)解法+一些动态规划(递归,搜索)的高级技巧

当背包重量是整数时,动态规划可以用数组存储状态就可以了。 当背包重量是非整数时,用map存储状态就可以了!主要思路:  map(构造函数中参数comp是仿函数(或者叫函数对象))+递归优化(“去冗余思...
  • baidu_26408419
  • baidu_26408419
  • 2017年01月03日 23:09
  • 985

求两个整数之间的汉明距离---Salem

B - Salem Time Limit:1000MS Memory Limit:1048576KB 64bit IO Format:%I64d & %I64u SubmitSta...
  • why850901938
  • why850901938
  • 2016年04月09日 13:56
  • 1547

用的vs2005,这怎么解决呢,求大神帮忙

“sample.exe”: 已加载“E:\SuperDog\2.1\Samples\Encryption\C\Debug\sample.exe”,已加载符号。 “sample.exe”: 已加载“C...
  • wangyang55555
  • wangyang55555
  • 2015年01月05日 10:22
  • 671

【大神,求帮忙】正则表达式 RSS

xml文档的Description 标签的两种格式 ,我想匹配出 “【摘要】 (记者 朱晓颖)4日,江苏省十二届人大常委会第十九次会议在完成各项议程后在南京闭幕,其中《江苏省养老服务条例》获得通过。据...
  • louzirou0925
  • louzirou0925
  • 2017年01月08日 17:28
  • 146

【大神,求帮忙】正则表达式 RSS

xml文档的Description 标签的两种格式 ,我想匹配出 “【摘要】 (记者 朱晓颖)4日,江苏省十二届人大常委会第十九次会议在完成各项议程后在南京闭幕,其中《江苏省养老服务条例》获得通过。据...
  • qiaoru5086
  • qiaoru5086
  • 2017年01月01日 10:28
  • 190
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从一个字符数组中读出相应的整数、实数(有点问题,待调试,求大神帮忙)
举报原因:
原因补充:

(最多只允许输入30个字)