重学C语言---03数据和C
1、数据的必要性。数据使我们生活中不可缺少的东西,程序也是如次,离不开数据。将文字、图片和单词等输入到算计,将其展现出来或者做一系列操作等。
2、实例程序。
/*rhodium.c--用金属铑衡量体重*/
#include <stdio.h> int main(void)
{
float weight; /*用户体重*/
float value; /*相等重量的金属铑的价值*/
printf("Are you worth your weight in rhodium?\n");
printf("Let's check it out.\n");
printf("Please enter you weight in pounds:");
/*从用户获取输入*/
scanf("%f",&weight);
/*假设铑每盎司779美元*/
/*14.5833把常衡制的英镑转化为金属制的盎司*/
value = 770*weight*14.5833;
printf("Your weight in rhodium is worth $%.2f.\n",value);
printf("Your are easily worth that! Ifrhodium prices dorp,\n");
printf("eat more to maintain your value!\n");
return 0; }
此程序中的新元素:
代码中使用了一种新的变量声明,一个浮点变量(float)类型。,以便处理范围更大的数据,float类型可以处理带有小数点的数字。
- 打印这种新的变量使用了新的说明符---%f。对%f说明符使用了.2修饰词可以控制输出格式,使浮点数显示到小数点后2位
- 使用scanf()函数为程序提供键盘输入。%f指示scanf()从键盘读取一个浮点数,&weight指定将输入赋值于名为weight变量中。
- 本程序最突出的是它的交互性。如图

3、常量与常量数据
在程序使用之前预先设定的并在整个运行过程中没有变化的数据,称为常量。
4、数据:数据类型关键字
除了常量与变量有区别外,各种数据类型间也有不同。


这些类型按其在计算机的存储方式被划分为两个系列,即整数类型和浮点数类型。
注:位、字节和字
术语位字节和字用于描述计算机数据单位或计算机存储单位。这里主要指存储单位
位:最小的存储单位。可以容纳两个值(0或1)之一(或者被称该位位开或闭)。不能再在一个位中存储更多的信息,但计算机中包含及其多的位。它是计算机存储的基本单位。
字节:常用的计算机存储单位。几乎对于所有的机器。1个字节均为8位。由于每个位或者是0或者是1,所以一个8位的字节包含256种可能的0和1组合。
字:对于一种给定的计算机设计,是自然的存储单位。对于8位微机,一个字正好有8位。
5整数
整数(integer)就是没有小数部分的数。整数以二进制数存储,如图

6、浮点数
浮点数(floating-point)与数学中的实数概念相对应,包含了整数之间的那些数。如,2.75,1.16E7等它的存储方案与整数的存储方案不同。浮点数表示法将一个数分为小数部分和指数部分并分别存储。如图

两种类型在应用中的区别
- 整数没有小数部分;浮点数可以有小数部分
- 浮点数可以表示比整数更大范围的数
- 对于一些算术运算(例如两个很大的数相减),使用浮点数会损失更多的精度
- 因为在任何区间内都存在无穷多个数,所有计算机浮点数不能表示区域内所有的值,浮点数往往取实际值的近似。
- 浮点数运算比较慢
7、C数据类型
(1)、int 类型---有符号整数,可以是正、负的或者是0;取值范围以来计算机系统。
声明int 类型的方法
a、int num;int big;
b、int num,big;
初始化变量
int num =1;
int big = 100;
声明语句为变量创建、标定存储空间并未其设定初始值,如图

打印int值--可以使用printf()函数打印int类型的值,%d指定在一行中的什么位置打印整数。%d称为格式说明符,指示printf()应使用什么格式来显示一个值,格式串中的每个%d都必须对应于打印项目列表中的一个int值
8、使用字符:char类型
char类型用于存储字母和标点符号之类的字符,但技术上实现的char缺失整数类型,因为char实际存储的是整数而不是字符。
(1)、声明char类型变量
char response;
char itable,latan;
(2)、字符常量初始化
char grade= 'A';
或 char grade = 65;
(3)转义列表---有些符号不能打印出来,如?、\等

(4)打印字符
printf()函数使用%c说明符表示打印一个字符。字符变量被存储为1字节长的整数值,如果使用通常的%d说明符打印char变量,将得到一个整数

