--printf函数在c语言中的普通用法

在c语言中printf函数的作用非常大,用途也非常广泛,它主要具有打印功能。

在调用printf函数是必须给其提供格式串,格式串后面的参数是需要在显示时插入到该串中的值。

其主要的语法格式为:        printf(“格式串”,表达式1,表达式2);在使用该函数时其字数没有限制,显示的值可以是变量,常量,或者更加复杂的表达式。

下面让我们看看如下代码,思考其函数的值

int main()
{
int a,b;
float c;
a = 78;
b=53
c = 0.84f;
printf("%d%d%f",a,b,c);
return 0;
}                                        //结果为a=78, b = 53  c = 0.840000

其中%d%f 为printf函数使用时的转换说明。  %d表示二进制转化为十进制进行整数打印,%f表示打印一个浮点数格式。可以这样理解%是一个占位符用来说明print打印的格式,比如%d指打印整数,%f打印浮点数,%lf 打印双精度浮点型,%s打印字符串。

printf函数也可以直接打印括号中的内容

int main()
{printf("我爱你ll");
return 0;
}//结果为  我爱你ll

pintf也可以打印表达式

int main()
{
int a = 20;
int b = 30;
printf("%d,a+b);
return 0;
}//结果为50

printf函数必须服从格式串

int a = 20;
printf("%f,a);//会报错

这个程序运行不出,开始定义a为整数,%f为浮点型,printf识别错误。

scanf函数的使用

如同printf函数一样,scanf函数也根据特定的格式读取输入,scanf函数提示用户随机输入一个用户想要输入的值。

其使用的语法为

int main()
{
int a = 0;
scanf("%d,&a);return 0;
}

像printf函数一样,scanf函数是由格式串控制的。scnaf函数从左边处理字符串的信息,对于每一个格式说明,scanf函数读入适当项并且必要时跳过空格,遇到不符合的格式时候停止。如果读入时候发现有一项错误,那么scanf 函数会立刻停止。

下面看一串代码,体验scanf函数的运行方法

int main()
{
scanf("%d%f%f",&x,&i,&y);return 0;
}
// 如果用户输入12.3  45.6  789 那么x,i,y,的值为多少

先看代码运行scanf函数时先到%d,scanf明白要读一个整数,读到小数点时候停下来,所以x=12

接着%f读取一个浮点型小数0.3,后面遇到空格不属于小数停下,所以i = 0.3

然后再一次读入%f浮点型小数,先遇到空格scanf函数直接跳过不读入,这一次scanf 分别读入4,5.,6,之后遇到空格不属于浮点数停下,所以 y = 45.6

下面看scanf函数和printf 的实例

1编写一个程序,显示年月日,以下面的格式输出

enter a date (mm/dd/yyyy):2/17/2011

you entered the date 20110217

#include <stdio.h>int main (void)
{int number;float price;int day, month, year;printf ("Enter item number:");scanf ("%d", &number);printf ("Enter unit price:");scanf ("%f", &price);printf ("Enter purchase date (mm/dd/yyyy):");scanf ("%d/%d/%d", &month, &day, &year);printf ("Item\t\tUnit\t\tPurchase\n");printf ("\t\tPrice\t\tDate\n");printf ("%d\t\t$%7.2f\t%.2d/%.2d/%d", number, price, month, day, year);return 0;
}

2,编写一个程序,要求用户随机输入的1到16个数字,每行输入4个,并求出每行,每列,2条对角线的元素之和

#include <stdio.h>int main (void)
{int a[4][4];int i, j;printf ("Enter the numbers from 1 to 16 in any order:\n");for (i=0; i<4; i++){for (j=0; j<4; j++){scanf ("%d", &a[i][j]);}}for (i=0; i<4; i++){for (j=0; j<4; j++){printf ("%2d\t", a[i][j]);}printf ("\n");}int row[4], col[4], dia[4];int sum = 0;// 下面是求行; printf ("Row sums: ");for (i=0; i<4; i++){sum = 0;for (j=0; j<4; j++){sum += a[i][j];}row[i] = sum;}for (i=0; i<4; i++) {printf ("%d ", row[i]);}printf ("\n");// 求列;printf ("Column sums: ");for (j=0; j<4; j++){sum = 0;for (i=0; i<4; i++){sum += a[i][j];}col[j] = sum;}for (i=0; i<4; i++) {printf ("%d ", col[i]);}printf ("\n"); //  对角;printf ("Diagonal sums: ");sum = 0;for (i=0; i<4; i++){sum += a[i][i]; }dia[0] = sum;sum = 0;for (i=0; i<4; i++){sum += a[i][3-i];}dia[1] = sum;for (i=0; i<2; i++) printf ("%d ", dia[i]);return 0;
}

c语言中的printf函数和scanf的区别相关推荐

  1. c语言中的printf函数_C语言中的printf()函数与示例

    c语言中的printf函数 C语言中的printf()函数 (printf() function in C) The printf() function is defined in the <s ...

  2. C语言中的atoi函数的实现

    C语言中有很多的库函数,其实平时没事的时候多去实现一下里面的库函数还是很有用的,下面就来讲一讲C语言中的atoi函数,这个函数的主要功能是将一个字符串转化为一个数字,可能第一眼看上去,你会觉得这是一个 ...

  3. C语言中的sprint函数,求sprintf函数的详解

    公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:求sprintf函数的详解,要附带例,粘贴来的也可以,只 问题详情:还有就是我还想要一些常用的宽度修饰之类的输入或者输出格式:回答: ...

  4. C语言中的sscanf()函数使用详解

    这篇文章主要介绍了C语言中的sscanf()函数使用详解,文中附加了一道相关的ACM题目进行补充巩固,需要的朋友可以参考下 文章引用自:https://www.jb51.net/article/711 ...

  5. c语言里面gets(a)是什么意思,C语言中的gets()函数

    在c语言中读取字符串有多种方法,比如scanf() 配合%s使用,但是这种方法只能获取一个单词,即遇到空格等空字符就会返回.如果要读取一行字符串, 比如:I love MIT 这种情况,scanf() ...

  6. sleep函数的作用c语言,C语言中的sleep函数是什么意思【详细介绍】

    计算机知识:C语言中的Slee函数 Sleep函数简介: 函数名: sleep 功 能: 执行挂起一段时间 用 法: unsigned sleep(unsigned milliseconds); 在V ...

  7. C语言 SLEEP函数不起作用,C语言中的sleep() 函数 sleep函数的具体用法

    导航:网站首页 > C语言中的sleep() 函数 sleep函数的具体用法 C语言中的sleep() 函数 sleep函数的具体用法 相关问题: 匿名网友: 关于sleep()函数在windo ...

  8. c语言自动生成系统时间函数,使用C语言中的time函数获取系统时间

    使用C语言中的time函数获取系统时间 可以通过time()函数来获得计算机系统当前的日历时间(Calendar Time),处理日期时间的函数都是以本函数的返回值为基础进行运算.其原型为: time ...

  9. c语言指数函数除了pow,用c语言写指数函数 C语言中的POW函数怎么使用

    C语言中的POW函数使用: #include #defineACCURACY100 doublefunc1(doublet,intn); doublefunc2(doubleb,intn); doub ...

最新文章

  1. redhat nginx php mysql_redhat7+nginx+mysql+php
  2. xshell添加脚本
  3. thinkphp3.2与phpexcel带图片生成 完美案例
  4. 文件上传 upload-labs 1~20做题记录
  5. hashlib 模块 摘要算法
  6. OCA第4部分中的Java难题
  7. java 返回两个值_Java - Number类
  8. 帝国CMS操作类型一览表
  9. vue使用el组件 在el-tabs中 刷新页面保持不变
  10. 计算机与信息技术研究生,计算机与信息技术学院研究生必读经典文献.doc
  11. 记常见的计算机术语(不停更新)
  12. 正弦波和方波驱动的优缺点
  13. 如何修改电脑的MAC地址(手把手更改)
  14. 直播软件搭建时如何在视频通话中加入美颜处理
  15. vb.net学习日记3.29
  16. 《漫画算法》读书笔记
  17. ubuntu下exiftool安装
  18. 井柏然自己的字体,手写语录合集
  19. Linux技巧之磁盘格式化命令
  20. 安装麦咖啡8.7出现--错误1920

热门文章

  1. 国有银行信息科技岗笔试都考什么?
  2. 16.实时绘制加速技术
  3. Flask框架-介绍
  4. 通过netdrive软件连接tfcenter的webdav服务进行文件管理
  5. FreeSWITCH实现IP分机呼叫外线
  6. python写飞机大战什么水平_飞机大战python
  7. 鲁班编程语言 电子书籍 第1章(转)
  8. 今天分享:配音软件哪个好
  9. 开源软件架构:NoSQL生态系统
  10. U9 自动计划工具操作说明