二、填空題(請將每一個空的正確答案寫在答題卡相應(yīng)序號后。)
10.26b 設(shè)有以下定義和語句,則*(*(p+2)+1)的值為【1b】。
int a[3][2]={10, 20, 30, 40, 50, 60}, (*p)[2];
p=a;
考生答案: 正確答案: 60
10.27b 以下函數(shù)用來在w數(shù)組中插入x。n所指向的存儲單元中存放w數(shù)組中字符個數(shù)。數(shù)組w中的字符已按從小到大的順序排列,插入后數(shù)組w中的字符仍有序。請?zhí)羁铡?/P>
void fun(char *w, char x, int *n)
{ int i, p;
p=0;
w[*n]= x;
while(x > w[p]) p++;
for(i=*n; i>p; i--) w[i]=【2b】;
w[p]=x;
++*n;
}
考生答案: 正確答案: w[i-1]
10.28b 以下程序中,select 函數(shù)的功能是:在N行M列的二維數(shù)組中,選出一個最大值作為函數(shù)值返回,并通過形參傳回此最大值所在的行下標(biāo)。請?zhí)羁铡?/P>
#define N 3
#define M 3
select(int a[N][M],int *n)
{ int i,j,row=1,colum=1;
for(i=0;ifor(j=0;jif(a[i][j]>a[row][colum])
{ row=i;colum=j; }
*n= 【3b】 ;
return 【4b】 ;
}
main()
{ int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;
max=select(a,&n);
printf("max=%d,line=%d\n",max,n);
}
正確答案: row 正確答案: a[row][colum]
10.29b 函數(shù)my_cmp()的功能是比較字符串s和t的大小,當(dāng)s等于t時返回0,否則返回s和t的第一個不同字符的ASCII碼差值,即s > t時返回正值,當(dāng)s < t時返回負(fù)值。請?zhí)羁铡?/P>
my_cmp(char *s, char *t)
{ while (*s == *t)
{ if (*s == ′\0′) return 0;
++s; ++t;
}
return 【5b】 ;
}
考生答案: 正確答案: *s-*t
10.30b 下面的程序?qū)崿F(xiàn)的是指針p所指向的地址的n個數(shù)中,求出最大的和最小的數(shù)據(jù),請?zhí)羁铡?/P>
fun(int *p,int n)
{ int *q;
int max,min;
max=min=*p;
for(q=p; 【6b】 ;q++)
if( 【7b】 ) max=*q;
else if( 【8b】 ) min=*q;
}
正確答案: qmax 正確答案: *q
10.31b 設(shè)有以下定義和語句,則*(*(p+2)+1)的值為 【9b】 。
int a[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
考生答案: 正確答案: 60
10.32b 下面程序的功能是:對字符串從小到大進(jìn)行排序并輸出,請?zhí)羁铡?/P>
#include "string.h"
#include "stdio.h"
sort(char *a[],int n)
{ int i,j;
char *p;
for(j=1;j<=n-1;j++)
for(i=0; 【10b】 ;i++)
if( 【11b】 >0)
{ p=a[i];
a[i]=a[i+1];
a[i+1]=p;
}
}
main()
{ int i;
char *book[]={"itisme","itisyou","howareyou","fine","goodnight","goodbye"};
sort(【12b】 );
for(i=0;i<6;i++)
printf("%s\n",book[i]);
}
正確答案: i
10.33b 下面程序段的功能是:從鍵盤上輸入兩個字符串,對兩個字符串分別排序;然后將它們合并,合并后的字符串按ASCII碼值從小到大排序,并刪去相同的字符。請?zhí)羁铡?/P>
#include "stdio.h"
fun(char *x,char *y,char *z)
{ char t,*p;
p=z;
while(*x!=′\0′&&*y!=′\0′)
{ t=*x<*y?*x++:*y<*x?*y++: 【13b】 ;
if(*p==′\0′) *p=t;
else if(t!=*p) *++p=t;
}
if(*x!=′\0′)
while(*x!=′\0′)
if(*x!=*p) *++p=*x++;
else x++;
if(*y!=′\0′)
while(*y!=′\0′)
if(*y!=*p) *++p=*y++;
else y++;
*++p= 【14b】 ;
}
sort(char *s)
{ int i,j,k;
char t,*p;
p=s;
for(k=0;*p!=′\0′;k++) p++;
for(i=0;ifor(j=i+1;jif(s[i]>s[j])
{ 【15b】 }
}
main()
{ char s1[100],s2[100],s3[200];
scanf("%s",s1);
scanf("%s",s2);
sort(s1);
sort(s2);
s3[0]=′\0′;
fun(s1,s2,s3);
printf("%s\n",s3);
}
正確答案: (*x++,*y++) 正確答案: ′\0′ 正確答案: t=s[i];s[I]=s[j];s[j]=t;
相關(guān)推薦:2010年9月計算機(jī)等級考試成績查詢時間匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |