【PTA】7-8 到底有多二 (15分)

简介: 【PTA】7-8 到底有多二 (15分)

此程序还有一个训练点通不过 希望有大佬能指出问题所在

一个整数“犯二的程度”定义为该数字中包含2的个数与其位数的比值。如果这个数是负数,则程度增加0.5倍;如果还是个偶数,则再增加1倍。例如数字-13142223336是个11位数,其中有3个2,并且是负数,也是偶数,则它的犯二程度计算为:3/11×1.5×2×100%,约为81.82%。本题就请你计算一个给定整数到底有多二。

输入格式:
输入第一行给出一个不超过50位的整数N。

输出格式:
在一行中输出N犯二的程度,保留小数点后两位。

输入样例:
-13142223336

输出样例:
81.82%

鸣谢安阳师范学院段晓云老师和软件工程五班李富龙同学补充测试数据!

#include <string.h>
#include <stdio.h>
#include <math.h>
int main()
{
    double sum=1.0,cd;
    int cnt=0,shu=0,len;
    char N[100];
    gets(N);
    len=strlen(N);
    if(N[0]=='-') len-=1;
    for(int i=0;i<=len;i++){
        if(N[i]=='2') cnt++;
    }
    if(N[0]=='-') sum*=1.5;
        else shu+=N[0];
    for(int j=1;j<=len;j++){
        shu=shu*10+N[j];
    }
    if(shu%2==0) sum*=2;
    cd=1.0*cnt/len*sum*100;
    printf("%.2lf%%",cd);
    return 0;

}

目录
相关文章
C进阶:指针的练习(1)
C进阶:指针的练习(1)
119 1
|
C语言
c语言编程练习题:7-31 掉入陷阱的数字
c语言编程练习题:7-31 掉入陷阱的数字
142 1
|
存储 程序员 编译器
C 语言数组与指针的深度剖析与应用
在C语言中,数组与指针是核心概念,二者既独立又紧密相连。数组是在连续内存中存储相同类型数据的结构,而指针则存储内存地址,二者结合可在数据处理、函数传参等方面发挥巨大作用。掌握它们的特性和关系,对于优化程序性能、灵活处理数据结构至关重要。
|
存储 C语言 C++
PTA—C语言期末复习(选择题)
PTA—C语言期末复习(选择题)
420 1
|
C语言
C语言指针——练习
C语言指针——练习
163 0
|
C语言
PTA—C语言期末复习(判断题)
PTA—C语言期末复习(判断题)
607 0
|
存储 人工智能
指针的应用练习(数组与指针的关系)
指针的应用练习(数组与指针的关系)
113 0
|
C语言
pta 浙大版《C语言程序设计(第3版)》题目集 习题6-6 使用函数输出一个整数的逆序数 (20分)
pta 浙大版《C语言程序设计(第3版)》题目集 习题6-6 使用函数输出一个整数的逆序数 (20分)
【C/PTA】指针专项练习(一)
【C/PTA】指针专项练习(一)
351 0
|
存储 搜索推荐
【C/PTA】指针专项练习(二)
【C/PTA】指针专项练习(二)
330 0