C语身教程第三章: C说话挨次筹算匹面(1)

C说话挨次筹算

本课先容C说话挨次筹算的根基要领和根基的挨次语句。
从挨次流程的角度来看,挨次可以分为三种根基构造, 即挨次构造、分支构造、循环构造。 这三种根基构造可以组玉成部的种种重年夜挨次。C说话供给了多种语句来完成这些挨次构造。 本章先容这些根基语句及其运用,使读者对C挨次有一个匹面的见地, 为背面各章的进修打下基础。

C挨次的语句

C挨次的实行部分是由语句构成的。 挨次的成效也是由实行语句完成的。
C语句可分为以下五类:
1.表达式语句
2.函数挪用语句
3.控制语句
4.复合语句
5.空语句

1.表达式语句

表达式语句由表达式加上分号“;”构成。其通俗情势为: 表达式; 实行表达式语句便是策画表达式的值。比如: x=y z; 赋值语句y z; 加法运算语句,但策画结果不克不及保管,无实践意义i ; 自增1语句,i值增1

2.函数挪用语句

由函数名、实践参数加上分号“;”构成。其通俗情势为: 函数名(实践参数表); 实行函数语句便是挪用函数体并把实践参数赋予函数定义中的情势参数,然后实行被调函数体中的语句,求取函数值。(在第五章函数中再细致先容)比如printf("C Program");挪用库函数,输入字符串。

3.控制语句

控制语句用于控制挨次的流程, 以完成挨次的种种构造要领。
它们由特定的语句定义符构成。C说话有九种控制语句。 可分红以下三类:
(1) 前提鉴别语句
  if语句,switch语句
(2) 循环实行语句
  do while语句,while语句,for语句
(3) 转向语句
  break语句,goto语句,continue语句,return语句

4.复合语句

把多个语句用括号{}括起来构成的一个语句称复合语句。 在挨次中应把复合语句看成是单条语句,而不是多条语句,比如
{
x=y z;
a=b c;
printf(“%d%d”,x,a);
}
是一条复合语句。复合语句内的各条语句都必须以分号“;”结尾,在括号“}”外不克不及加分号。

5.空语句

只要分号“;”构成的语句称为空语句。 空语句是什么也不实行的语句。在挨次中空语句可用来作空循环体。比如 while(getchar()!='\n'); 本语句的成效是,只需从键盘输入的字符不是回车则重新输入。这里的循环体为空语句。

赋值语句

赋值语句是由赋值表达式再加上分号构成的表达式语句。 其通俗情势为: 变量=表达式; 赋值语句的成效和特点都与赋值表达式相反。 它是挨次中运用最多的语句之一。 在赋值语句的运用中需求仔细以下几点:

1.由于在赋值符“=”右边的表达式也可以又是一个赋值表达式,因而,下述情势 变量=(变量=表达式); 是建立的,从而构成嵌套的景象。其展开之后的通俗情势为: 变量=变量=…=表达式;
比如:
a=b=c=d=e=5;按照赋值运算符的右接合性,因而实践上等效于:
e=5;
d=e;
c=d;
b=c;
a=b;
2.仔细在变量说明');中给变量赋初值和赋值语句的区别。给变量赋初值是变量说明');的一部分,赋初值后的变量与其后的其它同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。
3.在变量说明');中,不许诺继续给多个变量赋初值。 如下述说明');是错误的: int a=b=c=5 必须写为 int a=5,b=5,c=5; 而赋值语句许诺继续赋值
4.仔细赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可以出目前任何许诺表达式出现的中间,而赋值语句则不克不及。
下述语句是正当的: if((x=y 5)>0) z=x; 语句的成效是,若表达式x=y 5年夜于0则z=x。下述语句长短法的: if((x=y 5;)>0) z=x; 由于=y 5;是语句,不克不及出目前表达式中。

数据输入语句

本小节先容的是向标准输入配备显示器输入数据的语句。在C说话中,扫数的数据输入/输入都是由库函数完成的。 因而都是函数语句。本小节先先容printf函数和putchar函数。printf函数printf函数称为花样输入函数,其关头字最末一个字母f即为“花样”(format)之意。其成效是按用户指定的花样, 把指定的数据显示到显示器屏幕上。在背面的例题中我们已屡次运用过这个函数。

一、printf函数挪用的通俗情势

printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在运用 printf 函数之前必须包罗stdio.h文件。printf函数挪用的通俗情势为: printf(“花样控制字符串”,输入表列)其中花样控制字符串用于指定输稀奇式。 花样控制串可由花样字符串和非花样字符串两种构成。花样字符串因此%扫尾的字符串,在%背面跟有种种花样字符,以说明');输入数据的范例、情势、长度、小数位数等。如“%d”显露按十进制整型输入,“%ld”显露按十进制长整型输入,“%c”显露按字符型输入等。背面把专门赐与接洽。

