C語言程序設(shè)計(jì):第3章 簡單程序設(shè)計(jì)_第1頁
C語言程序設(shè)計(jì):第3章 簡單程序設(shè)計(jì)_第2頁
C語言程序設(shè)計(jì):第3章 簡單程序設(shè)計(jì)_第3頁
C語言程序設(shè)計(jì):第3章 簡單程序設(shè)計(jì)_第4頁
C語言程序設(shè)計(jì):第3章 簡單程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第3章

簡單程序設(shè)計(jì)

本章要點(diǎn)l

結(jié)構(gòu)化程序的三種流程結(jié)構(gòu),C語句的分類。l

字符輸入輸出函數(shù)getchar、putchar的使用方法。l

格式輸入輸出函數(shù)的使用方法,常見的格式說明符的含義及使用方法。l

順序結(jié)構(gòu)程序設(shè)計(jì)方法。本章難點(diǎn)格式說明符的含義及使用。

3.1流程結(jié)構(gòu)和語句

3.2標(biāo)準(zhǔn)輸入輸出函數(shù)3.3簡單程序設(shè)計(jì)舉例3.1流程結(jié)構(gòu)和語句3.1.1三種流程結(jié)構(gòu)3.1.2C的語句概述3.1.1三種流程結(jié)構(gòu)順序結(jié)構(gòu)N-S結(jié)構(gòu)圖流程圖ABAB選擇結(jié)構(gòu)YNABP成立?PTFAB循環(huán)結(jié)構(gòu)NYP成立?A當(dāng)P成立時

A直到型循環(huán)

A當(dāng)P成立時YNAP成立?當(dāng)型循環(huán)N-S結(jié)構(gòu)圖流程圖3.1.2C的語句概述

C語言程序最基本的組成元素是一條條的C語句。按其編譯后是否產(chǎn)生目標(biāo)代碼,C語言的語句可分為:數(shù)據(jù)定義語句(說明語句):定義數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)初值,指示編譯器分配存儲單元。如變量定義語句。外部說明必須放在一個源程序文件中所有函數(shù)定義的外面局部說明必須放在執(zhí)行語句的前面

可執(zhí)行語句:編譯后產(chǎn)生若干機(jī)器指令,實(shí)現(xiàn)對數(shù)據(jù)的處理和對程序流程的控制。

常用的程序結(jié)構(gòu)為:常量說明類型說明變量說明/*外部說明*/返回類型函數(shù)名(參數(shù)表){

變量說明/*局部說明*/

可執(zhí)行語句}C語言的可執(zhí)行語句分為5類:表達(dá)式語句、函數(shù)調(diào)用語句、復(fù)合語句、空語句、控制語句。

表達(dá)式后面加一個分號,構(gòu)成表達(dá)式語句x=3;y=y+5;x=a-b&&c||d;printf("x=%d,y=%d\n",x,y);sort(a,10);

表達(dá)式語句能夠獨(dú)立出現(xiàn)在程序中,而表達(dá)式則不能獨(dú)立出現(xiàn)。1.表達(dá)式語句

注意:

分號是語句必不可少的一部分。C的說明語句也必須以分號結(jié)束。2.函數(shù)調(diào)用語句由函數(shù)名、實(shí)際參數(shù)加上分號“;”組成。其一般形式為:函數(shù)名(實(shí)際參數(shù)表);執(zhí)行函數(shù)調(diào)用語句就是調(diào)用被調(diào)用函數(shù)體并把實(shí)際參數(shù)賦予函數(shù)定義中的形式參數(shù),然后執(zhí)行被調(diào)用函數(shù)體中的語句,求取函數(shù)值。3.復(fù)合語句

用一對花括號“{}”括起來的若干條語句。

花括號中可以是說明語句、表達(dá)式語句、控制語句,也可以是復(fù)合語句。右括號“}”后不必加分號。例如:⑴if(a>b){max=a;min=b;}

⑵for(n=1;n<10;n++)

{p=n+p;if(p>=100)

{

printf(“%d\n”,p);break;

}

}

復(fù)合語句中如果有說明性語句,應(yīng)該寫在可執(zhí)行語句的前面。例如:

main(){inta,b;a=b=100;{floatc=10.23;

printf("%f\n",c);}

printf("%d%d\n",a,b);}要特別注意:花括號的配對花括號的位置4.空語句單獨(dú)的一個分號“;”構(gòu)成一個空語句,空語句是什么也不執(zhí)行的語句。例如:

