c語言或語句
❶ c語言中邏輯或的表示方法
c語言中邏輯或用符號「||」表示,在具體程序中的使用:
#include<stdio.h>
voidmain()
{
inta=5;
if(a>2||a<7)//或的使用
printf("a不在2-7之間 ");
}
同時「&&」表示邏輯的與,「!」表示邏輯的非
❷ c語言中語句的意思
C程序的執行部分是由語句組成的。
程序的功能也是由執行語句實現的。
C語句可分為以下五類:
1.表達式語句;表達式語句由表達式加上分號「;」組成。例如:y=0;
2.函數調用語句;由函數名、實際參數加上分號「;」組成。例如:fun(a);
3.控制語句;
4.復合語句;把多個語句用括弧{}括起來組成的一個語句稱復合語句
5.空語句。只有分號「;」組成的語句稱為空語句。
http://ke..com/view/1333149.htm
網路上有詳細的介紹。另:不知道你是想要書面上的回答,還是自己理解,網路上介紹的很全面了。
個人的理解,語句就是你按照一定的C語言的規則,告訴編譯器你要做什麼,編譯器只能按照規定好的規則去理解你的要求,分號就相當於一句話說完了。
❸ c語言輸入語句
getchar()和scanf("%c")的功能都是讀一個字元
區別是getchar()可以讀回車,而scanf("%c")會跳過回車。
所以scanf讀了2個字元1,2分別給了a,b。
然後第一個getchar()讀了回車符給c,讀了3給d.
❹ C語言 條件語句
條件表達示語句
一、if語句
if(表達式) 語句1;
如果表達式的值為非0,則執行語句1,否則跳過語句繼續執行下面的語句。
如果語句1有多於一條語句要執行時, 必須使用{} 把這些語句包括在其中, 此時條件語句形式為:
if(表達式)
{
語句體1,2,3;
}
例如:
if(x>=0) y=x;
if(a||b&&c)
{
z=a+b;
c+=z;
}
if--else語句
除了可以指定在條件為真時執行某些語句外,還可以在條件為假時執行另外一段代碼。在C語句中利用else語句來達到這個目的。
if(表達式) 語句1;
else 語句2;
同樣,當語句1或語句2是多於一個語句時,需要用{}把語句括起來。 例如:
if(x>=0) y=x;
else y=-x;
if--else if--else結構
if(表達式1)
語句1;
else if(表達式2)
語句2;
else if(表達式3)
語句3;
.
else
語句n;
這種結構是從上到下逐個對條件進行判斷,一旦發現條件滿點足就執行與它有關的語句, 並跳過其它剩餘階梯;若沒有一個條件滿足,則執行最後一個else 語句n。最後這個else常起著預設條件的作用。同樣,如果每一個條件中有多於一條語句要執行時,必須使用{}把這些語句包括在其中。
條件語句可以嵌套,這種情況經常碰到,但條件嵌套語句容易出錯,其原因主要是不知道哪個if對應哪個else。
例如:
if(x>20||x<-10)
if(y<=100&&y>x)
printf(Good);
else
printf(Bad);
對於上述情況, Turbo C規定: else語句與最近的一個if語句匹配, 上例中的else與if(y<=100&&y>x)相匹配。為了使else與if(x>20||x<-10)相匹配, 必須用花括弧。如下所示:
if(x>20||x<-10)
{
if(y<=100&&y>x)
printf(Good);
}
else
printf(Bad);
下面舉幾個例子:
1.輸入一個數,如果大於0,輸出plus;如果是負數,輸出negative;如果正好是0,則輸出zero。
main()
{
float num;
scanf(%f,&f);
if(num>0)
printf(plus\n);
else if(num<0)
printf(negative\n);
else
printf(zero\n);
}
先定義兩個變數,然後輸入一個數,然後判斷這個數的范圍,輸出對應的字元串。
2.輸入一個數x,輸出y。其中y是x的絕對值。
main()
{
float x,y;
scanf(%f,&x);
if(x>=0) y=x;
else y=-x;
printf(%f\n,y);
}
Trubo C 2.0把一些常用的功能都寫好了,我們只需要使用就可。例如求絕對值的功能在C的庫裡面就有。看下面的:
#include math.h
main()
{
float x,y;
scanf(%f,&x);
y=fabs(x); /*求x的絕對值,然後賦值給y*/
printf(%f\n,y);
}
這個程序和上面的程序完成的功能是一模一樣的,都是求絕對值。可以看出,用下面這個方法比上面就要好一些。由
於fabs()是一個函數,系統自帶的,所以在使用它的時候,我們必須把它所在的庫文件math.h包含在程序中,即程序最前面一行。類似的還有求開方sqrt(),求指數冪exp()等等,這些與數學方面有關的函數都在math.h裡面。
3.輸入x,輸出y,x和y滿足關系:
x<-5 y=x;
-5<=x<1 y=2*x+5;
1<=x<4 y=x+6;
x>=4 y=3*x-2;
程序如下:
main()
{
float x,y;
scanf(%f,&x);
if(x<-5)
y=x;
else if(-5<=x&&x<1)
y=2*x+5;
else if(1<=x&&x<4)
y=x+6;
else
y=3*x-2;
printf(%f\n,y);
}
這里要說明兩點:
(1).-5<=x&&x<1
不能寫成-5<=x<1;1<=x&&x<4也不能寫成1<=x<4;在C語言中,不能認識連續不等式。
(2).y=2*x+5不能寫成y=2x+5;y=3*x-2也不能寫成y=3x-2;這與我們平時所寫的方法不一樣。
4.輸入三個數x,y,z,然後按從大到小輸出。
main()
{
float x,y,z;
scanf(%f%f%f,&x,&y,&z); if(x>=y&&x>=z) {
printf(%f\t,x);
if(y>=z) printf(%f\t%f\n,y,z); else printf(%f\t%f\n,z,y); }
else if(y>=x&&y>=z) {
printf(%f\t,y);
if(x>=z) printf(%f\t%f\n,x,z); else printf(%f\t%f\n,z,x); }
else
{
printf(%f\t,z);
if(x>=y) printf(%f\t%f\n,x,y); else printf(%f\t%f\n,y,x); }
}
說明:這是一個典型的if語句嵌套結構,如果不使用括弧,那麼if和else的對應關系就亂了。
switch--case語句
在編寫程序時, 經常會碰到按不同情況分轉的多路問題, 這時可用嵌套if -else-if語句來實現, 但if-else-if語句使用不方便, 並且容易出錯。對這種情況, Turbo C提供了一個開關語句。
開關語句格式為:
switch(變數)
{
case 常量1:
語句1或空;
case 常量2:
語句2或空;
.
case 常量n:
語句n或空;
default:
語句n+1或空;
}
執行switch開關語句時,將變數逐個與case後的常量進行比較,若與其
中一個相等,則執行該常量下的語句,若不與任何一個常量相等,則執行default後面的語句。
注意:
1.switch中變數可以是數值,也可以是字元,但必須是整數。
2.可以省略一些case和default。
3.每個case或default後的語句可以是語句體,但不需要使用{}括起來。 例如:
main()
{
intx,y;
scanf(%d,&x);
witch(x)
{
case 1:
y=x+1;
break; /*退出開關語句,遇到break才退出*/
case 4:
y=2*x+1;
break;
default:
y=x--;
break;
printf(%d\n,y);
}
用開關語句編的程序一定可以用if語句做。那麼在什麼情況下需要用switch語句呢?一般在出現比較整的情況下或者能轉化成比較整數的情況下使用。看下面的例子:
例子:一個學生的成績分成五等,超過90分的為'A',80-89的為'B',70-79為'C',60-69為'D',60分以下為'E'。現在輸入一個學生的成績,輸出他的等級。
(1).用if語句
main()
{
float num;
char grade;
scanf(%d,&num);
if(num>=90) grade='A';
else if(num>=80&&num<89) grade='B';
else if(num>=70&&num<79) grade='C';
else if(num>=60&&num<69) grade='D';
else grade='E';
printf(%c,grade);
}
(2).用switch語句
main()
{
intnum;
char grade;
scanf(%d,&num);
num/=10;
switch(num)
{
case 10:
case 9:
grade='A';
break;
case 8:
grade='B';
break;
case 7:
grade='C';
break;
case 6:
grade='D';
break;
default:
grade='E';
break;
}
printf(%c,grade);
}
說明一點,並不是每個case裡面有都語句,有時侯裡面是空的,就好象這一題。switch語句執行的順序是從第一case判斷,如果正確就往下執行,直到break;如果不正確,就執行下一個case。所以在這里,當成績是100分時,執行case 10:然後往下執行,grade='A';break;退出
❺ C語言中的語句有哪幾類
C語言語句分為5類:
1、
表達式語句
2、
函數調用語句
3、
控制語句
4、
復合語句
5、
空語句
現在有C++,C,C#。
c是最起初的語言,然後是C++,C#是最近微軟推出的。
三種語言都有自己的好處。可以這么說現在很多大學里的課程都有C和C++。C#的課還沒有。
java是一種現在十分流行的面對對象語言,而C更多的是面向過程。他們都有自己的長處。要看你選擇那個方向發展而定了。
首先你要明白我們編寫的程序只是程序的一些關鍵部分,真正將代碼編譯為程序是需要很多文件的,打個比方電腦其實並不能直接把printf這個函數直接編譯出來,之所以我們能用是因為在其他文件中已經把這個函數寫好了,而系統能從你的代碼中找到其他文件就是因為預處理語句。通過預處理語句系統可以找到其他文件並把其他文件和你寫的代碼合並成一個文件然後進行編譯,這樣才能產生程序,其他的預處理語句比如#if,#ifndef,#ifdef,#endif,#unde其實都是為了防止一個文件被包含多次設置的。
❻ C語言所有語句格式
循環結構是程序中一種很重要的結構。其特點是, 在給定條件成立時,反復執行某程序段,直到條件不成立為止。 給定的條件稱為循環條件,反復執行的程序段稱為循環體。 C語言提供了多種循環語句,可以組成各種不同形式的循環結構。
while語句
while語句的一般形式為: while(表達式)語句; 其中表達式是循環條件,語句為循環體。
while語句的語義是:計算表達式的值,當值為真(非0)時, 執行循環體語句。其執行過程可用圖3—4表示。 統計從鍵盤輸入一行字元的個數。
#include <stdio.h>
void main(){
int n=0;
printf("input a string:\n");
while(getchar()!='\n') n++;
printf("%d",n);
}
本常式序中的循環條件為getchar()!='\n',其意義是, 只要從鍵盤輸入的字元不是回車就繼續循環。循環體n++完成對輸入字元個數計數。從而程序實現了對輸入一行字元的字元個數計數。
使用while語句應注意以下幾點:
1.while語句中的表達式一般是關系表達或邏輯表達式,只要表達式的值為真(非0)即可繼續循環。
void main(){
int a=0,n;
printf("\n input n: ");
scanf("%d",&n);
while (n--)
printf("%d ",a++*2);
}
本常式序將執行n次循環,每執行一次,n值減1。循環體輸出表達式a++*2的值。該表達式等效於(a*2;a++)
2.循環體如包括有一個以上的語句,則必須用{}括起來, 組成復合語句。
3.應注意循環條件的選擇以避免死循環。
void main(){
int a,n=0;
while(a=5)
printf("%d ",n++);
}
本例中while語句的循環條件為賦值表達式a=5, 因此該表達式的值永遠為真,而循環體中又沒有其它中止循環的手段, 因此該循環將無休止地進行下去,形成死循環。4.允許while語句的循環體又是while語句,從而形成雙重循環。
do-while語句
do-while語句的一般形式為:
do
語句;
while(表達式);
其中語句是循環體,表達式是循環條件。
do-while語句的語義是:
先執行循環體語句一次, 再判別表達式的值,若為真(非0)則繼續循環,否則終止循環。
do-while語句和while語句的區別在於do-while是先執行後判斷,因此do-while至少要執行一次循環體。而while是先判斷後執行,如果條件不滿足,則一次循環體語句也不執行。
while語句和do-while語句一般都可以相互改寫。
void main(){
int a=0,n;
printf("\n input n: ");
scanf("%d",&n);
do printf("%d ",a++*2);
while (--n);
}
在本例中,循環條件改為--n,否則將多執行一次循環。這是由於先執行後判斷而造成的。
對於do-while語句還應注意以下幾點:
1.在if語句,while語句中, 表達式後面都不能加分號, 而在 do-while語句的表達式後面則必須加分號。
2.do-while語句也可以組成多重循環,而且也可以和while語句相互嵌套。
3.在do和while之間的循環體由多個語句組成時,也必須用{}括起來組成一個復合語句。
4.do-while和while語句相互替換時,要注意修改循環控制條件。
❼ C語言條件語句問題
一個表達式的返回值都可以用來判斷真假,除非沒有任何返回值的void型和返回無法判斷真假的結構。當表達式的值不等於0時,它就是「真」,否則就是假。一樣個表達式可以包含其他表達式和運算符,並且基於整個表達式的運算結果可以得到一個真/假的條件值。因此,當一個表達式在程序中被用於檢驗其真/假的值時,就稱為一個條件。
一、if語句
if(表達式) 語句1;
如果表達式的值為非0,則執行語句1,否則跳過語句繼續執行下面的語句。
如果語句1有多於一條語句要執行時, 必須使用{和} 把這些語句包括在其中, 此時條件語句形式為: if(表達式) {
語句體1; }
例如:
if(x>=0) y=x; if(a||b&&c) {
z=a+b; c+=z; }
二、if--else語句
除了可以指定在條件為真時執行某些語句外,還可以在條件為假時執行另外一段代碼。在C語句中利用else語句來達到這個木的。 if(表達式) 語句1; else 語句2;
同樣,當語句1或語句2是多於一個語句時,需要用{}把語句括起來。 例如:
if(x>=0) y=x; else y=-x;
三、if--else if--else結構。 if(表達式1) 語句1;
else if(表達式2) 語句2;
else
語句
n;
這種結構是從上到下逐個對條件進行判斷
,
一旦發現條件滿點足就執行與它有關的語句
,
並
跳過其它剩餘階梯
;
若沒有一個條件滿足
,
則執行最後一個
else
語句
n
。最後這個
else
常起
著預設條件的作用。同樣
,
如果每一個條件中有多於一條語句要執行時
,
必須使用
{
和
}
把這些
語句包括在其中。
條件語句可以嵌套
,
這種情況經常碰到
,
但條件嵌套語句容易出錯
,
其原因主要是不知道哪個
if
對應哪個
else
。
例如
:
if(x>20||x<-10)
if(y<=100&&y>x)
printf(Good);
else
printf(Bad);
對於上述情況
, Turbo C2.0
規定
: else
語句與最近的一個
if
語句匹配
,
上例中的
else
與
if(y<=100&&y>x)
相匹配。為了使
else
與
if(x>20||x<-10)
相匹配
,
必須用花括弧。如下所
示
:
if(x>20||x<-10)
{
if(y<=100&&y>x)
printf(Good);
}
else
printf(Bad);
else if(表達式3) 語句3; . . .
❽ c語言語句有哪些
C語句可分為以下五類: 1.表達式語句; 2.函數調用語句; 3.控制語句; 4.復合語句; 5.空語句。
1.表達式語句
表達式語句由表達式加上分號「;」組成。 其一般形式為: 表達式;執行表達式語句就是計算表達式的值。 例如: x=y+z;a=520; 賦值語句; y+z;加法運算語句,但計算結果不能保留,無實際意義; i++; 自增1語句,i值增1。 i++; 是先運算i後再加1。 ++i; 是先把i值增1後運算。
編輯本段2.函數調用語句
由函數名、實際參數加上分號「;」組成。 其一般形式為: 函數名(實際參數表) ; 執行函數語句就是調用函數體並把實際參數賦予函數定義中的形式參數,然後執行被調函數體中的語句,求取函數值。 調用庫函數,輸出字元串。
編輯本段3.控制語句
控制語句用於控製程序的流程, 以實現程序的各種結構方式。 它們由特定的語句定義符組成。C語言有九種控制語句。 可分成以下三類: (1). 條件判斷語句 if語句、switch語句; (2) .循環執行語句 do while語句、while語句、for語句; (3). 轉向語句 break語句、goto語句(此語句盡量少用,因為這不利結構化程序設計,濫用它會使程序流程無規律、可讀性差)、continue語句、return語句。
編輯本段條件判斷
int a,b; if(x>y) printf("x,\n"); else printf("y,\n");
編輯本段4.復合語句
把多個語句用括弧{}括起來組成的一個語句稱復合語句。 在程序中應把復合語句看成是單條語句,而不是多條語句,例如 { x=y+z; a=b+c; printf(「%d%d」,x,a); } 是一條復合語句。復合語句內的各條語句都必須以分號「;」結尾;此外,在括弧「}」外不能加分號。
編輯本段5.空語句
只有分號「;」組成的語句稱為空語句。 空語句是什麼也不執行的語句。在程序中空語句可用來作空循環體。 例如 while(getchar()!='\n'); 本語句的功能是,只要從鍵盤輸入的字元不是回車則重新輸入。這里的循環體為空語句。
❾ C語言請教一些語句。
switch(表達式){
case 常量表達式1: 語句1;
case 常量表達式2: 語句2;
…
case 常量表達式n: 語句n;
default: 語句n+1;
}
其語義是:計算表達式的值。 並逐個與其後的常量表達式值相比較,當表達式的值與某個常量表達式的值相等時, 即執行其後的語句,然後不再進行判斷,繼續執行後面所有case後的語句。如表達式的值與所有case後的常量表達式均不相同時,則執行default後的語句。
break是強行結束循環,執行循環語句後面的語句
❿ C語言中 : 語句是什麼意思
對於條件表達式b ? x : y,先計算條件b,然後進行判斷。如果b的值為true,計算x的值,運算結果為x的值;否則,計算y的值,運算結果為y的值。一個條件表達式絕不會既計算x,又計算y。條件運算符是右結合的,也就是說,從右向左分組計算。例如,a ? b : c ? d : e將按a ? b : (c ? d : e)執行。
<表達式1> ? <表達式2> : <表達式3>; "?"運算符的含義是:先求表達式1的值,如果為真,則執行表達式2,並返回表達式2的結果;如果表達式1的值為假,則執行表達式3,並返回表達式3的結果。
可以理解為條件 ? 結果1 : 結果2裡面的?號是格式要求。也可以理解為是不是條件成立,條件成立為結果1否則為結果2。
注意:在C語言中,結果1 和 結果2的類型必須一致。
a ? b : c簡單理解方式為:
if(a){
returnb;
}else{
returnc;
}