我们先不说变量怎么读入,我们先说说读入是什么?为什么要读入?

先来看一个例子,我现在需要计算两个整数的乘积。先看只用前面学过的内容的实现。

#include<stdio.h>
int main(void)
{
int a,b;
a=;
b=;
printf("%d\n",a*b);
return ;
}

结果会输出2432。那么每次你只需要修改a和b的赋值然后再运行就可以计算两个数的乘积了。

但是,程序是给用户使用的,而不是程序员,所以你不可能让每个用户的电脑上装个DEVC然后修改编译运行,但是又要实现这个功能,那么变量的读入就很自然的出现了。那就是scanf函数。

scanf读入整型变量的用法

scanf("%d",&name);

这里特别注意&,这是与printf的一个不同之处,具体为什么这样写还要涉及指针的内容,读者暂时可以记住以后再理解。

其实这句话的意思就是相当于

name=屏幕上输入的那个数;

只不过不这么写,而是用scanf函数就是了。(其实有些语言就是类似这么写的,比如python、java……)

所以上面的程序就是写成这样。

#include<stdio.h>
int main(void)
{
int a,b;
scanf("%d%d",&a,&b);
printf("%d\n",a*b);
return ;
}

这个功能就实现了。注意从屏幕输入的时候两个数之间的间隔可以是若干个空格也可以是回车,但不要有别的符号,程序会自动找到你输入的那两个数,第一个给a第二个给b。

变量输入很重要的意义就在于实现了程序与用户的交互。这样使得程序开发出来之后能够具有一定的通用性,解决一类问题。不同的输入可以有不同的输出。

PS:补充的一点是int是有范围的,具体可以查百度,如果你要计算的超过了这个范围,你可以用长整数long类型,它基本和int一样只不过标志是%ld,还有long long类型,标志是%lld。当然,能表示的数范围大了也是有代价的,那就是占的内存多了。一个int四个字节,一个long八个字节,一个long long十六个字节。

整型变量暂时告一段落。

五,整型变量的读入——scanf函数的更多相关文章

  1. C语言第五节scanf函数

    变量的内存分析 字节和地址 为了更好地理解变量在内存中的存储细节,先来认识一下内存中的"字节"和"地址". 内存以"字节为单位" 0x表示的 ...

  2. C语言scanf函数详细解释

    原文链接 函数名: scanf 功 能: 执行格式化输入 用 法: int scanf(char *format[,argument,...]); scanf()函数是通用终端格式化输入函数,它从标准 ...

  3. C语言scanf函数详解

    函数名: scanf  功 能: 运行格式化输入  用 法: int scanf(char *format[,argument,...]); scanf()函数是通用终端格式化输入函数,它从标准输入设 ...

  4. scanf函数详解

    函数名: scanf 功 能: 执行格式化输入 用 法: int scanf(char *format[,argument,...]);scanf()函数是通用终端格式化输入函数,它从标准输入设备(键 ...

  5. C语言scanf函数详细解释(转载)

    原文地址:https://blog.csdn.net/21aspnet/article/details/174326 scanf 函数名: scanf 功 能: 执行格式化输入 用 法: int sc ...

  6. C语言scanf函数转换说明表及其修饰符表

    1. 对于上一篇文章,总结printf()输出,C库也包含了多个输入函数, scanf()是最常用的一个,也是经常与printf()经常一起搭配使用的函数之一. scanf()和printf()类似, ...

  7. C++入门经典-例2.5-使用附加格式说明scanf函数的格式输入

    1:代码如下: // 2.5.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" int main() { long iLong; /*长整型变 ...

  8. 黑马程序员——C语言基础 scanf函数 基本运算 三目运算符

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (一下内容是对黑马苹果入学视频的个人知识点总结) (一)scanf函数 1>  简单介绍一下scanf函数   这是在 ...

  9. scanf()函数用法小结

    scanf()函数是格式化输入函数,它从标准输入设备(键盘) 读取输入的信息. 其调用格式为:      scanf("<格式化字符串>",<地址表>); ...

随机推荐

  1. Android之 学习路线

    第一阶段:Java面向对象编程 1.Java基本数据类型与表达式,分支循环.  2.String和StringBuffer的使用.正则表达式.  3.面向对象的抽象,封装,继承,多态,类与对象,对象初 ...

  2. Deferred的那些知识

    在移动开发中的各种中,我们一定会遇到异步回调的问题,比如: 1:Css3执行动画完毕, 回调 2:Jquery Animate动画的执行完毕, 回调 3:Ajax的执行(并行.串行),回调 等等   ...

  3. 关于python中使用mongodb模块,save和insert的小问题

    今天写python脚本的时候发现这样一个问题: import os , string , datetime ,pymongo; conn = pymongo.Connection("127. ...

  4. TransparentBlt、StretchBlt与BitBlt三个函数的区别

    jackyhwei 发布于 2011-10-13 10:55 点击:1080次  来自:blog.csdn.net/weiqubo BOOL StretchBlt( int x, //指定目的矩形区域 ...

  5. MPI编程的常用接口速查

    获取当前时间 在插入MPI提供的头文件后,可以获得获取时间的函数. double MPI_Wtime(void) 取得当前时间, 计时的精度由 double MPI_Wtick(void) 取得作为对 ...

  6. Squid故障

    1.COSS will not function without large file support (off_t is 4 bytes long. Please reconsider recomp ...

  7. PHP最佳实践(译)

    原文: PHP Best Practices-A short, practical guide for common and confusing PHP tasks 译者:youngsterxyf 最 ...

  8. 我的web前端之路 分享些前端的好书(转)

    WEB前端研发工程师,在国内算是一个朝阳职业,这个领域没有学校的正规教育,大多数人都是靠自己自学成才.本文主要介绍自己从事web开发以来 (从大二至今)看过的书籍和自己的成长过程,目的是给想了解Jav ...

  9. Ecshop文件结构,二次开发

    文件结构,二次开发有用 ECShop 2.6.2 的结构图及各文件相应功能介绍 ECShop2.6.2 upload 的目录 ┣ activity.php 优惠活动列表 ┣ affiche.php 广 ...

  10. [Papers]NSE, $\n u_3$, Lebesgue space, [Pokorny, EJDE, 2003; Zhou, MAA, 2002]

    $$\bex \n u_3\in L^p(0,T;L^q(\bbR^3)),\quad \frac{2}{p}+\frac{3}{q}=\frac{3}{2},\quad 2\leq q\leq \i ...