c091
變數 math 和 engl 中存放了兩門課的成績。若兩門課成績均在 60 分以上(含 60),則顯示“pass”;有一門低於 60 分則顯示“fail”,以下不能實現上述功能的程式段是
(A)
if(math<60)
if(engl<60)
printf(“fail\n”);
else
printf(“pass\n”);
(B)
if(math<60)
printf(“fail\n”);
else if(engl>=60)
printf(“pass\n”);
else
printf(“fail\n”);
(C)
if ((math<60) ||(engl<60))
printf(“fail\n”);
else
printf(“pass\n”);
(D)
if ((math>=60) && (engl>=60))
printf(“pass\n”);
else
printf(“fail\n”);
c092
以下程式擬實現計算 s=1 + 22 + 33 + … + nn +…,直 到 s>1000 為止。
#include <stdio.h>
main( ) {
int s,n;
s=1;
n=1;
do{
n=n+1; s=s+nn;
}while(s>1000);
printf(“s=%d\n”,s);
}
程式運行後,不能得到正確結果,以下修改方案正確的是
A) 把 s=1; 改為 s=0;
B) 把 while(s>1000); 改為 while(s<=1000);
C) 把 n=1; 改為 n=0;
D) 把 n=n+1; 改為 n=n*n;
c093
有以下程式
#include <stdio.h>
main( )
{
int m,n;
scanf("%d%d", &m,&n);
while(m!=n){
while(m>n){
m=m-n;
}
while(n>m) {
n=n-m;
}
}
printf("%d\n",m);
}
該程式的功能是
A) 計算 m 和 n 的最大公約數
B) 計算 m 和 n 的最小公倍數
C) 計算 m 和 n 的差值
D) 找出 m 和 n 中的較大值
c094
以下程式擬實現計算 sum=1+1/2+1/3+ … +1/50 。
#include <stdio.h>
main( )
{
int i;
double sum;
sum=1.0;
i=1;
do{
i++; sum += 1/i;
}while( i<50 );
printf(“sum=%lf\n”,sum);
}
程式運行後,不能得到正確結果,出現問題的語句是
A) i++;
B) while(i<50);
C) sum = 1.0;
D) sum += 1/i;
c095
若有以下程式
#include <stdio.h>
main()
{
char a=‘5’, b;
a++;
printf("%d,%d\n", a-‘5’+255, b=a- ‘5’);
}
執行後的輸出結果是
A) 256,1
B) 1,256
C) 255,1
D) 256,0 |