看板 TransCSI 關於我們 聯絡資訊
※ 引述《ahongyeh (小葉子)》之銘言: : ※ 引述《antirazin (今年是日星來台年~真嗨)》之銘言: : : 1.scanf()可以連續鍵入不同變數的值嗎? : : EX: scanf("%d %d",&a,&b) : : 2.float 和 double的差別? : : 3.96中興資工那題從LIST裡面印出最大最小值那題有人會寫嗎?可以秀一下嗎? : #include<stdio.h> : #define MAX 100 : main(){ : int a[MAX],max,min,ch,i=0,j; : printf("Please input numbers(split in space): "); : do{ : scanf("%d",&a[i++]); : scanf("%c",&ch); : }while(ch==' '); ^^^^^^^^^^^^^^^^ 這邊看不懂為什麼要這樣寫 是說雖然MAX等於100,可是如果這樣寫可以隨意輸入任意個數的值, 不用輸入100個值, 你的意思是這樣嗎? 不過看不懂ch的型態是int為什麼可以等於空字元=> ' ' : max=a[0]; : min=a[0]; : for(j=0;j<i;j++){ : if(a[j]>max) max=a[j]; : if(a[j]<min) min=a[j]; : } : printf("The largest is %d, the least is %d.\n",max,min); : system("pause"); : } : 剛剛run過一次~~應該是沒錯~~ : 不過我發現在我考的時候有些小地方寫錯了... @@ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.230.182.236
chingking:ch應該要宣告為char吧? 不然do/while只會做一次 07/12 19:49
chingking:這樣就可以輸入任意個數(用空白隔開&不超過MAX) 07/12 19:50
MrTang:樓上能解釋一下有什麼差別嗎?char和int int不是比較大嗎? 07/12 20:01
MrTang:多謝~~ 07/12 20:01
chingking:跟大小沒關吧~我沒記錯的話~空白在C/C++裡是當char處理 07/12 20:07
chingking:int是不能assign為空白的~假設這題(ch==' ')這行改成 07/12 20:14
chingking:(ch=='a')這樣每個數之間就要用a來隔開了~ 07/12 20:16
chingking:有問題可再提出討論~有錯誤也煩請指正~謝謝 07/12 20:17
ahongyeh:我想說的是~int型態可以assign為ASCII字元~空白當然可以! 07/12 20:49
ahongyeh:不然你可以編譯看看:int test=' ' 這樣子的宣告是無誤的~ 07/12 20:51
ahongyeh:因為它會將字元轉換成ASCII碼~~ 07/12 20:53
chingking:我懂意思了~感謝樓上~ 07/12 21:48