;(空語句,是最簡單的C語句)

while(getchar()!=‘\n’)

該語句的功能是,只要從鍵盤輸入的字符不是回車就重新輸入。循環(huán)體為空。5.控制語句選擇分支控制語句

if()…else…

switch(){…} 循環(huán)控制語句

for()…

while()…do…while()其他控制語句

break、continue、gotoreturn3.2標(biāo)準(zhǔn)輸入輸出函數(shù)C語言的輸入和輸出操作是通過調(diào)用C標(biāo)準(zhǔn)函數(shù)庫中的函數(shù)來實(shí)現(xiàn)的。

標(biāo)準(zhǔn)函數(shù)庫是由C編譯程序提供的、以編譯后的目標(biāo)代碼形式存儲的函數(shù)的集合。用戶程序可根據(jù)需要按規(guī)定的格式調(diào)用其中的函數(shù)來完成相應(yīng)的功能。標(biāo)準(zhǔn)輸入輸出函數(shù)默認(rèn)的標(biāo)準(zhǔn)輸入設(shè)備通常為鍵盤,默認(rèn)的標(biāo)準(zhǔn)輸出設(shè)備通常為顯示器。由于這些函數(shù)都是C語言提供的“標(biāo)準(zhǔn)I/O庫”函數(shù),其具體函數(shù)定義均在頭文件“stdio.h”中,因此在使用這些函數(shù)之前應(yīng)該使用預(yù)編譯命令#include<stdio.h>

將這些庫函數(shù)包含到C程序中。C語言中從標(biāo)準(zhǔn)輸入和輸出設(shè)備中進(jìn)行讀(寫)的四個標(biāo)準(zhǔn)函數(shù)是:字符輸出函數(shù)putchar字符輸入函數(shù)getchar格式輸出函數(shù)printf格式輸入函數(shù)scanf3.2.1字符輸入和輸出函數(shù)3.2.2格式輸出函數(shù)printf3.2.3格式輸入函數(shù)scanf3.2.1字符輸入和輸出函數(shù)

1字符輸出函數(shù):函數(shù)調(diào)用的一般形式:

putchar(ch)功能:在標(biāo)準(zhǔn)輸出設(shè)備(即顯示器屏幕)上輸出一個字符。ch可以是char、short或int類型的表達(dá)式,其值是要被輸出字符的字符碼。返回值是被輸出的字符。例如:

putchar('b'); putchar('\101');#include"stdio.h"

main(){charc1,c2;c1='a';c2='b';putchar(c1);putchar(c2);putchar('\n');putchar(c1-32);putchar(c2-32);

putchar('\n');}也可改為:c1=97;c2=98;輸出結(jié)果:abAB例3.1#include“stdio”voidmain(){ charc1,c2,c3; c1=‘T’; c2=‘o’; c3=‘m’; putchar(c1); putchar(c2); putchar(c3);}輸出結(jié)果:Tom例3.2#include“stdio”voidmain(){ charc1,c2,c3; c1=‘T’;c2=‘o’;c3=‘m’; putchar(c1); putchar(‘\n’); putchar(c2); putchar(‘\n’); putchar(c3); putchar(‘\n’);}輸出結(jié)果:T o m也可改為:c1=84;c2=111;c3=109;說明:若有:inti=7;下面四個語句是等價(jià)的,同為輸出一個響鈴字符:putchar(i);putchar(7);putchar(‘\07’);putchar(‘\a’);下面三個語句分別輸出字符a,3和換行putchar(‘a(chǎn)’);putchar(‘3’);putchar(‘\n’);

注:putchar(3)輸出是?而不是整數(shù)3。putchar(((c=getchar())>=’a’&&c<=’z’)?c-‘a(chǎn)’+’A’:c);

該語句先輸入一個字符存入變量c,如果c是小寫字母則將其轉(zhuǎn)換成大寫字母后輸出,否則直接輸出原字符。2字符輸入函數(shù)函數(shù)調(diào)用的一般形式

getchar()功能:從標(biāo)準(zhǔn)輸入設(shè)備(即鍵盤)上讀取一個字符。返回值(即函數(shù)值)是所讀取字符的字符碼,類型為由unsignedchar轉(zhuǎn)換的int。例如:c=getchar();putchar(getchar());printf("%c\n",getchar());【例】#include"stdio.h"voidmain(){charch;

