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.pswp.cn/news/275625.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/275625.shtml
英文地址,請注明出處:http://en.pswp.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…