在這個程序中,輸入的10個數(shù)字清模,是以空格 隔開的。如果想用逗號圓正塌隔開,會比較麻煩。
德保網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)成立于2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
既然上面是空格隔開的,下面倒數(shù)第三行printf("%d in %d",key,i);key和i用空格隔開不用逗號是不行的。這是程序語句規(guī)定的,各輸出項之間必須要用逗號分隔橘圓。這個與上面所說的運行時輸入各數(shù)據(jù)用什么分隔(它是可以指定的)是兩碼事。
#includestdio.h
void main()
{
int a[10]={1,2,3,4,5,6,7,8,9,10};
int i,x,y;
printf("輸入你譽埋蘆要查慶帶找的數(shù):\n");
scanf("%d",x);
y=0; //標(biāo)記是否已找液虛到,y=1表是找到了,y=0表示沒找到
for(i=0;i10;i++) //循環(huán),把x和數(shù)組中的元素一個個比較
{
if(x==a[i]) //如果x=a[i]說明已經(jīng)找到
{
y=1; //把y變成1,說明已經(jīng)找到了
printf("你要查找的數(shù)%d在第個%d位置\n",x,i+1); //輸出找到的相關(guān)信息
break; //跳出循環(huán)
}
}
if(y==0)printf("無法找到你要查找的數(shù)\n"); //y=0表示找不到
}
如果是在已有n個元素的迅斗兄?jǐn)?shù)組a中順序查畝襲找值為x的元素,以下是實現(xiàn)查找的銷帆函數(shù)代碼,查找成功則返回此元素的位置,否則返回-1:
int find(int a[],int n,int x)
{int i;
for(i=0;ina[i]!=x;i++);
return in?i:-1;
}
第一條語句在不同的編譯器下可能會有不同的結(jié)果的,因為這里存在一個順序點的問題.
即:
在執(zhí)行順序中某些指定的點叫做順序點。這個點首櫻上,之前所有的賦值所產(chǎn)生的副作用都已發(fā)生完成,并且在其后的賦臘余值不能在該點產(chǎn)生任何副作用。
說白了就是:
最好不要試圖在一行語句里多次改變一個變量的值,否則編譯器可以隨便定義改變的時機和次序
參考鏈接:
請注意其中順序點的定義和介紹,和你的問題相關(guān)的描述應(yīng)該是"在者局叢函數(shù)所有參數(shù)賦值之后但在函數(shù)第一條語句執(zhí)行之前"這句話