ch=getchar();

printf("%c%d\n",ch,ch);

printf("%c%d\n\n",ch-32,ch-32);}程序運(yùn)行時輸入:m

并按回車鍵后輸出結(jié)果是:m109M77如果輸入多個字符,getchar()只能接收第一個getchar函數(shù)需要交互輸入,接收到輸入字符之后才繼續(xù)執(zhí)行程序。連續(xù)使用getchar函數(shù)時,要注意字符的輸入形式,例如執(zhí)行如下程序段:charch1,ch2;ch1=getchar();ch2=getchar();必須連續(xù)輸入兩個字符,中間不能有其他字符。如果有空格,空格也會被作為輸入字符接收getchar和putchar函數(shù)用于輸入和輸出單個字符,輸入和輸出過程中不進(jìn)行格式上的任何轉(zhuǎn)換。printf和scanf函數(shù)在數(shù)據(jù)的輸入和輸出過程中能夠?qū)⒂?jì)算機(jī)內(nèi)部形式的數(shù)據(jù)和輸入輸出任務(wù)上的數(shù)據(jù)相互轉(zhuǎn)換,稱為格式輸出和格式輸入。3.2.2格式輸出函數(shù)printf

函數(shù)調(diào)用的一般形式

printf(格式控制,參數(shù)2,…,參數(shù)n)參數(shù)2,…,參數(shù)n可以是任何基本類型的表達(dá)式,功能:按格式控制所指定的格式,在標(biāo)準(zhǔn)輸出設(shè)備上輸出參數(shù)2、…、參數(shù)n的值。函數(shù)的返回值是實(shí)際輸出字符的數(shù)目。例如:

inta=123,b=100;

printf("%d%d%d\n",a,b,a+b);

printf("c=%d+%d=%d\n",a,b,a+b);調(diào)用printf函數(shù)時至少要給出第一個參數(shù),即格式說明符。用雙引號括起的字符串,用于指定輸出數(shù)據(jù)的類型、格式、個數(shù)包括:普通字符和格式說明符照原樣輸出

printf("c=%d+%d=%d\n",a,b,a+b);格式說明符:指定輸出3個十進(jìn)制整型數(shù),分別為變量a、b、a+b的值格式說明符用于說明數(shù)據(jù)輸出格式,其形式為:%轉(zhuǎn)換字符一個格式說明符以%開頭。每個格式說明符對應(yīng)于一個輸出參數(shù),該參數(shù)被轉(zhuǎn)換成由轉(zhuǎn)換說明規(guī)定的數(shù)據(jù)格式后輸出。普通字符通常用作輸出提示信息,它可以與轉(zhuǎn)換說明交替出現(xiàn)。輸出格式說明符整型數(shù)據(jù)

%d以有符號十進(jìn)制形式輸出整型數(shù)%ld輸出十進(jìn)制長整型數(shù)據(jù)。在VC6.0中與%d相同%u(%lu)以無符號十進(jìn)制形式輸出整型數(shù)(無符號十進(jìn)制長整型數(shù)據(jù))在VC6.0中二者作用相同%o以無符號八進(jìn)制形式輸出整型數(shù)%x以無符號十六進(jìn)制形式輸出整型數(shù)例實(shí)型數(shù)據(jù)

%f以十進(jìn)制小數(shù)形式輸出單、雙精度實(shí)型數(shù)%e以指數(shù)形式輸出單、雙精度實(shí)型數(shù)例%g以%f或%e中寬度最小的形式輸出實(shí)型數(shù),且不輸出無意義的零例字符型數(shù)據(jù)

%c輸出一個字符%s按實(shí)際寬度輸出一個字符串其他

%%輸出字符%本身例例:printf(“%d,%d”,a,b);longinta=1234567;printf(“%ld”,a);#include“stdio.h” voidmain() { unsignedintx=4294967295;

inty=-2;

printf(“x=%d,%u\n”,x,x);

printf(“y=%d,%u\n”,y,y);}x、y的內(nèi)存分配情況輸出結(jié)果:

x=-1,

4294967295y=-2,4294967294

1111

11

111111

11

111111

11

111111

11

111111

11

111111

11

111111

11

111111

1110intx=-1;printf(“%d,%o,%x\n”,x,x,x);-1的內(nèi)存分配情況1111

11

111111

11

111111

11

111111

11

11輸出結(jié)果:

-1,

