一、選擇題((1)~(40)每題1分,(41)~(50)每題2分,共60分)
(1)在計算機中,一個字節(jié)所包含二進制位的個數是
a)2 b)4 c)8 d)16
(2)在多媒體計算機中,cd-rom屬于
a)存儲媒體 b)傳輸媒體 c)表現媒體 d)表示媒體
(3)在dos系統(tǒng)中,帶有通配符的文件名*.*表示
a)硬盤上的全部文件 b)當前盤當前目錄中的全部文件
c)當前盤上的全部文件 d)根目錄中的全部文件
(4)十六進制數100轉換為十進制數為
a)256 b)512 c)1024 d)64
(5)能將高級語言編寫的源程序轉換為目標程序的軟件是
a)匯編程序 b)編輯程序 c)解釋程序 d)編譯程序
(6)在internet中,用于在計算機之間傳輸文件的協(xié)議是
a)telnet b)bbs c)ftp d)www
(7)在windows環(huán)境下,資源管理器左窗口中的某文件夾左邊標有"+"標記表示
a)該文件夾為空 b)該文件夾中含有子文件夾
c)該文件夾中只包含有可執(zhí)行文件 d)該文件夾中包含系統(tǒng)文件
(8)在windows環(huán)境下,下列敘述中正確的是
a)在"開始"菜單中可以增加項目,也可以刪除項目
b)在"開始"菜單中不能增加項目,也不能刪除項目
c)在"開始"菜單中可以增加項目,但不能刪除項目
d)在"開始"菜單中不能增加項目,但可以刪除項目
(9) 從windows環(huán)境進入dos方式后,返回windows環(huán)境的命令為
a)quit b)win c)exit d)esc
(10) 下列敘述中正確的是
a)計算機病毒只感染可執(zhí)行文件
b)計算機病毒只感染文本文件
c)計算機病毒只能通過軟件復制的方式進行傳播
d)計算機病毒可以通過讀寫磁盤或網絡等方式進行傳播
(11)以下敘述中正確的是
a)c程序中注釋部分可以出現在程序中任意合適的地方
b)花括號"{"和"}"只能作為函數體的定界符
c)構成c程序的基本單位是函數,所有函數名都可以由用戶命名
d)分號是c語句之間的分隔符,不是語句的一部分
(12)以下選項中可作為c語言合法整數的是
a)10110b b)0386 c)0xffa d)x2a2
(13)以下不能定義為用戶標識符的是
a)scanf b)void c)_3com_ d)int
(14)有以下程序
main()
{ int a; char c=10;
float f=100.0; double x;
a=f/=c*=(x=6.5);
printf("%d %d %3.1f %3.1f ",a,c,f,x);
}
程序運行后的輸出結果是
a)1 65 1 6.5 b)1 65 1.5 6.5
c)1 65 1.0 6.5 d)2 65 1.5 6.5
(15)以下選項中非法的表達式是
a)0<=x<100 b)i=j==0
c)(char)(65+3) d)x+1=x+1
(16)有以下程序
main()
{ int a=1,b=2,m=0,n=0,k;
k=(n=b>a)||(m=a
現要將q和r所指結點的先后位置交換,同時要保持鏈表的連續(xù),以下錯誤的程序段是
a)r->next=q; q->next=r->next; p->next=r;
b)q->next=r->next; p->next=r; r->next=q;
c)p->next=r; q->next=r->next; r->next=q;
d)q->next=r->next; r->next=q; p->next=r;
二、填空題(每空2分,共40分)
(1)計算機軟件分為系統(tǒng)軟件與應用軟件,unix屬于 〖1〗 。
(2)假設在當前盤的當前目錄下有兩個文件a.txt和b.txt,現要將文件b.txt合并連接到文件a.txt的后面。若使用type命令,則完整的命令為 〖2〗 。
(3)internet的信息服務方式分為基本服務和擴展服務,電子郵件屬于 〖3〗 。
(4)在windows環(huán)境下,利用菜單命令刪除固定硬盤上的文件與文件夾,實際上是將需要刪除的文件與文件夾移動到 〖4〗 文件夾中。
(5)在windows環(huán)境下,為了進行"添加/刪除程序"操作,首先打開 〖5〗 ,然后雙擊其中的相應圖標。
(6)以下程序運行后的輸出結果是 〖6〗 。
main()
{ int p=30;
printf("%d ",(p/3>0 ? p/10 : p%3));
}
(7)以下程序運行后的輸出結果是 〖7〗 。
main()
{ char m;
m=\'b\'+32; printf("%c ",m);
}
(8)以下程序運行后的輸出結果是 〖8〗 。
main()
{ int a=1,b=3,c=5;
if (c=a+b) printf("yes ");
else printf("no ");
}
(9)以下程序運行后的輸出結果是 〖9〗 。
main()
{ int i,m=0,n=0,k=0;
for(i=9; i<=11;i++)
switch(i/10)
{ case 0: m++;n++;break;
case 10: n++; break;
default: k++;n++;
}
printf("%d %d %d ",m,n,k);
}
(10)執(zhí)行以下程序后,輸出\'#\'號的個數是 〖10〗 。
#include
main()
{ int i,j;
for(i=1; i<5; i++)
for(j=2; j<=i; j++) putchar(\'#\');
}
(11)以下程序的功能是調用函數fun計算:m=1-2+3-4+…+9-10,并輸出結果。請?zhí)羁铡?br>int fun( int n)
{ int m=0,f=1,i;
for(i=1; i<=n; i++)
{ m+=i*f;
f= 〖11〗 ;
}
return m;
}
main()
{ printf("m=%d ", 〖12〗 ); }
(12)以下程序運行后的輸出結果是 〖13〗
main()
{ int i,n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
{ n[i]=n[i-1]*2+1;
printf("%d ",n[i]);
}
}
(13)以下程序運行后的輸出結果是 〖14〗
main()
{ int i,j,a[][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
for(j=i+1;j<3;j++) a[j][i]=0;
for(i=0;i<3;i++)
{ for(j=0;j<3;j++) printf("%d ",a[i][j]);
printf(" ");
}
}
(14)以下程序運行后的輸出結果是 〖15〗
int a=5;
fun(int b)
{ static int a=10;
a+=b++;
printf("%d ",a);
}
main()
{ int c=20;
fun(c);
a+=c++;
printf("%d ",a);
}
(15)請在以下程序第一行的下劃線處填寫適當內容,使程序能正確運行。
〖16〗 ( double,double);
main()
{ double x,y;
scanf("%lf%lf",&x,&y);
printf("%lf ",max(x,y));
}
double max(double a,double b)
{ return(a>b ? a:b); }
(16)以下程序運行后輸入:3,abcde<回車>,則輸出結果是 〖17〗
#include
move(char *str, int n)
{ char temp; int i;
temp=str[n-1];
for(i=n-1;i>0;i--) str[i]=str[i-1];
str[0]=temp;
}
main()
{ char s[50]; int n, i, z;
scanf("%d,%s",&n,s);
z=strlen(s);
for(i=1; i<=n; i++) move(s, z);
printf("%s ",s);
}
(17)以下程序運行后的輸出結果是 〖18〗
fun(int x)
{ if(x/2>0) fun(x/2);
printf("%d ",x);
}
main()
{ fun(6); }
(18)已有定義如下:
struct node
{ int data;
struct node *next;
} *p;
以下語句調用malloc函數,使指針p指向一個具有struct node類型的動態(tài)存儲空間。請?zhí)羁铡?br>p = (struct node *)malloc( 〖19〗 );
(19)以下程序的功能是將字符串s中的數字字符放入d數組中,最后輸出d中的字符串。例如,輸入字符串:abc123edf456gh,執(zhí)行程序后輸出:123456。請?zhí)羁铡?br>#include
#include
main()
{ char s[80], d[80]; int i,j;
gets(s);
for(i=j=0;s[i]!=\'\';i++)
if( 〖20〗 ) { d[j]=s[i]; j++; }
d[j]=\'\';
puts(d);
}