非花样字符串在输入时原样照印,在显示中起提示感化。 输入表列中给出了各个输入项, 要求花样字符串和各输入项在数目和范例上应该逐一对应。
void main()
{
int a=88,b=89;
printf("%d %d\n",a,b);
printf("%d,%d\n",a,b);
printf("%c,%c\n",a,b);
printf("a=%d,b=%d",a,b);
}
a<--8,b<--89

printf("%d %d\n",a,b);
printf("%d,%d\n",a,b);
printf("%c,%c\n",a,b);
printf("a=%d,b=%d",a,b);
本例中四次输入了a,b的值,但由于花样控制串分比方,输入的结果也不相反。第四行的输入语句花样控制串中,两花样串%d 之间加了一个空格(非花样字符),以是输入的a,b值之间有一个空格。第五行的printf语句花样控制串中加入的长短花样字符逗号, 因而输入的a,b值之间加了一个逗号。第六行的花样串要求按字符型输入 a,b值。第七行中为了提示输入结果又增长了非花样字符串。



版权声明: 原创作品,许诺转载,转载时请务必以超链接情势标明文章 原始起因 、作者信息和本声明。否则将究查功令责任。

转载于:https://www.cnblogs.com/zgqjymx/archive/2011/03/07/1975622.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/275625.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

插图 引用 同一行两个插图_插图的目的

插图 引用 同一行两个插图If you’re a designer in tech you’ve likely come across them. Any search for UI or product design on Dribbble will yield at least a few. Amid the sea of pastel blues and pinks, accented neon purples and gamboge yellows, these facel…

php 转码iconv,PHP iconv()函数转字符编码的问题(转)

在php函数库有一个函数&#xff1a;iconv()&#xff0c;iconv函数库能够完成各种字符集间的转换&#xff0c;是php编程中不可缺少的基础函数库。最近在做一个小偷程序&#xff0c;需要用到iconv函数把抓取来过的utf-8编码的页面转成gb2312&#xff0c;发现只有用iconv函数把抓取…

VSCode 竟然可以无缝调试浏览器了!

大家好&#xff0c;我是若川。今天周末&#xff0c;分享一篇相对比较简单的文章。学习源码系列、面试、年度总结、JS基础系列。2021-07-16 微软发布了一篇博客专门介绍了这个功能&#xff0c;VSCode 牛逼&#xff01;在此之前&#xff0c;你想要在 vscode 内调试 chrome 或者 e…

最少的编码

Knowing how to code HTML email can bring you many opportunities, such as working as a digital designer, collaborating with front end developers, finding freelancing projects.知道如何对HTML电子邮件进行编码可以为您带来许多机会&#xff0c;例如担任数字设计师&a…

Hulu CEO预计网站本年营收将达5亿美元

网易科技讯 3月2日动静&#xff0c;据国外媒体报道&#xff0c;美国在线视频网站Hulu CEO杰森吉拉尔&#xff08;Jason Kilar&#xff09;明天不日发挥分析&#xff0c;Hulu本年告白及订阅营收将达5亿美元&#xff0c;是去年的两倍。吉拉尔周一在由互联网告白局举办的“2011年年…

webRTC——浏览器里的音视频通话

背景 webRTC是Google在2010年收购GIP公司之后获得的一项技术。如下图所示&#xff0c;它提供了音视频的采集、处理(降噪&#xff0c;回声消除等)、编解码、传输等技术。webRTC的目标是实现无需安装任何插件就可以通过浏览器进行P2P的实时音视频通话及文件传输&#xff0c;来看看…

面对 this 指向丢失,尤雨溪在 Vuex 源码中是怎么处理的

1. 前言大家好&#xff0c;我是若川。好久以前我有写过《面试官问系列》&#xff0c;旨在帮助读者提升JS基础知识&#xff0c;包含new、call、apply、this、继承相关知识。其中写了 面试官问&#xff1a;this 指向 文章。在掘金等平台收获了还算不错的反馈。最近有小伙伴看我的…

转:Python: threading.local是全局变量但是它的值却在当前调用它的线程当中

原文地址:http://www.cnblogs.com/fengmk2/archive/2008/06/04/1213958.html 在threading module中&#xff0c;有一个非常特别的类local。一旦在主线程实例化了一个local&#xff0c;它会一直活在主线程中&#xff0c;并且又主线程启动的子线程调用这个local实例时&#xff0c…