37777777777,ffffffff例3.4#include“stdio.h”voidmain(){ doublex=3.1415; floaty=15.725;

printf(“x=%f,y=%f\n”,x,y);}vc6.0和TC3.0都默認(rèn)輸出6位小數(shù),不夠時末尾補(bǔ)零。若以指數(shù)形式輸出,則輸出語句改為:

printf(“x=%e,y=%e\n”,x,y);輸出結(jié)果:

x=3.141500,

y=15.725000輸出結(jié)果:

x=3.141500e+000,

y=1.572500e+001例:#include“stdio.h”voidmain(){ doublepi=3.1415;

printf(“%f,%e,%g”,pi,pi,pi);}輸出結(jié)果:

3.141500,3.141500e+000,

3.1415例:charc;c=‘s’;printf(“%c,%s,%%”,c,”Goodmorning!”);輸出結(jié)果:

s,Goodmorning!,%域?qū)捲?和格式說明符之間可以加入域?qū)捳f明,用于指定數(shù)據(jù)輸出時的對齊方向、輸出數(shù)據(jù)的域?qū)挾?、小?shù)部分的位數(shù)等要求。:%[域?qū)抅格式說明符printf域?qū)捳f明字符

域?qū)捳f明符號意義-(減號)以左對齊方式輸出(默認(rèn)右對齊)+以右對齊方式輸出,輸出正值時前面加符號+空格輸出的第一個字符不是符號時,要輸出一個空格作參照0(零)數(shù)據(jù)不足最小輸出寬度時,左補(bǔ)零#對于o格式輸出前導(dǎo)0,對于x或X格式要輸出0x或0X前綴,對于g或G格式不刪除尾部零m(正整數(shù))域?qū)?,指出輸出?shù)據(jù)的最小寬度。如果實(shí)際寬度>m,則按實(shí)際寬度;如果實(shí)際寬度<m,則左邊(左對齊時為右邊)補(bǔ)上空格或零(當(dāng)有域?qū)捳f明字符0時).(小數(shù)點(diǎn))分隔域?qū)捙c精度。小數(shù)點(diǎn)前面可以沒有域?qū)捳f明符。n(正整數(shù))指出輸出數(shù)據(jù)的精度。對于e、f格式為小數(shù)部分的位數(shù),對于g格式為有效字的個數(shù),對于整數(shù)為至少應(yīng)輸出的數(shù)字的個數(shù)(添加前導(dǎo)0來滿足所需寬度)例:設(shè)有整數(shù)x=18,y=-1:

printf(“%-5d,%05d,%+5d,%4d\n”,x,x,x,y); printf(“%15o,%-10x\n”,y,y);輸出結(jié)果:

18□□□,00018,+18,

□□-1

□□37777777777,ffffffff

□□

例3.5#include“stdio.h”voidmain(){ doublepi=3.1415;

printf(“%f,%6.2f,%.2f,%-6.2f\n”,pi,pi,pi,pi);}輸出結(jié)果:

3.141500,□□3.14,3.14,3.14□□

charc; c=‘s’; Printf(“%c,%3c”,c,c);輸出結(jié)果:

s,□□s

例3.6#include“stdio”voidmain(){printf(“%s,%3s,%8s,%-8s,%8.3s”,”Hello”,”Hello”,”Hello”,”Hello”,”Hello”);}輸出結(jié)果:

Hello,Hello,□□□Hello,Hello

□□□,□□□□□Hel

例3.7#include"stdio.h"voidmain(){

int

a,b; floatx,y,s; a=12;b=-34; x=3.1;y=6.3;s=x*x-y*y;