注意:关于其他如float,double等不一一赘述,内容大概相似,多用就好。
重学C语言---03数据和C的更多相关文章
- 重学C语言
重学C语言 #include <stdio.h> int main() { ; ; printf("I am %d year old.\n",age); printf( ...
- 重学C语言---01概述
1.什么是C语言 C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点.计算机语言是从第二次世界大战以后,经历了戏剧性的发展过程.从机器语言到汇编语言和高级语言.C语言是与硬件 ...
- 重学C语言---05运算符、表达式和语句
一.循环简介 实例程序 /*shoes1.c--把一双鞋的尺码变为英寸*/#include <stdio.h>#define ADJUST 7.64#define SCALE 0.325 ...
- 重学C语言---04字符串和格式化输入/输出
1.程序示例 //talkback.c一个能为你提供一些信息的对话框 #include <stdio.h> #include <string.h> //提供strlen函数原型 ...
- 重学C语言---02C语言概述
1.第一个C语言实例 #include<stdio.h> int main(void) /*一个简单的C程序*/ { int num; /*定义一个num的变量*/ num = ; /*为 ...
- 重学C语言之结构体
概念 结构体是一种构造类型,由若干个成员组成,成员可以是基本数据类型,或是另一个结构体 声明结构体 struct 结构体名 { 成员列表 }; 结构体名表示结构的类型名. 声明一个结构体表示创建一种新 ...
- 重学C语言 -- printf,scanf
printf(); 用来显示格式串的内容 注意: 参数不可以换行,否则会出一个警告. 格式串中占位符比表达式数量多 会显示一个无意义值 格式串中占位符比表 ...
- 重学js之JavaScript 面向对象的程序设计(创建对象)
注意: 本文章为 <重学js之JavaScript高级程序设计>系列第五章[JavaScript引用类型]. 关于<重学js之JavaScript高级程序设计>是重新回顾js基 ...
- 重学 Java 设计模式:实战外观模式「基于SpringBoot开发门面模式中间件,统一控制接口白名单场景」
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 你感受到的容易,一定有人为你承担不容易 这句话更像是描述生活的,许许多多的磕磕绊绊总 ...
随机推荐
- Shell的并发
#!/bin/bash ./step1.sh & >中文 i=$! ./step2.sh & >西王 j=$! wait #echo ${i} #echo ${j} ech ...
- OpenShift Redhat 搭建NodeJS环境
https://openshift.redhat.com/ OpenShift 是 redhat 公司推出的一个 PaaS 云计算应用平台,开发者可在上面构建.测试.部署和运行应用程序,它支持 Jav ...
- 为什么研发团队不适合量化KPI的绩效考核?
研发团队(如果不是外包,不是机械性的活动)如果进行的是creative的有创造性的智力活动,那么应该不适合用量化KPI的绩效考核和激励,不应该用工时.bug数(难度大的bug可能多,测试人员可能没有经 ...
- Java类加载顺序
很长时间没看这方面的内容了,写篇文章让自己牢记一下,顺便分享一下. 首先,写代码以便检验结果.测试代码: public class Test { public static void main(Str ...
- JS脚本动态给元素/控件添加事件
最近突然要用到JS脚本动态给元素添加事件.如TextBox的onclick事件.但有的onclick事件原先已经定义了相应代码!这里又不能替代原有方法,而JS脚本里面有个方法可以给控件在原有事件的基础 ...
- @Styles的nameSpace是什么
先参考下面一篇<创建第一个MVC应用程序> http://www.cnblogs.com/insus/p/3358560.html,Insus.NET创建了一个空的MVC应用程序. 在创建 ...
- StreamReader 的ReadLine,Read,ReadToEnd方法
1.ReadLine() 当遇到\n \r 或者是\r\n的时候 此方法返回这前面的字符串,然后内部的指针往后移一位下次从新的地方开始读,直到遇到数据的结尾处返回null,所以经常这样使用 ...
- 在Windows安装运行Kafka
一.安装JAVA JDK 1.下载安装包 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151. ...
- SVN问题之——org.apache.subversion.javahl.ClientException: Attempted to lock an already-locked dir(网摘文)
一.问题描述 今天在 Eclipse 中用 SVN 插件提交代码时遇到 org.apache.subversion.javahl.ClientException: Attempted to lock ...
- 在JAVA中封装JSONUtil工具类及使用
在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...