matlab的边缘检测方法,常用图像边缘检测方法及Matlab研究

2011 年 2 月 15 日第 34 卷第 4 期 现代电子技术 Modern Electronics Technique Feb. 2011 Vol. 34 No. 4 常用图像边缘检测方法及 Matlab 研究 韦  炜 (西安文理学院 , 陕西 西安   710065) 摘  要 :边缘检测在数字图像处理中有着重要的作用。为了在实际应用中能够选择最佳…

单选按钮步骤流程向导 js_创建令人愉快的按钮的6个步骤

单选按钮步骤流程向导 jsThere is no modern interactive UI without buttons. They are an fundamental part of every digital solution. Learn how to improve the style of your buttons and delight users with perfect style.没有按钮&#xff0c;就没有现代的交互式UI。…

Android 四大组件之 Activity

什么是 Activity&#xff1f; Activity 是 Android 的四大组件之一&#xff0c;是用户操作的可视化界面&#xff0c;它为用户提供了一个完成操作指令的窗口。 当我们创建完 Activity 之后&#xff0c;需要调用 setContentView(view) 方法来完成界面的显示&#xff0c;以此来为用…

axios怎么封装,才能提升效率?

大家好&#xff0c;我是若川。今天分享一篇axios封装的文章。学习源码系列、面试、年度总结、JS基础系列。作为前端开发者&#xff0c;每个项目基本都需要和后台交互&#xff0c;目前比较流行的ajax库就是axios了&#xff0c;当然也有同学选择request插件&#xff0c;这个萝卜白…

图片有花

http://www.56.com/u50/v_NTUwMzE1NDM.html http://www.56.com/u39/v_NTUwMzE2MjA.html http://www.cnblogs.com/coffee_cn/archive/2009/11/30/1613823.html http://www.imagemagick.org/script/binary-releases.php?ImageMagickmm3e9bn5mtos6eiaelh9d4aoe4#windows 转载于:h…

java 代码执行el,专属于java的漏洞——EL表达式注入

前言“FSRC经验分享”系列文章&#xff0c;旨在分享焦点科技信息安全部工作过程中的经验总结&#xff0c;包括但不限于漏洞分析、运营技巧、sdl推行、等保合规、自研工具等等。欢迎各位安全从业者持续关注~0x01EL简介表达式语言(Expression Language 以下简称EL)是以JSTL(JavaS…

护肤产生共鸣_通过以人为本的设计编织共鸣的20个指针

护肤产生共鸣Deep into a project right now, I can’t help but reflect on how I practice empathy in design. Human centered design means empathising with and designing for people, keeping our focus on people throughout. It is not just one stage, it is a minds…

谷歌已推送 Android Q Beta 1

开发四年只会写业务代码&#xff0c;分布式高并发都不会还做程序员&#xff1f; >>> 今日凌晨&#xff0c;谷歌正式推送了 Android Q 的首个 Beta 版本&#xff0c;Pixel 全系列手机可以尝鲜体验这款最新的系统。 据官方博客介绍&#xff0c;Android Q 为用户带来了…

对使用CodeSmith模板生成NHibernate的代码的分析

CodeSmith是我们常用的代码生成工具&#xff0c;其跟据不同的模板生成不同代码的方式能大大加快我们的项目开发&#xff0c;减少重复劳动。NHibernate模板就是其常用模板之一。从这里可以下载到最新的模板文件。现在最新的版本为NHibernate-v1.2.1.2125&#xff0c;可以生成NHi…

若川诚邀你加源码共读群,每周一起学源码

小提醒&#xff1a;若川视野公众号面试、源码等文章合集在菜单栏中间【源码精选】按钮&#xff0c;欢迎点击阅读&#xff0c;也可以星标我的公众号&#xff0c;便于查找。回复pdf&#xff0c;可以获取前端优质书籍。最近我创建了一个源码共读的前端交流群&#xff0c;希望尝试帮…

matlab 规范,matlab-代码-规范

matlab-代码-规范 1. 标识符命名原则 标识符的名字应当直观&#xff0c;其长度应当符合“最小长度&#xff0c;最大信息量”原则。 1) 非矩阵变量&#xff1a; 变量名应该以小写字母开头的大小写混合形式 譬如&#xff1a;shadowFadingTable&#xff0c;servingSector&#xf…

zoom视频会议官网_人性化视频会议的空间(Zoom等)

zoom视频会议官网第二部分&#xff1a;房间的创造力 (Part Two: The Creativity of Rooms) In Part One I shared thoughts on how virtual spaces can often leave little room to embody our most human selves. The lack of a public sphere that parallels our shared publ…