(2)
若n 為正整數,下列程式三個迴圈執行完畢後 a 值將為何?
int a=0, n;
…
for (int i=1; i<=n; i=i+1) //執行n次
for (int j=1; j<=n; j=j+1) //執行n × n次
for (int k=1; k<=n; k=k+1) //執行n × n × n次= n3次
a = a + 1;
(3)
給定下列程式,其中 s 有被宣告為全域變數,請問程式執行後輸出為何?
int s = 2; // 全域變數
void add (int a){
int s = 5;
for( ; a>=0; a=a-2) {
printf("%d,", s);
s++;
printf("%d,", s);
}
}
int main (){
printf("%d,", s); //2
add(s); //5,6,6,7
printf("%d,", s);//2
s = 8;
printf("%d", s);//8
return 0;
}
(4)
下列是依據分數 s 評定等第的程式碼片段,正確的 等第公式 應為:
90~100 判為 A 等
80~89 判為 B 等
70~79 判為 C 等
60~69 判為 D 等
0~59 判為 F 等
if (s>=90){
printf ("A \n");
}
else if (s>=70){ //80,81,82,83,84,85,86,87,88,89 會被誤判為C等級,共10個數
printf ("C \n");
}
else if (s>=60) {
printf ("D \n");
}
else if (s>80){
printf ("B \n");
}
else{
printf ("F\n");
}