精华内容
下载资源
问答
  • 单片机c语言中分数转换成小数 单片机c语言中分数转换成小数 单片机c语言中分数转换成小数
  • #记C语言中分数的除法问题 题目如下 将华氏温度转化为摄氏温度,利用公式C=5/9*(F-32)。其中C为摄氏度,F为华氏度。 问题很简单,可以很快的写出程序如下: #include<stdio.h> //华氏温度转化为摄氏 int ...

    #记C语言中分数的除法问题

    题目如下

    将华氏温度转化为摄氏温度,利用公式C=5/9*(F-32)。其中C为摄氏度,F为华氏度。

    问题很简单,可以很快的写出程序如下:

    #include<stdio.h>
    //华氏温度转化为摄氏 
    int main()
    {
    	float f,c;
    	f=64;
    	c=(5/9)*(f-32);
    	printf("F=%f\nC=%f",f,c);
    	return 0;
    } 
    

    但运行后输出发现 C=0。
    查找问题后发现,除法在C中不能简单的和公式一样表达。如:5/9
    得到结果为0,因为C中 “/” 号两边为整除即代表整除,得到的结果为0
    所以要得到真实结果,应将两边一数字改为小数表示即 5.0/9,结果为17.777779

    将行7代码变更即可

    c=(5.0/9)*(f-32);
    
    展开全文
  • #11yyqd20132013-05-10 00:25大致如下:#include#include#includetypedef struct{long long intmolecular;long long intdenominator;}FRACTION;int change_to_proper_fraction(FRACTION *fraction);...

    #11

    yyqd20132013-05-10 00:25

    大致如下:

    #include

    #include

    #include

    typedef struct

    {

    long long int   molecular;

    long long int   denominator;

    }FRACTION;

    int change_to_proper_fraction(FRACTION *fraction);

    void fraction_add(FRACTION *frac_sum, FRACTION *frac_num);

    main()

    {

    FRACTION frac[4];

    int ret = 0;

    long long int quo = 0;

    frac[0].molecular = 1;

    frac[0].denominator = 2;

    frac[1].molecular = 1;

    frac[1].denominator = 3;

    frac[2].molecular = 1;

    frac[2].denominator = 6;

    frac[3].molecular = 0;

    frac[3].denominator = 0;

    if (change_to_proper_fraction(&frac[0])<0 || change_to_proper_fraction(&frac[1])<0

    || change_to_proper_fraction(&frac[2])<0)

    {

    printf("please check the fraction[3]!!!\n");

    }

    else

    {

    fraction_add(&frac[3], &frac[0]);

    fraction_add(&frac[3], &frac[1]);

    fraction_add(&frac[3], &frac[2]);

    if (frac[3].molecular%frac[3].denominator == 0)

    {

    printf("%lld/%lld+%lld/%lld+%lld/%lld=%lld\n", frac[0].molecular, frac[0].denominator,

    frac[1].molecular, frac[1].denominator, frac[2].molecular, frac[2].denominator, frac[3].molecular/frac[3].denominator);

    }

    else

    {

    printf("%lld/%lld+%lld/%lld+%lld/%lld=%lld/%lld\n", frac[0].molecular, frac[0].denominator,

    frac[1].molecular, frac[1].denominator, frac[2].molecular, frac[2].denominator, frac[3].molecular, frac[3].denominator);

    }

    }

    exit(1);

    }

    int change_to_proper_fraction(FRACTION *fraction)

    {

    if (fraction->denominator == 0)

    return -1;

    if (fraction->molecular == 0)

    {

    fraction->denominator = 0;

    return 0;

    }

    if ((fraction->molecular%fraction->denominator) == 0)

    {

    fraction->molecular = fraction->molecular/fraction->denominator;

    fraction->denominator = 1;

    return 0;

    }

    long long int diff = 0;

    long long int larger = 0;

    long long int smaller = 0;

    long long int mole_posi = 0;

    long long int deno_posi = 0;

    mole_posi = fraction->molecular > 0 ? fraction->molecular : (0 - fraction->molecular);

    deno_posi = fraction->denominator > 0 ? fraction->denominator : (0 - fraction->denominator);

    smaller = mole_posi

    diff = deno_posi + mole_posi - 2 * smaller;

    larger = diff>smaller ? diff : smaller;

    smaller = diff + smaller - larger;

    while (larger%smaller != 0)

    {

    diff = larger - smaller;

    larger = diff>smaller ? diff : smaller;

    smaller = diff + smaller - larger;

    }

    fraction->molecular = fraction->molecular/smaller;

    fraction->denominator  = fraction->denominator/smaller;

    return 0;

    }

    void fraction_add(FRACTION *frac_sum, FRACTION *frac_num)

    {

    if (frac_sum->molecular == 0)

    {

    frac_sum->molecular = frac_num->molecular;

    frac_sum->denominator  = frac_num->denominator;

    return;

    }

    else if (frac_num->molecular == 0)

    {

    return;

    }

    else

    {

    frac_sum->molecular = frac_sum->molecular*frac_num->denominator + frac_num->molecular*frac_sum->denominator;

    frac_sum->denominator = frac_sum->denominator * frac_num->denominator;

    change_to_proper_fraction(frac_sum);

    return;

    }

    }

    [本帖最后由 yyqd2013 于 2013-5-10 00:30 编辑]

    展开全文
  • 只A了一个,后面全WA了代码如下includeusing namespace std;struct Person{int number;int score;};struct Person person[5001];int main(){int n,m;int total;cin >> n >...total = (int) (m*1.5 + 0.5);...

    4193ed3ff6030b9a9418e896b216b19e.png

    c1e1b496baf7082d00da7911b34879d7.png

    8903c1207f9539a676e9393c3e5bbfd7.png

    只A了一个,后面全WA了

    代码如下

    include

    using namespace std;

    struct Person

    {

    int number;

    int score;

    };

    struct Person person[5001];

    int main()

    {

    int n,m;

    int total;

    cin >> n >> m;

    total = (int) (m*1.5 + 0.5);

    for(int i = 1; i <= n; i++)

    cin >> person[i].number >> person[i].score;

    for(int i = 1; i <= n-1; i++)

    for(int j = 1; j <= n-i; j++)

    {

    struct Person temp;

    if(person[j].score < person[j + 1].score)

    {

    temp = person[j];

    person[j] = person[j + 1];

    person[j + 1] = temp;

    }

    if(person[j].score == person[j + 1].score && person[j].number > person[j + 1].number )

    {

    temp = person[j];

    person[j] = person[j + 1];

    person[j + 1] = temp;

    }

    }

    cout << person[total].score << " " << total << endl;

    for(int i = 1; i <= total; i++)

    cout << person[i].number << " " << person[i].score << endl;

    return 0;

    }

    样例过了,但不知道哪里错了,求教,谢谢!

    展开全文
  • 利用人工方式比较分数大小的最常见的方法是:对分数进行通分后比较分子的大小。请编程模拟手工比较两个分数的大小。首先输入两个分数分子分母的值,例如"11/13,17/19",比较分数大小后输出相应的提示信息。例如,第...

    利用人工方式比较分数大小的最常见的方法是:对分数进行通分后比较分子的大小。请编程模拟手工比较两个分数的大小。首先输入两个分数分子分母的值,例如"11/13,17/19",比较分数大小后输出相应的提示信息。例如,第一个分数11/13小于第二个分数17/19,则输出"11/13<17/19"。

    程序的运行结果示例1:

    Input a/b, c/d:11/13,17/19↙

    11/13<17/19

    程序的运行结果示例2:

    Input a/b, c/d:17/19,23/27↙

    17/19>23/27

    程序的运行结果示例3:

    Input a/b, c/d:3/4,18/24↙

    3/4=18/24

    输入提示信息:"Input a/b, c/d:"  (注意:逗号后面有一个空格)

    输入格式:"%d/%d,%d/%d"

    输出格式:

    比较的结果是大于:"%d/%d>%d/%d\n"

    比较的结果是小于:"%d/%d

    比较的结果是相等:"%d/%d=%d/%d\n"

    展开全文
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼当个反面典型,让大家见识下丑陋无比的程序好了,主要是想练练打字,HOHO。应该用二维数组且全部函数化的,rand的%后面或是101或是100,可能和编译器有关,TC2下应写100...
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼当个反面典型,让大家见识下丑陋无比的程序好了,主要是想练练打字,HOHO。应该用二维数组且全部函数化的,rand的%后面或是101或是100,可能和编译器有关,TC2下应写100...
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼当个反面典型,让大家见识下丑陋无比的程序好了,主要是想练练打字,HOHO。应该用二维数组且全部函数化的,rand的%后面或是101或是100,可能和编译器有关,TC2下应写100...
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼当个反面典型,让大家见识下丑陋无比的程序好了,主要是想练练打字,HOHO。应该用二维数组且全部函数化的,rand的%后面或是101或是100,可能和编译器有关,TC2下应写100...
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼当个反面典型,让大家见识下丑陋无比的程序好了,主要是想练练打字,HOHO。应该用二维数组且全部函数化的,rand的%后面或是101或是100,可能和编译器有关,TC2下应写100...
  • 假设我们有一个整数n,我们必须找到一个介于0和1(不包括)之间的所有简化分数的列表,以使分母<= n。在这里,分数可以是任何顺序。因此,如果输入像n = 4,那么输出将是[“ 1/2”,“ 1/3”,“ 1/4”,“ 2/3”,...
  • C语言分数的等级

    千次阅读 2020-04-25 10:45:58
    C语言分数的等级 语法结构:使用if…else if…else 代码如下: /* 对分数进行等级划分 */ #include<stdio.h> int main() { double score; //分数 printf("请输入你的分数:"); scanf("%lf", &...
  • 比较两个分数的大小。*问题分析与算法设计人工方式下比较分数大小最常用的方法是:进行分数的通分后比较分子的大小。可以编程模拟手式方式。*程序说明与注释#includeint zxgb(int a,int b);int main(){int i,j,k,l,m...
  • c语言中怎么样输出分数,分子和分母都有,怎么输出分数?用哪种方法?
  • #include #include #include //using namespace std;class fraction{public:fraction(int x... //以“/”的分数形式输出//定义重载运算符的友元函数friend fraction operator+(fraction &a,fraction &b);fri...
  • C语言实现分数的四则运算

    千次阅读 2018-10-15 20:06:58
    C语言实现分数的四则运算 #include&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt; int main() { int a,b,d,e,f...
  • C语言程序 1-(1/2)+(1/3)-(1/4)+……-(1/100);
  • C语言分数序列前N项和要实现的功能如下完整源代码实现如下 要实现的功能如下 本题要求编写程序,计算序列 2/1+3/2+5/3+8/5+… 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一...
  • c语言实现分数数列求和

    万次阅读 2015-03-19 21:33:38
    例:有一个分数序列 2/1+3/2+5/3+8/5+13/8+… 求出这个数列前20项的和。 先找规律,后一个数的分子是前一个数 的分子与分母的和。由于是分数数列,所以用浮点型定义变量。 下边是代码实现: #include int ...
  • C语言分数转为小数

    2020-10-10 18:32:47
    要求用C语言,好久没写C了,也是复习一下,用了大概有四五个小时,汗; 思路: //TODO #include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> #include <ctype...
  • 原标题:学生作品 | 分数加减法本文来自橄榄树教室 宥发明数学,创造数学像数学家一样思考 数学精彩观念的诞生数学可以越学越容易吗?贞元数学告诉你:当然可以! 【编者按】我叫张大宥,来自橄榄树教室。我的爱好很...
  • printf ("请输入分数"); double a; scanf ("%f",&a); if (a>100) printf ("你这是做梦!\n"); else if (a >= 90 && a <= 100) printf ("优秀\n"); else if (a >= 80 &&...
  • 完整的C程序:#include"stdio.h"/*分数结构*/typedefstruct{intnumerator;/*分子*/intdenominator;/*分母*/}Fraction;intGCD(inta,intb);intLCM(inta,intb);FractionAdd(Fractionf1,Fractionf2);voidmain(){...
  • 输入含有两个分数的表达式求出其结果以分数形式表示 解决思路:将两个分数通分后运算并将其结果约分输出 有错误欢迎指出 C代码如下: #include <stdio.h> int n1,n2;//定义全局变量n1、n2分别存放分子和分母 ...
  • C语言分数化小数

    千次阅读 2019-11-03 10:58:42
    ## 描述 输入正整数a,b,c,输出a/b的小数形式,精确到小数点后c位(注意最后一位的四舍五入问题)。2 <= a,b,c <= 1000。(注意本题小数保留范围)。 ...第1行是一个整数n,表示随后有n组数据。...
  • 运用链表的知识,实现分数统计的一些操作,如:输入成绩,插入成绩,删除学生成绩,求平均成绩,该程序用C语言编写
  • C语言实现 分数化小数(decimal) 输入正整数a ,b ,c ,输出a /b 的小数形式,精确到小数点后c 位。a ,b ≤106 ,c≤100。输入包含多组数据,结束标记为a =b =c =0。 样例输入: 1 6 4 0 0 0 样例输出: Case...
  • 就是这位同学的分数。你的工作就是帮乐乐寻找一种方案,使得班级总分数最大。 输入 第一行只有一个整数n 第二行共有n个不超过10000的正整数,中间有一个空格隔开。 输出 只有一行且只有一个整数,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,053
精华内容 11,221
关键字:

c语言中分数

c语言 订阅