printf(“a=%d,b=%d\n",a,b);

printf(“x=%6.2f,y=%-6.2f,s=%.2f\n",x,y,s);}輸出結(jié)果:

a=12,b=-34x=3.10,y=6.30,s=-30.08例3.8#include"stdio.h"voidmain(){

intx=83; chary=‘S’;

printf(“x=%d,%o,%x,%c\n",x,x,x,x);

printf(“y=%d,%o,%x,%c\n",y,y,y,y);

printf(“x=%f%%”,1.0/3);}輸出結(jié)果:

x=83,123,53,Sy=83,123,53,S

0.333333%例1整型數(shù)據(jù)的輸出voidmain(){inta=11,b=22;

intm=-1;longn=123456789;

printf("%d%d\n",a,b);

printf("a=%d,b=%d\n",a,b);

printf("m:%d,%o,%x,%u\n",m,m,m,m);

printf("n=%d\n",n);

printf("n=%ld\n",n);}程序輸出:1122a=11,b=22m:-1,177777,ffff,65535n=-13035n=123456789例2實(shí)型數(shù)據(jù)的輸出voidmain(){floatx=1234.56,y=1.23456789;doublez=1234567.123456789;

printf("x=%f,y=%f\n",x,y);

printf("z=%f\n",z);

printf("z=%e\n",z);

printf("z=%g\n",z);

printf("z=%18.8f\n",z);

printf("x=%10.3f\n",x);

printf("x=%-10.3f\n",x);

printf("x=%4.3f\n",x);}程序輸出:x=1234.560059,y=1.234568z=1234567.123457z=1.23457e+06z=1.23457e+06z=1234567.12345679x=1234.560x=1234.560x=1234.560例3字符型數(shù)據(jù)的輸出voidmain(){intm=97;charch='B';

printf("m:%d%c\n",m,m);

printf("ch:%d%c\n",ch,ch);

printf("%s\n","student");printf("%10s\n","student");printf("%-10s\n","student");printf("%10.3s\n","student");printf("%.3s\n\n","student");}程序輸出:m:97ach:66Bstudentstudentstudent

stustu注意:printf函數(shù)格式控制中的格式說明符與輸出參數(shù)的個數(shù)、次序和類型必須一一對應(yīng)。格式說明符的%和后面的描述符之間不能有空格。除%X、%E、%G外類型描述符必須是小寫字母。長整型數(shù)應(yīng)該用%ld(或%lo、%lx、%lu)格式輸出,否則會出現(xiàn)輸出錯誤。數(shù)值范圍在0~255之間的整數(shù)也可以用字符形式輸出。反之,一個字符型數(shù)據(jù)也可以用整數(shù)形式輸出。printf函數(shù)的參數(shù)可以是常量、變量或表達(dá)式。在計(jì)算各參數(shù)值時,C語言采用從右至左的順序求值。printf中參數(shù)右結(jié)合,如設(shè)inti=1;則:

printf(“%d,%d,%d”,++i,++i,++i); 輸出結(jié)果為4,3,2

printf(“%d,%d,%d”,i++,i++,i++); 輸出結(jié)果為3,2,1

3.2.3格式輸入函數(shù)scanf

函數(shù)調(diào)用的一般形式scanf(格式控制,地址參數(shù)2…,地址參數(shù)n);功能:按格式控制指定的格式,從標(biāo)準(zhǔn)輸入設(shè)備(即鍵盤)輸入數(shù)據(jù),并依次存放到對應(yīng)地址參數(shù)指定的變量中(即將輸入值賦給變量)。返回被轉(zhuǎn)換并賦值的數(shù)據(jù)項(xiàng)的數(shù)目。

例如:scanf("%d%f",&a,&f);scanf("a=%d,b=%d",&a,&b);用雙引號括起的字符串,用于指定輸入數(shù)據(jù)的類型、格式、個數(shù)以及輸入的形式,包括:普通字符和格式說明符照原樣輸入

scanf("a=%d,b=%d",&a,&b);格式說明符:指定輸入2個十進(jìn)制整型數(shù)賦給變量a和b輸入格式說明符整型數(shù)據(jù)

%d輸入十進(jìn)制整型數(shù)%u輸入無符號的十進(jìn)制整型數(shù)%o輸入八進(jìn)制整型數(shù)%x輸入十六進(jìn)制整型數(shù)實(shí)型數(shù)據(jù)

%f輸入小數(shù)形式的單精度實(shí)型數(shù)%e輸入指數(shù)形式的單精度實(shí)型數(shù)字符型數(shù)據(jù)

%c輸入單個字符%s輸入一個字符串在%和格式符之間可以使用附加說明符附加格式說明符l與d、o、x、u結(jié)合輸入長整型數(shù)與f、e結(jié)合輸入double型數(shù)h與d、o、x、u結(jié)合輸入短整型數(shù)m指定數(shù)據(jù)輸入的寬度(即域?qū)挘?忽略讀入的數(shù)據(jù)(即不將讀入數(shù)據(jù)賦給相應(yīng)變量)例如:%mf——輸入m位數(shù)(域?qū)挘?*d——忽略輸入的一個整型數(shù)對float和double型指整數(shù)位數(shù)+小數(shù)點(diǎn)+小數(shù)位數(shù)例如:scanf("%d%d%d",&a,&b,&c);輸入3個整型十進(jìn)制數(shù),以空白符(空格、tab鍵或回車鍵)分隔scanf("%d,%o,%f",&a,&b,&x);輸入3個數(shù),以“,”分隔scanf("a=%d,b=%d",&a,&b);輸入的形式是:a=32,b=28(普通字符要照原樣輸入)int

i,j; scanf(“%3d%d”,&i,&j);

輸入12345678,則整數(shù)123被賦給i,4被賦給j。shorti; longj;

doublex;

scanf(%hd%ld”,&i,&j);

scanf(“%lf”,&x);使用scanf函數(shù)應(yīng)注意:輸入數(shù)據(jù)個數(shù)、次序和類型必須與格式說明符一一對應(yīng)。地址參數(shù)形式:&變量名(除數(shù)組或指針變量)格式控制中有普通字符時,必須照原樣輸入。格式控制中無普通字符時,輸入的數(shù)值型數(shù)據(jù)之間、字符串之間用空白符分隔,字符型數(shù)據(jù)不必分隔。double型數(shù)據(jù)輸入時,必須用%lf或%le格式。實(shí)型數(shù)輸入時域?qū)挷荒苡胢.n形式的附加說明。當(dāng)整型或字符型格式說明符中有寬度說明時,按寬度說明截取數(shù)據(jù)。為了減少不必要的輸入量,除了逗號、分號、空格符以外,格式控制中盡量不要出現(xiàn)普通字符,也不要使用‘\n’

、‘\t’

等轉(zhuǎn)義字符。scanf("%c%c%c",&ch1,&ch2,&ch3);要輸入:abc不能輸入:abc注意數(shù)值型數(shù)據(jù)與char型數(shù)據(jù)的混合輸入例:例如:scanf("%d%d",&m,&n);scanf("%c",&ch);錯誤輸入:3228a

正確輸入:3228a

當(dāng)下一次調(diào)用scanf時,從上一次scanf調(diào)用已被讀取的最后一個字符的后面那一個字符開始讀取。例1. inti,j;floatx,y;

scanf(“%d%d”,&i,&j,&x);

scanf(“%f”,&y);執(zhí)行時輸入123456.789執(zhí)行第一個scanf調(diào)用時i被賦值為12,j為34,x未被賦值。Scanf返回值為2;56.7未被讀取。執(zhí)行第2個scanf時,將56.7賦予y,89多余,scanf返回值為1。轉(zhuǎn)換說明應(yīng)與輸入?yún)?shù)所指變量的類型一致,否則,輸入數(shù)據(jù)不是所需要的結(jié)果;轉(zhuǎn)換說明項(xiàng)個數(shù)也應(yīng)與輸入?yún)?shù)個數(shù)相同,如果轉(zhuǎn)換說明項(xiàng)個數(shù)少于輸入?yún)?shù)個數(shù),右邊多出的輸入?yún)?shù)所指變量將不被賦值,反之,數(shù)據(jù)不存放。例2.int

