main() {
10年積累的成都網(wǎng)站設(shè)計、成都網(wǎng)站制作經(jīng)驗,可以快速應對客戶對網(wǎng)站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務。我雖然不認識你,你也不認識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有常熟免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
int a=1,b=2,c=5,d=4,x=0; if(ab) { if(cd) x=1;
else if(ac) { if(bd) x=2;
else x=3; }
else x=6; }
else x=7;
printf("%d",x);
getch();
}
以上代碼已經(jīng)整理好了。因為第一if已經(jīng)不滿足,直接執(zhí)行最后一個else,所以,結(jié)果是7. 針對這種問題,最好的方法是先用大括號把各個子句分好。
int xxx()//是閏年反加真,不是返回0
{
int year;
while(scanf("%d",year)!=1);//while用來保證正確讀到數(shù)字
return year%4==0 year%100 || year%400 == 0;
}
在函數(shù)中讀數(shù)字是上面這樣的,下面是函數(shù)接收一個參數(shù)的寫法:
int yyy(int year)//是閏年反加真,不是返回0
{
return year%4==0 year%100 || year%400 == 0;
}
我的寫法一般人第一次看會不習慣!!!
if函數(shù),說的是假如,然后:
分兩種:if……printf;if……else
第一種:if……printf,假如一種情況,直接輸出結(jié)果。
if……else,是假如一種情況,不發(fā)生這種情況該怎樣運行:
if()
語句1
else
語句2 這樣是單個語句,既if和else各控制一個語句
再有一句是復合語句
if()
語句1
else
{
語句2
語句3
}
這樣就是復合的,else里面包括2個語句,else 只包括語句1 語句2是獨立的,因為它沒有大括號{ }括起來,
在c語言中用沒有函數(shù)判定一個變量的類型,可以使用sizeof來判斷變量大小。
示例:
#include stdio.h
#include stdlib.h
int main(int argc,char **argv)? ? ? ? ?//主程序
{
//對C語言內(nèi)置類型的所占字節(jié)數(shù)的測試
printf("size of char is: %d\n",sizeof(char));? ? ? ?//字符型數(shù)據(jù)所占字節(jié)數(shù) 、
printf("size of short is: %d\n",sizeof(short));? ? ?//短整形數(shù)據(jù)所占字節(jié)數(shù)
printf("size of int is: %d\n",sizeof(int ));? ? ? ? //整形數(shù)據(jù)
printf("size of short int is: %d\n",sizeof(short int)); //短整形
printf("size of long int is: %d\n",sizeof(long int));? ? //長整形數(shù)據(jù)
printf("size of float is: %d\n",sizeof(float));? ? ? ? ? //浮點型數(shù)據(jù)
printf("size of double is: %d\n",sizeof(double));? ? ? ? //雙精度數(shù)據(jù)
//對字符及字符串數(shù)組所占字節(jié)數(shù)的測量
char a[] ={'a','b','c','d','e'};
printf("size of a[] is: %d\n",sizeof(a));? ? ? ? ? ? ? ?//輸出數(shù)組a[]所占字節(jié)數(shù)
char b[]={"abcde"};? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//初始化字符串b
printf("size of b[] is: %d\n",sizeof(b));? ? ? ? ? ? ? ?//數(shù)組b[]
char c[][3]={{'a','b','c'},{'d','e','f'},{'g','h','i'},{'j','k','l'}};? //初始化二維字符型數(shù)組
printf("size of c[][] is: %d\n",sizeof(c));? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//二維數(shù)組c所占字節(jié)數(shù)
printf("size of c[0] is: %d\n",sizeof(c[0]));? ? ? ? ? ? ? ? ? ? ? ? ? ?//二維數(shù)組中的某行所占的字節(jié)數(shù),例如第0行
printf("size of c[0][0] is: %d\n",sizeof(c[0][0]));? ? ? ? ? ? ? ? ? ? ?//某行某個元素,例如第0行第0個元素
//對指針所占字節(jié)數(shù)的測量
char *p=0;
printf("size of *p is: %d\n",sizeof(p));? ? ? ? ? ? ? ? ? ? ? ?//字符型指針
system("pause");
return 0;
}
擴展資料
使用sizeof()計算數(shù)組長度
將sizeof用于 expr是并沒有計算expr的值。特別是在sizeof *p中,指針p可以是一個無效地址,因為不需要對p做解引用操作。
對char類型或值為char類型的表達式做sizeof操作結(jié)果為1。對引用類型做sizeof操作,將返回存放此引用類型對象所需的內(nèi)存空間大小。
對指針做sizeof操作,將返回存放指針所需的內(nèi)存大小,注意,如果要獲取該指針指向?qū)ο蟮拇笮?,則必須對該指針進行解引用。對數(shù)組做sizeof操作等效于對其元素做sizeof操作的結(jié)果乘上數(shù)組元素的個數(shù)。
因為sizeof返回整個數(shù)組在內(nèi)存中的存儲長度,所以用sizeof數(shù)組的結(jié)果初一sizeof其元素類型的結(jié)果,即可求出數(shù)組元素的個數(shù):int sz = sizeof(ia)/sizeof(*ia);
通常將8位的塊作為一個字節(jié),32位或4個字節(jié)作為一個 “字”。一般的short為半個機器字長,int為一個機器字長。
#include
"stdio.h"
int
s(int
a)
{
return(a%2);
}
main()
{
int
x;
printf("請輸入一個整數(shù):");
scanf("%d",x);
if(s(x)==1)
printf("%d是一個奇數(shù)",x);
else
printf("%d是一個偶數(shù)",x);
}
先編寫一個判斷是素數(shù)還是偶數(shù)的函數(shù),偶數(shù)就返回0,否則就返回1,然后在主函數(shù)調(diào)用函數(shù),根據(jù)返回值判斷素數(shù)還是偶數(shù)。
這個是條件編譯命令,表示SPEND為真時,下面的語句才能加入編譯器進行編譯,為假時,下面的語句不參與編譯。可以去掉defined
#if 1 #if defined(SPEND) #if 0 #if defined(SPEND)
#endif和 #endif 當SPEND為真時,效果一樣, #endif 和 #endif 當SPEND為假時,效果一樣。
比如:
main()
{
char a[]="a參加了編譯";
char b[]="b參加了編譯";
#if defined(M)
printf("%s\n",a);
#endif
printf("%s\n",b);
}
當M為真時,編譯器先把代碼變成:
main()
{
char a[]="a參加了編譯";
char b[]="b參加了編譯";
printf("%s\n",a);
printf("%s\n",b);
}
再編;
當M為假時,會變成這樣再編:
main()
{
char a[]="a參加了編譯";
char b[]="b參加了編譯";
printf("%s\n",b);
}
本文標題:c語言中表判斷的函數(shù),判斷函數(shù)C語言
URL標題:http://chinadenli.net/article16/phgjgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、網(wǎng)站排名、響應式網(wǎng)站、軟件開發(fā)、網(wǎng)頁設(shè)計公司、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)