C语言编程学习:浮点数类型

2024-04-2609:18:21编程语言入门到精通Comments483 views字数 1707阅读模式

浮点数类型

浮点数类型用float表示,占用4个字节的内存空间,占位符是%f。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

无符号浮点数用unsigned float表示,占用4个字节的内存空间,占位符是%lf。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

浮点数的字面量是在小数后面加小写的f或者大写的f,比如3.33f或者3.33F。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

实现加法

#include <stdio.h>

int main(int argc, char **argv){
  float a;
  float b;
  float c;

  // 赋值
  a = 11.11;
  b = 22.22;
  c = a + b;

  // 输出
  printf("a = %f.\n", c);

  return 0;
}

练习

让用户输入圆的半径,计算并输出圆的面积和周长。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

示例代码:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

#include <stdio.h>

int main(){
  printf("请输入圆的半径:");
  float r;
  float pi = 3.1415;
  scanf("%f", &r);

  printf("您输入的圆的半径是:%f\n", r);
  printf("圆的周长是:%f\n", 2*pi*r);
  printf("圆的面积是:%f\n", pi*r*r);

  return 0;
}

输出:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

请输入圆的半径:33
您输入的圆的半径是:33.000000
圆的周长是:207.339005
圆的面积是:3421.093506

双精度浮点数类型

双精度浮点数类型用double表示,占用8个字节的内存空间,占位符是%lg。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

双精度浮点数类型虽然占用的空间更大,但是精度更高,能够表示的数也更大,是用来存储小数类型更推荐的一种数据类型。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

示例:让用户输入圆的半径,计算并输出圆的面积和周长。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

#include <stdio.h>

int main(){
  printf("请输入圆的半径:");
  double r;
  double pi = 3.1415;
  scanf("%lg", &r);

  printf("您输入的圆的半径是:%lg\n", r);
  printf("圆的周长是:%lg\n", 2*pi*r);
  printf("圆的面积是:%lg\n", pi*r*r);

  return 0;
}

输出:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

请输入圆的半径:33
您输入的圆的半径是:33
圆的周长是:207.339
圆的面积是:3421.09

练习

假如你要去购买卫生纸,输入卫生纸的数量和单价,计算总金额,输出到屏幕上。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

示例代码:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

#include <stdio.h>

int main(){
  printf("请输入单价:");
  double price;
  scanf("%lg", &price);

  printf("请输入购买数量:");
  int num;
  scanf("%d", &num);

  double total = price * num;
  printf("卫生纸的单价是%lg元,您购买的数量是%d包,您总共需要支付%lg元。\n", price, num, total);

  return 0;
}

输出结果:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

请输入单价:5
请输入购买数量:20
卫生纸的单价是5元,您购买的数量是20包,您总共需要支付100元。

练习

让用户输入两个数a和b,输出这两个数。然后交换这两个数的变量的值,再输出。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

比如a=3,b=4,交换以后a=4,b=3。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

示例代码:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

#include <stdio.h>

int main(){
  printf("请输入第一个数:");
  double a;
  scanf("%lg", &a);

  printf("请输入第一个数:");
  double b;
  scanf("%lg", &b);

  printf("a = %lg \t b = %lg \n", a, b);

  // 交换
  double temp = a;
  a = b;
  b = temp;
  printf("a = %lg \t b = %lg \n", a, b);

  return 0;
}

输出:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html

请输入第一个数:11
请输入第一个数:22
a = 11   b = 22 
a = 22   b = 11
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/63369.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ymba/63369.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定