版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1.填空
給定程序的功能是調(diào)用fun函數(shù)建立班級(jí)通訊錄。通訊錄中記錄每位學(xué)生
日勺編號(hào),姓名和號(hào)碼。班級(jí)的人數(shù)和學(xué)生的信息從鍵盤(pán)讀入,每個(gè)人的信息作
為一種數(shù)據(jù)塊寫(xiě)到名為myfile5.dat的J二進(jìn)制文獻(xiàn)中。
請(qǐng)?jiān)诔绦虻南聞澗€處填入對(duì)的H勺內(nèi)容并把下劃線刪除,是程序得出對(duì)的的成
果。
注意:源程序寄存在考生文獻(xiàn)夾下的BLANK1.c中
不得增行或刪行,也不得更改程序的構(gòu)造!
voidcheck();
/**********found**********/
intfun(1___*std)
(
/**********found**********/
―2*fp;inti;
if((fp=fopen("myfile5.dat","wbH))==NULL)
return(O);
printf("\n0utputdatatofile!\n");
for(i=0;i<N;i++)
/**********f^)und**********/
fwrite(&std[i],sizeof(STYPE),1,3___);
fclose(fp);
return(1);
)
修改
給定程序M0DI1.C中函數(shù)fun的功能是:先將在字符串s中的字符按正序寄存
到t串中,然后把s中時(shí)字符按逆序連接到t串背面。
例如:當(dāng)s中的I字符串為:“ABCDE”時(shí),
則他中的字符串應(yīng)為:“ABCDEEDCBA”。
請(qǐng)改正程序中的錯(cuò)誤,使他能得出對(duì)日勺的成果。
注意:不要改動(dòng)main函數(shù),不能增行或刪行,也不得更改程序的構(gòu)造!
voidfun(char*s,char*t)
{inti,si;
si=strlen(s);
/************fbund************/
for(i=0;i<=s1;i++)
t[i]=s[i];
for(i=0;i<s1;i++)
”[s1+i]=s[sl-i-l];
/************found************/
t[si]='\0,;
程序
函數(shù)fun日勺功能是:將兩個(gè)兩位數(shù)日勺正整數(shù)a,b合并成一種整數(shù)放在C中。合
并的方式是:將a數(shù)日勺十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)日勺十位和
個(gè)位數(shù)依次放在c數(shù)日勺百位和個(gè)位上。
例如:a=45,b=如時(shí),調(diào)用該函數(shù)后,c=4152.
注意:部分源程序存在文獻(xiàn)PR0G1.C中。數(shù)據(jù)文獻(xiàn)IN.DAT中日勺數(shù)據(jù)不得修
改。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填
入你編寫(xiě)的若干語(yǔ)句。
答案:B:STYPEFILEfp
M:for(i=0;i<si;i++)t[2*s1]=0;
P:*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);
2.填空
給定程序的功能是:從鍵盤(pán)輸入若干行文本(每行不超過(guò)80個(gè)字符),寫(xiě)到
文獻(xiàn)myfile4.txt中用作為字符串輸入結(jié)束日勺標(biāo)識(shí)。然后將文獻(xiàn)的內(nèi)容讀出
顯示在屏幕上。文獻(xiàn)的讀寫(xiě)分別有自定義函數(shù)ReadText和WriteText實(shí)
現(xiàn)。
請(qǐng)?jiān)诔绦驎r(shí)下劃線處填入對(duì)歐I的內(nèi)容并把下劃線刪除,是程序得出對(duì)時(shí)
日勺成果。
注意:源程序寄存在考生文獻(xiàn)夾下的BLANK1.c中
不得增行或刪行,也不得更改程序的構(gòu)造!
main()
{FILE*fp;
if((fp=fopen("myfile4.txt";'wu))==NULL)
{printf("openfail!!\nM);exit(0);}
WriteText(fp);
fclose(fp);
if((fp=fopen(Hmyfile4.txt",Mrn))==NULL)
{printf(Mopenfai1!!\nH);exit(0);}
ReadText(fp);
fc1ose(fp);
)
/**********found**********/
voidWriteText(FILE__1)
{charstr[81];
printf("\nEnterstringwith_1toend:\n");
gets(str);
whi1e(strcmp(str,H-1*')!=0){
/**********砧und**********/
fputs(___2,fw);fputs("\nM,fw);
gets(str);
}
)
voidReadText(FILE*fr)
{charstr[81];
printf(n\nReadfileandoutputtoscreen:\nH);
fgets(str,8l,fr);
while(!feof(fr)){
/**********fQund**********/
printf("%sn,—3—);
fgets(str,81,fr);
)
}
修改
給定程序MODI1.c中函數(shù)fun的功能是:從低位開(kāi)始取出長(zhǎng)整形變量s中的奇數(shù)
位上的I數(shù),依次構(gòu)成一種新數(shù)放在t中,高位仍放在高位,低位仍放在低位。
例如:當(dāng)s中時(shí)數(shù)為:7654321時(shí),t中時(shí)數(shù)為:7531
請(qǐng)改正程序中的錯(cuò)誤,使他能得出對(duì)的的I成果。
注意:不要改動(dòng)main函數(shù),不能增行或刪行,也不得更改程序的構(gòu)造!
#inc1ude<stdio.h>
/************向und************/
voidfun(longs,1ongt)
{longs1=10;
*t=s%10;
while(s>0)
{s=s/100;
*t=s%10*s1+*t;
/************found************/
osl=Sl*l()();
)
)
程序
函數(shù)fun的功能是:將兩個(gè)兩位數(shù)的正整數(shù)a,b合并成一種整數(shù)放在c中。合并
於J方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的J千位和十位上,b數(shù)/、J十位和個(gè)
位數(shù)依次放在c數(shù)的百位和個(gè)位上。
例如:a=45,b=12時(shí),調(diào)用該函數(shù)后,c=1524.
注意:部分源程序存在文獻(xiàn)PROG1.C中。數(shù)據(jù)文獻(xiàn)IN.DAT中的數(shù)據(jù)不得
修改。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入
你編寫(xiě)的若干語(yǔ)句。
2、B:*fwstrstr
M:1ong*tsi=s1*10;
P:*c=(b/10)*1000+(a%10)*l00+(b%10)*10+(a/10);
3.填空
給定程序中,函數(shù)funH勺功能是:將自然數(shù)1-10以及它們H勺平方根寫(xiě)到
名為myfile3txt的文本文檔中,然后再次序讀出顯示在屏幕上。
請(qǐng)?jiān)诔绦虻南聞澗€處填入對(duì)時(shí)的內(nèi)容并把下劃線刪除,是程序得出對(duì)的
的成果。
注意:源程序寄存在考生文獻(xiàn)夾下的JBLANKl.c中
不得增行或刪行,也不得更改程序的構(gòu)造!
intfun(char*fname)
{FILE*fP;inti,n;floatx;
if((fp=fopen(fname,"wM))==NULL)return0;
for(i=l;i<=10;i++)
/**********f0und**********/
fprintf(1,"%d%f\n“,i,sqrt((double)i));
printf(n\nSucceed!!\nH);
/**********found**********/
―2—;
printf(n\nThedatainfile:\n");
/**********Sund**********/
M
if((fp=fopen(_3,”r))==NULL)
return0;
fscanf(fp,"%d%f',&n,&x);
whi1e(!feof(fp))
(printf(n%d%f\n,n,x);fscanf(fp,"%d%f,&n,&x);}
fc1ose(fp);
return1;
)
修改
給定程序MODI1.c中fun函數(shù)的功能是:將n個(gè)無(wú)序整數(shù)從小到大排序。
fun(intn,int*a)
{inti,j,p,t;
for(j=0;jvn-1;j++)
{p=j;
/************foufid************/
for(i=j+l;i<n-1;i++)
if(a[p]>a[i])
/************found************/
t=i;
if(P!=j)
(t=a[j];a[j]=a[p];a[p]=t;}
)
)
程序
函數(shù)fun曰勺功能是:將兩個(gè)兩位數(shù)的正整數(shù)a,b合并成一種整數(shù)放在c中。合并
的方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個(gè)
位數(shù)依次放在c數(shù)的百位和個(gè)位上。
例如:a=45,b=12時(shí),調(diào)用該函數(shù)后,c=2514
注意:部分源程序存在文獻(xiàn)PR0G1.C中。數(shù)據(jù)文獻(xiàn)IN.DAT中的數(shù)據(jù)不得修改。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填
入你編寫(xiě)的若干語(yǔ)句。
3、B:fpfc1ose(fp)fname
M:i<np=i
P:*c=(b%10)*l000+(a%10)*100+(b/10)*10+(a/10);
4.填空
給定程序的功能是:調(diào)用函數(shù)fun將指定源文獻(xiàn)中日勺內(nèi)容復(fù)制到指定的目的文獻(xiàn)
中,復(fù)制成功時(shí)函數(shù)返回值為1,失敗時(shí)返回值為0,在復(fù)制的過(guò)程中,把復(fù)制的
內(nèi)容輸出到終端屏幕。主函數(shù)中源文獻(xiàn)名放在變量sfname中,目的文獻(xiàn)名放在
變量tfname中
intfun(char*source,char*target)
{FILEcharch;
/**********found**********/
if((fs=fopen(source,1))==NULL)
return0;
if((ft=fopen(target,Mw"))==NULL)
return0;
printf("\nThedatainfile:\nH);
ch=fgetc(fs);
/*********und**********I
while(!feof(_2))
{putchar(ch);
/******und**********/
fputc(ch,___3);
ch=fgetc(fs);
fc1ose(fs);fclose(ft);
printf("\n\n");
return1;
)
修改
給定程序MODH.C中函數(shù)fun的功能是:將長(zhǎng)整形數(shù)中每一位上為偶數(shù)的數(shù)依
次取出,構(gòu)成一種新數(shù)放在t中。高位仍在高位,低位仍在低位。
例如:當(dāng)s中的數(shù)為:87653142時(shí),t中H勺數(shù)為:8642
voidfun(longs,long*t)
{intd;
longsl=1;
=0;
while(s>0)
{d=s%10;
/************found***/********/
if(d%2=0)
{*t=d*s1+*t;
si*=10;
/************砧und************/
s\=10;
}
)
程序
函數(shù)funin功能是:將兩個(gè)兩位數(shù)的正整數(shù)a,b合并成一種整數(shù)放在c中。合
并的方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位
和個(gè)位數(shù)依次放在c數(shù)的百位和個(gè)位上。
例如:a=45,b=12時(shí),調(diào)用該函數(shù)后,c=5142
注意:部分源程序存在文獻(xiàn)PROG1.C中。數(shù)據(jù)文獻(xiàn)IN.DAT中的數(shù)據(jù)不得修
改。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入
你編寫(xiě)的若干語(yǔ)句。
4、B:"r"fsft
M:(d%2=0)s/=10;
P:*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);
5.填空
給定程序中已建立一種帶有頭結(jié)點(diǎn)的單向鏈表,鏈表中的各節(jié)點(diǎn)按結(jié)點(diǎn)數(shù)據(jù)域中
的數(shù)據(jù)遞增有序鏈表。函數(shù)fun的功能是:把形參x日勺值放入一種新結(jié)點(diǎn)并插
入到鏈表中,插入后結(jié)點(diǎn)數(shù)據(jù)域時(shí)值仍保持遞增有序。
typedefstruct1ist
(intdata;
structlist*next;
}SLIST;
voidfun(SLIST*h,intx)
{SLIST*p,*q,*s;
s=(SLIST*)malloc(sizeof(SLIST));
/**********found**********/
s—>data=___1;
q=h;
p=h->next;
whi1e(p!=NULL&&x>p->data){
/**********found**********/
q=2;
p=P->next;
)
s->next=p;
/********d**********/
q—>next=___3____;
)
修改
給定程序MOD".C中函數(shù)fun的功能是:計(jì)算正整數(shù)num的各位上的數(shù)字之
積。例如,若輸入:252,則輸入應(yīng)當(dāng)是:20.若輸入:202,則輸出應(yīng)當(dāng)是:0.
longfun(longnum)
(
/************found************/
1ongk;
do
{k*=num%10;
/*******ound************/
num\=10;
}whi1e(num);
return(k);
)
請(qǐng)編寫(xiě)一種函數(shù)fun,它的功能是:它的功能是:計(jì)算n門課程的平均分,計(jì)算成果
作為函數(shù)值返回。
例如:若有5門課程『、J成績(jī)是:90.5,72,80,61.5,55
則函數(shù)的值為:71.80
5、B:xps
M:1ongk=1;num/=10;
P:inti;floatave=0.0;for(i=0;i<n;i++)ave=ave
+a[i];ave=ave/n;returnave;
6.填空
給定程序中已建立一種帶有頭結(jié)點(diǎn)由1單向鏈表,在main函數(shù)中將多次調(diào)
用fun函數(shù),沒(méi)調(diào)用一次fun函數(shù),輸出鏈表尾部結(jié)點(diǎn)中的數(shù)據(jù),并釋放該節(jié)
點(diǎn),是鏈表縮短。
voidfun(SLIST*p)
{SLIST*t,*s;
t=p—>next;s=p;
while(t->next!=NULL)
{s=t;
/**********f0und**********/
t=t->1;
}
/********und**********/
printf(“%d",—2—);
s—>next=NULL;
/**********found**********/
free(3);
)
修改
給定程序M0DI1.C中函數(shù)fun的功能是:將字符串中的字符按逆序輸
出,單補(bǔ)變化字符串中日勺內(nèi)容。
例如,若字符串味abed,則應(yīng)輸出:deba
/************f0口nd************/
fun(chara)
{if(*a)
{fun(a+1);
/************Cund************/
printf(M%cH*a);
)
)
程序
請(qǐng)編寫(xiě)一種函數(shù)fun,他日勺功能是:比較兩個(gè)字符串的長(zhǎng)度(不得調(diào)用c語(yǔ)
言提供日勺求字符串長(zhǎng)度日勺函數(shù)),函數(shù)返回較長(zhǎng)的字符串。若兩個(gè)字符串長(zhǎng)度
相似,則返回第一種字符串。
例如,輸入beijing<CR>shanghai<CR>(<CR>為回車鍵),函數(shù)將
返回shanghai
6、B:nextt->datat
M:fun(char*a)printf(M%c",*a);
P:inti;char*p=s,*q=t;
for(i=0;*p&&*q;i++)
(
P++;q++;
)
if(*p==0&&*q==0)returns;
if(*p)returns;elsereturnt;
7.填空
給定程序中建立一種帶有頭結(jié)點(diǎn)的單向鏈表,鏈表中日勺各節(jié)點(diǎn)按數(shù)據(jù)域
遞增有序連接。函數(shù)fun日勺功能是:刪除鏈表中數(shù)據(jù)域值相似日勺結(jié)點(diǎn),使之只
保留一種
typedefstructlist
{intdata;
structlist*next;
}SLIST;
voidfun(SLIST*h)
SLIST*p,*q;
p=h->next;
if(p!=NULL)
{q=p->next;
while(q!=NULL)
{if(p->data==q->data)
{p—>next=q—>next;
/**********fbund**********/
free(1);
/**********found**********/
q=p—>一2;
)
else
{P=q;
/**********rund**********/
Q=q->一3一;
)
}
}
}
修改
給定程序MODI1.C中函數(shù)fun的功能是:用選擇法對(duì)數(shù)組中的n個(gè)元素按
從小到大的次序進(jìn)行排序。
voidfun(inta[],intn)
{inti,j,t,p;
for(j=0;j<n—1;j++){
/************Cund************/
P=j
for(i=j:i<n;i++)
if(ali]<a[p])
/************found************/
p=j;
t=a[p];a[p]=a[j];a[j]=t;
)
)
請(qǐng)編寫(xiě)一種函數(shù)fun,它的功能是:求出1到m之間(含m)能被7或11
整除的所有整數(shù)放在數(shù)組a中,通過(guò)n返回這些數(shù)的個(gè)數(shù)。例如,若傳3送給m
的之位50,則程序輸出:7111421221833354244
49
答案:
7、B:qnextnext
M:P=j;p=i;
P:inti;*n=0;
fbr(i=7;i<=m;i++)
if((i%7==0)|I(i%11==0))a[(*n)++]=i;
8.填空
給定程序中,函數(shù)fun的Jgongn是:在帶有頭結(jié)點(diǎn)的I單向鏈表中,查找
數(shù)據(jù)域中值為ch的結(jié)點(diǎn)。找到后通過(guò)函數(shù)值返回改結(jié)點(diǎn)在鏈表中所處的次序
號(hào):若不存在值為ch的結(jié)點(diǎn),函數(shù)返回0值
typedefstruct1ist
{intdata;
structlist*next;
}SLIST;
SL1ST*creat1ist(char*);
voidoutlist(SLIST*);
intfun(SLIST*h,charch)
{SLIST*p;intn=0;
p=h->next;
/*********found**********I
while(p!=___1)
n++;
/**********found**********/
if(p->data==ch)return2___;
eIsep=p->next;
}
return0;
)
修改
給定程序MODILC中函數(shù)fi】n的功能是:刪除p所指字符串中的所有
空白字符(包括制表符,回車符及換行符)
輸入字符串是用“#"結(jié)束輸入。
fun(char*p)
{inti,t;charc[801;
/************found************/
For(i=0,t=0;pfi];i++)
if(!isspace(*(p+i)))c[t++]=p[i];
/************found************/
c[U="\0";
strcpy(p,c);
)
程序
請(qǐng)編寫(xiě)一種函數(shù)fun,它的功能是:將ss所指字符串中所有下標(biāo)為奇數(shù)位置上的
字母轉(zhuǎn)換成大寫(xiě)(若該位置上不是字母,則不轉(zhuǎn)換)
例如:若輸入“abc4EFg",則應(yīng)輸出“aBc4Efg二
答案:
8、B:NULLnhead,ch
M:forc[t]='\0
P:inti;for(i=1;i<str1en(*ss);i+=2){if(ss[i]>=
'a'&&ss[i]<=?/)ss[i]-=32;
9.填空
給定程序中,函數(shù)fun日勺功能是:記錄出帶有頭結(jié)點(diǎn)的單向鏈表中的I個(gè)數(shù),
寄存在形參n所指的存儲(chǔ)單元中。
voidfun(SLIST*h,int*n)
{SLIST*p;
/**********found**********/
―1二0;
p=h->next;
while(p)
{(*n)++;
/**********found**********/
P=p->____2;
}
)
main()
{SLIST*head;
inta[N]={12,87,45,32,91,16,20,48),num;
head=creat1ist(a);outlist(head);
/*********und**********/
fun(___3___,&num);
printf(n\nnumber=%d\nM,num);
)
修改
給定程序MODIl.C中函數(shù)fun的功能是:求出s所指字符串中最終一
次出現(xiàn)日勺t所指子字符串日勺地址,通過(guò)函數(shù)返回值返回,在主函數(shù)中輸出從此地
址開(kāi)始日勺字符串;若未找到,則函數(shù)值為NULL
例如:當(dāng)字符串中的內(nèi)容為“abcdefabcdx”t中的內(nèi)容為例如時(shí),輸出的成果
應(yīng)是:abcdx
當(dāng)字符串中的內(nèi)容為“abcdefabcdx”t中區(qū)I內(nèi)容為“abd”時(shí),則程序輸出未找
到信息notbefound
char*fun(char*s,char*t)
char*p,*r,*a;
/************fQ血d************/
a=Nul1;
whi1e(*s)
{P=s;r=t;
while(*r)
/************found************/
if(r==p)
{r++;p++;}
elsebreak;
if(*r=='\0')a=s;
s++;
)
returna;
)
程序
函數(shù)fun的功能是:將s所指字符串中除了下標(biāo)問(wèn)為偶數(shù),同步ASCII值也為
偶數(shù)的字符外,其他的所有刪除伴中剩余字符所形成的一種新串放在t所指的
數(shù)組中
例如,若s所指的字符串中日勺內(nèi)容為“ABCDEFG123456",其中字符A的IASCII
碼味奇數(shù),因此應(yīng)當(dāng)刪除,其中字符b日勺ASCII碼值為偶數(shù),不過(guò)在數(shù)組中的下標(biāo)
為基數(shù),因此也當(dāng)刪除;
答案
9、B:*nnexthead
M:a=NULL;*r==*p
P:inti,j=0;
for(i=0;i<strlen(s);i+=2)
if(s[i]%2==O)t[j++]=s[i]:
t[j]=0;
10.填空
給定程序中,函數(shù)fun的功能是:計(jì)算出帶有頭結(jié)點(diǎn)的單向鏈表中各結(jié)點(diǎn)數(shù)據(jù)域
中值之和作為函數(shù)的返回值。
intfun(SLIST*h)
(SLIST*p:ints=0:
p=h->next;
while(p)
(
/**********found**********/
s+=p->1;
/**********砧und**********/
P=P->____2____
)
returns;
)
修改
給定程序M0DI1.C中函數(shù)fun的功能是:將s所指字符串中出現(xiàn)的與11所指字
符串相似的字串所有替代成12所指字符串,所形成的新串放在w所指口勺數(shù)組中,
在此處,規(guī)定t1和t2所指字符串的長(zhǎng)度相似。
intfun(char*s,char*tl,char*t2,char*w)
(
inti;char*p,*r,*a;
strcpy(w,s);
whi1e(*w)
{P=w;r=tl;
/************found************/
whi1e(r)
if(*r==*p){r++;p++;}
elsebreak;
if(*r=='O')
aw;rt2;
while(*r){
/************Cund************/
*a=*r;a++;r++
)
w+=strien(t2);
)
e1sew++;
)
)
程序
函數(shù)fun的功能是;將s所指字符串下標(biāo)為偶數(shù)的字符刪除,串中剩余字符形成的
新串放在t所指的數(shù)組中
例如:當(dāng)s所指字符串中的內(nèi)容為:“ABCDEFGHIJK”
在t所指數(shù)組中的內(nèi)容應(yīng)是“BDFHJ”
10、B:datanexthead
M:*rr++;
P:inti,j=0;for(i=1;i<str1en(s);i+=2)t[j++]
=slij;t[j]=0;
11.填空
人員記錄有編號(hào)和出生年月日構(gòu)成,N名人員的數(shù)據(jù)已在主函數(shù)中存入構(gòu)
造體數(shù)組std中,且編號(hào)唯一。函數(shù)fun的功能是:找出數(shù)據(jù)中H勺編號(hào)為空串o
/**********found**********/
1fun(STU*std,char*num)
{inti;STUa={”",9999,99,99};
for(i=0;i<N;i++)
/**********found**********/
if(strcmp(___2___,num)==0)
/**********found**********/
return(__3一);
returna;
}
修改
給定程序MODIl.C中函數(shù)fun的功能是:從s所指字符串中,找出與
t所指字符串相似的字串的個(gè)數(shù)作為函數(shù)返回值
例如,當(dāng)s所指字符串中的內(nèi)容為:“abcdabfab",t所指字符串的內(nèi)容為:
“ab”則函數(shù)返回整數(shù)3
intfun(char*s,char*t)
(
intn;char*p,*r;
0;
while(*s)
{p=s;r=t;
while(*r)
if(*i?二二*p){
/***********und************/
r++;p++
}
elsebreak:
/***********f0und************/
if(r=='VO1)
n++;
s++;
)
returnn;
)
函數(shù)fun的功能是:將s所指字符串中ASCII值為偶數(shù)的字符刪除,串中
剩余字符形成一種新串放在t所指的數(shù)組中
例如,若s所指字符串中的內(nèi)容為“ABCDEFG12345",其中字符B的
ASCII碼值為偶數(shù).....
答案:
11、B:STUstd[i].numstd[i]
M:p++;*r==>\0';
P:inti,j=0;for(i=0;i<strlen(s);i++)if(s[i]%2)t[j++]=
s[il;t[jl=0;
12.填空
人員的記錄由編號(hào)和出生年月日構(gòu)成N名組員的數(shù)據(jù)已在主函數(shù)中存入構(gòu)造體
數(shù)組sid中,函數(shù)fun的功能是:找出指定出生年份的人員,將其數(shù)據(jù)放在形參k
所指的數(shù)組中,由主函數(shù)輸出另事有函數(shù)值返回滿足指定條件的人數(shù)
intfun(STU*std,STU*k,intyear)
{inti,n=O;
for(i=0;i<N;i++)
/**********found**********/
if(1==year)
/**********found**********/
kLn++]=_2___;
/**********found**********/
return(3);
)
修改
給定程序MODI12oC的功能是:讀入一種整數(shù)k(2《k《1000),打印她的所有
因子
例如2310,則應(yīng)輸出2,3,5,7,11
/************f0und************/
IsPrime(intn);
{inti,m;
m=1;
for(i=2;i<n;i—F)
/************fQUnd************/
if!(n%i)
{m=0;break;}
return(m);
)
設(shè)計(jì)
己知學(xué)生的記錄有學(xué)號(hào)成績(jī)構(gòu)成,N名學(xué)生的數(shù)據(jù)已經(jīng)存入構(gòu)造體數(shù)組a中。編
寫(xiě)函數(shù)fun,函數(shù)功能是:找出成績(jī)最高的學(xué)生記錄,通過(guò)形參指針傳回主函數(shù)
(規(guī)定只有一種最高分)。已給出函數(shù)的首部,請(qǐng)完畢該函數(shù)
12、B:std[i].yearstd[i]nM:分號(hào)去掉if(!(n%i))
P:inti,max=a[OJ.s,j=0;for(i=1;i<N;i++)i
f(max<a[i].s){j=i;max=a[i].s;}*s=a[j];
13.填空
給定程序通過(guò)定義并賦初值的方式,運(yùn)用構(gòu)造體變量存儲(chǔ)了一名學(xué)生的學(xué)號(hào),姓
名和3們課程的成績(jī),函數(shù)fun的功能是將該學(xué)生的各科成績(jī)都乘以一種系數(shù)a
voidshow(STUtt)
{inti;
printf(H%d%s:U,tt.num,tt.name);
for(i=0;i<3;i++)
printf("%5.1f",tt.score[i]);
printf
)
/**********fbund**********/
voidmodify(1___*ss,floata)
{inti;
for(i=0;i<3;i++)
/**********found**********/
ss->___2___*=a;
)
main()
{STUstd={1,nZhanghuaH,76.5,78.0,82.0);
floata;
printf(M\nTheoriginalnumberandnameandscores:\n");
show(std);
printf(n\nInputanumber:*');scanf(n%f\&a);
/**********found**********/
modify(3___,a);
printf("\nAresu1tofmodifying:\n");
show(std);
)
修改
給定程序MODLC中函數(shù)fun的功能是:求k!(k<13),所求階乘時(shí)值作為函數(shù)值
返回,例如若(k=10,則應(yīng)輸出:3628800
1ongfun(intk)
(
/************found************/
ifk>0
return(k*fun(k-1));
/**********ound************/
elseif(k=0)
return1L;
)
設(shè)計(jì)
程序定義了N*N時(shí)二維數(shù)組。并在主函數(shù)中自動(dòng)賦值,請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功
能是:使數(shù)組左下三角元素時(shí)值乘以n
例如:若n日勺值為3,a數(shù)組日勺值為
13、B:STUscore[i]&stdM:()k==0P:inti,
j;for(i=0;i<N;i++)for(j=0;j<=i;j++)a[i][j1
*=n;
14.填空
給定程序中,函數(shù)fun的功能是:將形參所指構(gòu)造體數(shù)組中的三個(gè)元素按num組
員進(jìn)行升序排列
/**********found**********/
voidfun(PERSON_1—)
(
/**********found**********/
2temp;
if(stdL0].num>std[1].num)
{temp=std[0];std[O]=std[l];std[1]=temp;}
if(std[0].num>std[2].num)
{temp=std[0];stdl0]=std[2];std[2]=temp;}
if(std[1].num>std[2].num)
(temp=std[l];std[l]=std[2];std[2]=temp;}
)
main()
(PERSONstdf]={5,MZhanghu",2,"WangLi",6,nLinMin'1};
inti;
/*********found**********/
fun(_3);
printf("\nTheresultis:\n");
for(i=0;iv3;i++)
printf(u%d,%s\nn,std[i].num,std[);
)
修改
給定程序MODIl.c中函數(shù)fun的功能是:將m個(gè)字符串連接起來(lái)構(gòu)成一種新
串,放入pt所指存儲(chǔ)區(qū)中
intfun(charstr[If10],intm,char*pt)
{
/************於und************/
Intk,q,i;
for(k=0;k<m;k++)
{q=strlen(str[k]);
for(i=0;i<q;i++)
/************found************/
pt[i]=str[k,i];
pt+=q;
pt[0]=0;
}
)
設(shè)計(jì)
程序定義了N*N的二維數(shù)組,并在主函數(shù)中自動(dòng)賦值,請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的
功能是:使數(shù)組左下三角元素中日勺值所有值0
14、B:*stdPERSONstdM:intstr[k][i]P:inti,j;fo
r(i=0;i<N;i++)for(j=0;j<=i;j++)a[ij[j]=0;
15.填空
給定程序中,函數(shù)fun的功能是:將形參std所指構(gòu)造體數(shù)組中年齡最大者的數(shù)據(jù)
作為函數(shù)值返回,并在主函數(shù)中輸出
STDfun(STDstd[],intn)
{STDmax;inti;
/**********found**********/
max=1;
for(i=l;iVn;i++)
/**********^Qund**********/
if(max.age<___2)max=std[i];
returnmax;
)
main()
{STDstd[5]={"aaau,l7;'bbb';16,"cccH,18,Mddd",17,
eee",15};
STDmax;
max=fun(std,5);
printf(u\nTheresult:\n");
I******und**********/
printf("\nName:%s,Age:%d\nH,3___,max.age);
)
修改
給定程序MODH.c中函數(shù)fun的功能是:實(shí)現(xiàn)兩個(gè)整數(shù)的互換
例如給a和b分別輸入60和65,輸出為:a=65b=60
/**********fQund**********/
voidfun(inta,b)
(intt;
/**********found**********/
t=b;b=a;a=t;
}
設(shè)計(jì)
請(qǐng)編制一種函數(shù)fun,tt指向一種M行N列H勺二維數(shù)組,求二維數(shù)組每列中最小
元素,并以此放入pp所指一維數(shù)組中。二維數(shù)組中的數(shù)已在主函數(shù)中賦予
15B:*stdstd[i].agemax.nameM:int*bt=*b;*b=
"a;*a=i;P:inti,j,min,k;fbr(i=0;i<N;
i++){min=tt[O][i];k=0;for(j=l;j<M;j++)
if(min>tt[j][i]){min=tt[j][i];k=j;}pplij=
tt[k][i];}
16.填空
程序通過(guò)定義并賦初值的方式,運(yùn)用構(gòu)造體變量存儲(chǔ)了一名學(xué)生的信息,函數(shù)fun
的功能是輸出這位學(xué)生的信息
/**********fQund**********/
voidshow(STU___1)
{inti;
printf("\n%d%s%c%d-%d—%d",tt.num,tt.name,tt.sex,
tt.birthday.year,tt.birthday.month,tt.birthda
y.day);
for(i=0;iv3;i++)
/**********found**********/
printf("%5.1fH,2—);
n
printf(\n");
)
main()
{STUstd={l;,ZhanghuaM;M/,1961,10,8,76.5,78.0,82.0};
printf(H\nAstudentdata:\nH);
/**********found**********/
show(3);
)
修改
給定程序MODH.c中函數(shù)fun的功能是:求出數(shù)組中最大數(shù)和次大數(shù),并把最
大數(shù)和a[0]中時(shí)數(shù)對(duì)調(diào),次最大數(shù)和a[1]中的書(shū)對(duì)調(diào)
intfun(int*a,intn)
{inti,m,t,k;
for(i=0;i<2;i++){
/**********found**********/
m=0;
for(k=i+1;k<n;k++)
/**********found**********/
if(a[k]>a[m])k=m;
t=a[i];a[i]=a[m];a[m]=t;
}
)
設(shè)計(jì)
請(qǐng)編寫(xiě)一種函數(shù)unsignedfun,w是一種大與10的無(wú)符號(hào)整數(shù),若w是n為日勺整
數(shù),函數(shù)求出w的低n?l位時(shí)數(shù)作為函數(shù)值返回
例如w為5923則函數(shù)返回923;
16B:tttt.score[i]stdM:m=im=k
P:if(w>l0000)w%=10000;eIseif(w>1000)w%=
1000;elseif(w>100)w%=100;elseif(w>10)w%=10;return
w;
17.填空
給定程序中,函數(shù)fun的功能是:對(duì)形參ss所指字符串?dāng)?shù)組中日勺M個(gè)字符串按長(zhǎng)
度由短到長(zhǎng)進(jìn)行排序。Ss所指字符串?dāng)?shù)組中共有M個(gè)字符串,且串長(zhǎng)《N
voidfun(char(*ss)[N])
{inti,j,k,n[MJ;chart[NJ;
for(i=0;i<M;i++)n[i]=strlen(ss[i]);
for(i=0;i<M—1;i++)
k=i;
/**********Sund**********/
for(j=1;j<M;j++)
/**********found**********/
if(n[k]>n[j])2;
if(k!=i)
{strcpy(t,ss[i]);
strcpy(ss[i],ss[k]);
/**********found**********/
strcpy(ss[k],__3___);
n[k]=n[i];
}
I
}
給定程序MODI。C中函數(shù)fun日勺功能是:判斷ch中字符與否與str所指串中
的某個(gè)字符相似;若相似,什么也不做,若不同樣,則將其插在串的最終
#inc1ude<string.h>
/*****und**********/
voidfun(charstr,charch)
{while(*str&&*str!=ch)str++;
/**********fbund**********/
if(*str==ch)
{str[0]=ch;
/**********found**********/
str[11=O;
)
)
設(shè)計(jì)
請(qǐng)編制一種函數(shù)fun,函數(shù)功能是吧s所指字符串中的內(nèi)容逆值
17^B:i+1k=jtM:char*str!=0
P:charb[N];inti=0,j;for(j=strlen(s)-1;j>=
0;j--)b[i++]=s[j];b[i]=0;strcpy(s,b);
18.填空
給定程序中,函數(shù)fun的功能是:求出形參ss所指日勺字符串?dāng)?shù)組中最長(zhǎng)字符
串的長(zhǎng)度,其他字符串左邊用字符*補(bǔ)齊,使其與最長(zhǎng)的字符串等長(zhǎng),字符串?dāng)?shù)組
中共有M個(gè)字符串
voidfun(char(*ss)[N])
{inti,j,k=0,n,m>len;
for(i=0;i<M;i++)
{len=strlen(ss[i]);
if(i==0)n=len;
if(len>n){
/**********fbund**********/
n=1en;___1___=i;
)
)
for(i=0;i<M;i++)
if(i!=k)
{m=n;
1en=strlen(ss[ij);
/**********f
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024鐵路物業(yè)買賣正式協(xié)議文件版B版
- 2025年度海洋資源開(kāi)發(fā)承包經(jīng)營(yíng)合同3篇
- 商品房銷售合同范本
- 2025年私募基金代持資產(chǎn)清算與分配合同3篇
- 二零二四年度專業(yè)農(nóng)場(chǎng)滅鼠及作物保護(hù)合同2篇
- 2025年度航空航天裝備采購(gòu)合同3篇
- 2025年新能源電動(dòng)車租賃及綠色出行服務(wù)合同范本2篇
- 2025版鋁?;厥绽门c環(huán)保處理服務(wù)合同4篇
- 二零二五年度環(huán)保節(jié)能設(shè)施安全生產(chǎn)合同范本3篇
- 二零二五年高速公路建設(shè)土石方供應(yīng)合同3篇
- 勞動(dòng)合同續(xù)簽意見(jiàn)單
- 大學(xué)生國(guó)家安全教育意義
- 2024年保育員(初級(jí))培訓(xùn)計(jì)劃和教學(xué)大綱-(目錄版)
- 河北省石家莊市2023-2024學(xué)年高二上學(xué)期期末考試 語(yǔ)文 Word版含答案
- 企業(yè)正確認(rèn)識(shí)和運(yùn)用矩陣式管理
- 分布式光伏高處作業(yè)專項(xiàng)施工方案
- 陳閱增普通生物學(xué)全部課件
- 檢驗(yàn)科主任就職演講稿范文
- 人防工程主體監(jiān)理質(zhì)量評(píng)估報(bào)告
- 20225GRedCap通信技術(shù)白皮書(shū)
- 燃?xì)庥邢薰究蛻舴?wù)規(guī)范制度
評(píng)論
0/150
提交評(píng)論