i,j;

scanf(“%d%d”,&i,&j);執(zhí)行時輸入12a則i為12,j未被賦值,scanf返回值為1。如果%和格式說明符之間加了*,則輸入數(shù)據(jù)被跳過,不賦值。 例如:inti=0,j=0,k=0;

scanf(“%d%*d%d”,&i,&j,&k);

執(zhí)行時輸入:102030

執(zhí)行結(jié)果為:i=10,j=30,k依然保留原來的0;其中第2個數(shù)據(jù)20被跳過不賦予任何變量。在使用“%”輸入字符時,空格和轉(zhuǎn)義字符都作為有效字符輸入。 例如:

charch1,ch2,ch3; scanf(“%c%c%c”,&ch1,&ch2,&ch3);

若輸入:B□O□Y↙

執(zhí)行結(jié)果為:ch1=B,ch2=□,ch3=O例3.9#include"stdio.h"voidmain(){

int

x,y,z;

scanf(“%d%d”,&x,&y); z=x*x+y*y;

printf(“z=%d\n",z);}程序運(yùn)行時:

34(輸入x、y的值)z=25(輸出z的值)例3.10#include"stdio.h“#include“math.h”voidmain(){ doublea,b,c;

printf(“input

a,b:”);

scanf(“%lf,%lf”,&a,&b);c=sqrt(a*a

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論