版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
2010年C語言編程題
[選取日期]
2功能:求一分
數(shù)
序列2/1,3/2,5/3,8/5,13/8,21/13…的前nMayBeChanged'*);
項之和。)
說明:每一分數(shù)的分母是前兩項的分母之for(i=0;i<5;i++)
和,每一分數(shù)的分子是前兩項的分子之和(
例如:求前20項之和的值為32.660259。fscanf(IN,"%d",&iIN);
fOUT=fun(iIN);
#include"stdio.h"fprintf(OUT,"%f\nu,fOUT);
floatfun(intn))
(fclose(IN);
/****不*****p「ooi*aIYI**¥*不*****/fclose(OUT);
IntI;)
Floatfl=l,f2=hf3,s=0;
3功能:從鍵盤上輸入任意實數(shù),求出其所對
For(i=l;i<=n;i++)
{f3=fl+f2;應的函數(shù)值。
Fl=f2;z=e的x次幕(x>10)
F2=f3;z=log(x+3)(x>-3)
S=s+f2/fl;z=sin(x)/((cos(x)+4)
)
Returns;#include<math.h>
#include<stdio.h>
/**********j^nd**********/doubley(floatx)
){
main()/**********Program**********/
(Doublez;
floaty;If(x>10)z=exp(x);
y=fun(20);Elseif(x>-3)z=logz(x+3);
printf("y=%f\nn,y);Elsez=sin(x)/(cos(x)+4);
yzj();Return(z);
}
/********************/
yzj()
{)
HLE*IN,*0UT;main()
intiIN,i;{
floatfOUT;floatx;
IN=fopen(',in.dat,,,,,rn);scanf(H%fH,&x);
if(IN==NULL)printf(Hy=%f\nH,y(x));
(yzj();
printf("PleaseVerifyTheCurrerntDir..It
MayBeChanged11);))
OUT=fopen(Hout.dat,,;,wn);yzj()
if(OUT==NULL)(
FILE*IN,*OUT;
printf("PleaseVerifyTheCurrentDir..Itintn;
floati;)
doubleo;main()
IN=fopen(1,in.dat",',r'');{
if(IN==NULL)chars[10];
(printf("輸入8個字符的字符串:");
printf("ReadFileError'*);gets(s);
)fun(s,8);
OUT=fopen(,'out.daf',uwu);printf(H\n%s",s);
if(OUT==NULL)N0N0();
()
printf(HWriteFileError");N0N0()
)(
for(n=0;n<10;n++)inti;
(chara[100];
fscanf(IN/,%f,,&i);FILE*rf,*wf;
o=y(i);rf=fopen(Min.datn,V);
fprintf(OUTJ%ld\n”,o);wf=fopen(Mout.dat",Hwn);
)for(i=0;i<3;i++)
fclose(IN);(
fclose(OUT);fscanf(rf,u%su,&a);
)fun(a,8);
fprintf(wf,H%s",a);
4功能:對長度為8個字符的字符串,將8fprintf(wf,”\n");
個字符按降序排列。}
例如:原來的字符串為CEAedcab,排序后fclose(rf);
輸出為edcbaECA。fclose(wf);
]
#include<stdio.h>
#include<ctype.h>5功能:用do-while語句求1~100的累計
#include<conio.h>和。
intfun(char*s,intnum)
(#include<stdio.h>
/****¥****¥Pro0「am****¥*****/longintfun(intn)
inti,j;{
chart;/**********Prooram**********/
for(i=0;i<num;i++)inti=l,sum=0;
for(j=i+l;j<num;j++)do
if(s[i]<sU]){
(sum=sum+i;
t=s[i];i++;
s[i]=s|j];)
s[j]=t;While(i<=n);
)returnsum;
/********************//********************/
}intt;
voidmain()t=*a;
{*a=*b;
inti=100;*b=t;
printfC1-100的累加和為:%ld\nM,fun(i));/*****¥******¥*******/
wwjt();)
)main()
wwjtO(
(inta,b;
FILE*IN,*OUT;printf("Entera,b:u);
inti;scanf(',%d%d,\&a,&b);
intilN;fun(&a,&b);
longintiOUT;printf("a=%db=%d\nu,a,b);
IN=fopen("in.datn,"rn);yzjo;
if(IN==NULL))
(yzj()
printf(HPleaseVerifyTheCurrerntDir..It(
MayBeChanged");FILE*IN,*OUT;
)inta,b,n;
OUT=fopen(Hout.dat,,,,,wn);IN=fopen(1,in.dat";'r");
if(OUT==NULL)if(IN==NULL)
((
printf("PleaseVerifyTheCurrentDir..Itprintf("ReadFileError11);
MayBeChanged");}
)OUT=fopen(uout.datu/'wn);
for(i=0;i<5;i++)if(OUT==NULL)
((
fscanf(IN;'%dM,&iIN);printf("WriteFileError");
iOUT=fun(iIN);!
fprintf(OUT,u%ld\nu,iOUT);for(n=0;n<5;n++)
)(
fclose(IN);fscanf(IN,n%d%d",&a,&b);
fclose(OUT);fun(&a,&b);
)fprintf(OUT;'a=%db=%d\nn,a,b);
6功能:實現(xiàn)兩個整數(shù)的交換。)
fclose(IN);
例如:給a和b分別輸入:60和65,輸fclose(OUT);
入為:a=65b=60)
7功能:求一個給定字符串中的字母的個數(shù)。
#include<stdio.h>
#include<conio.h>
voidfun(int*a,int*b)#include"stdio.h"
(intfun(chars[])
/**木木¥*****Pro********¥/構(gòu)數(shù),函數(shù)返回1;否則返回0。x
intI,k=O;的值由主函數(shù)從鍵盤讀入,要求不
for(sliJ>=,a,&&s[i]<=,zlls[i]>=,A,&&s[iJ<=,Z,大于100。
)說明:所謂“同構(gòu)數(shù)”是指這樣的數(shù),
k++;這個數(shù)出現(xiàn)在它的平方數(shù)的右邊。
returnk;例如:輸入整數(shù)5,5的平方數(shù)是25,5
/**********j^nd¥**不****¥*/是25中右側(cè)的數(shù),所以5是同構(gòu)數(shù)。
}—
main()#include"stdio.h"
(intfun(intx)
charstr[]=uBestwishesforyou!1';(
intk;/**********Program**********/
k=fun(str);Intk;
printf(Mk=%d\nH,k);k=x*x;
yzj();if((k%10==0)ll(k%100==0))
)return1;
yzj()else
(return0;
FILE*IN,*OUT;/**********]End**********/
charsIN[80];)
intiOUT,i;main()
IN=fopen(⑵.in”,T');(
if(IN==NULL)intx,y;
(printf(n\nPleaseenteraintegernumbers:");
printf("PleaseVerifyTheCurrerntDir..Itscanf(”%d”,&x);
MayBeChanged'*);if(x>100)
){
OUT=fopen(n21.outn,Hwn);printf(udataerror!\nu);
if(OUT==NULL)exit(O);
{)
printf("PleaseVerifyTheCurrentDir..Ity=fun(x);
MayBeChanged");<f(y)
)printf(u%dYES\nH,x);
for(i=0;i<10;i++)else
(printf(u%dNO\n",x);
fscanf(IN;'%sn,sIN);yzj();
iOUT=fun(sIN);)
fprintf(OUT,u%d\n';iOUT);yzj()
)(
fclose(IN);FILE*IN,*OUT;
fclose(OUT);intn,t;
|inti[5];
into;
8功能:判斷整數(shù)x是否是同構(gòu)數(shù)。若是同
IN=fopen(nin.dat";'ru);
if(IN==NULL)
(intn,m,result;
printf(MReadFileError**);scanf(0%d%dH,&n,&m);
)result=gcd(n,m);
OUT=fopen(Mout.dat,\nwn);printf(Hthegcdis%d\n",result);
if(OUT==NULL)yzj();
()
printf(HWriteFileError");yzj()
)(
for(t=0;t<5;t++)FILE*IN,*OUT;
(intm,n;
fscanf(IN,n%dn,&n);inti[2];
o=fun(n);into;
fprintf(OUT,H%d\nM,o);IN=fdpen("in.dat,',"r");
)if(IN==NULL)
fclose(IN);(
fclose(OUT);printfC'ReadFileError1');
Jj\
OUT=fopen("out.dat","w");
9功能:用輾轉(zhuǎn)相除法求兩個整數(shù)的最大公
if(OUT==NULL)
約數(shù)。(
printf("WriteFileError");
#include<stdio.h>)
intgcd(intn,intm)for(n=0;n<6;n++)
((
/**********Prooj*am*********55t/for(m=0;m<2;m++)
intr,t;(
ilf(n<m)fscanf(IN,"%d",&i[m]);
()
t=n;o=gcd(i[0],i[l]);
n=m;fprintf(OUT,"%d\n",o);
m=t;)
)fclose(lN);
r=n%m;fclose(OUT);
while(r!=0))
{10功能:計算n門課程的平均值,計算結(jié)
n=m;
m=r;果作為函數(shù)值返回。
r=n%m;例如:若有5門課程的成績是:92,76,
|69,58,88,則函數(shù)的值為76.599998.
retrun(m);
/********************/#include"stdio.h"
)floatfun(inta[],intn)
main(){
/**木木¥*****Pro********¥/首、尾字符外,將其余5個字符按降序排列。
inti;例如:原來的字符串為CEAedca,排序
floaty=0;后輸出為CedcEAa?
for(i=0;i<n;i++)—
y+=a[i];#include<stdio.h>
y=y/n;#include<ctype.h>
returny;#include<conio.h>
/**********]End**********/intfun(char*s,inlnum)
}(
main()/**********oram**********/
(IntI,j;
inta[]={92,76,69,58,88);Chart;
printf("y=%f\n",fun(a,5));For(i=1;i<num-l;i++)
yzj();For(j=^j+l;j<num-l;j++)
}
yzj()
(/**¥*******j^nd**¥*¥****¥/
FILE*IN,*OUT;)
intiIN[10],i,j;main()
floatfOUT;(
IN=fopen(,,in.dat",,,rH);chars[10J;
if(IN==NULL)prinlf("輸入7個字符的字符串:");
(gets(s);
printf(nPleaseVerifyTheCurremtDir..Itfun(s,7);
MayBeChanged");printf("\n%sM,s);
)NONO();
OUT=fopen(Mout.datu,uwu);)
if(OUT==NULL)NONO()
((
printf("PleaseVerifyTheCurrentDir..Itinti;
MayBeChanged");chara[100];
}FILE*rf,*wf;
for(j=0;j<5;j++)rf=fopen("in.dat","r");
(wf=fopen(Hout.dat","w");
for(i=0;i<5;i++)for(i=0;i<3;i++)
fscanf(IN,"%d",&iIN[i]);{
fOUT=fun(iIN,5);fscanf(rf,n%s",&a);
fprintf(OUT,"%f\nH,fOUT);fun(a,7);
)fprintf(wf,,,%sH,a);
fclose(IN);fprintf(wf,n\nu);
fclose(OUT);)
|fclose(rf);
fclose(wf);
11功能:對長度為7個字符的字符串,除1
printf(uWriteFileError*');
12功能:從低位開始取出長整型變量s中
)
偶數(shù)位上的數(shù),依次構(gòu)成一個新數(shù)放在t中。for(n=0;n<5;n++)
例如:當s中的數(shù)為:7654321時,t(
中的數(shù)為:642。fscanf(IN,n%ldu,&i);
—m=fun(i,t);
#include"stdio.h"fprintf(OUT;'%ld\nM,m);
longfun(longs,longt)}
(fclose(IN);
]**********oram**********/fclose(OUT);
longsl=10;}
s/=10;
t=s%10;13功能:編寫函數(shù)fun計算下列分段函數(shù)
while(s>0)的值:
(x八2+x+6x<0且xW?3
S=s/100;f(x)=xA2-5x+6OWxclO且x#2
t=s%10*sl+t;及xW3
sl=sl*10;xA2-x-l其它
)—
/********************/#include"stdio.h"
)floatfun(floatx)
returnt;(
/¥**¥*不****。****不****/
}Prora
main()floaty;
(if(x<0&&!=-3.0)
longs,t,m;y=x*x+x+6;
printf("\nPleaseenters:H);scanf(H%ldu,&s);elseif(x>=0&&x<10.0&&x!=2.0&&x!=3.0)
m=fun(s,t);y=x*x?5*x+6;
printf("Theresultis:%ld\n",m);elsey=x*x-x-l;
yzj();returny;
)/********************/
yzj())
(main()
FILE*IN,*OUT;{
intn;floatx,f;
longprintf("Inputx=n);
IN=fopen("in.dat”,T');scanf(H%r,&x);
if(IN==NULL)f=fun(x);
(printf(Hx=%f,f(x)=%f\n",x,f);
printf(nReadFileError'1);yzj();
))
OUT=fopen(Mout.dat,,;,w");yzj()
if(OUT==NULL)(
FILE*IN,*OUT;
intn;inta[16J,i;
floati;
floato;for(i=0;i<16;i++)
IN=fopen(,'in.dat","r");a[i]=rand()%(30)+15;
if(IN==NULL)for(i=0;i<16;i++)
(printf(u%3du,afil);
printf(MReadFileError'*);printf(M\n---------------------\nM);
)soil(a,16);
OUT=fopen(Hout.dat,V,wn);for(i=0;i<16;i++)
if(OUT==NULL)printf(n%3dn,a[i]);
(yzj();
printf(HWriteFileError1');)
)yzj()
for(n=0;n<10;n++)(
(FILE*IN,*0UT;
fscanf(IN;'%r,&i);intn;
o=fun(i);inti[10];
fprintf(OUT,u%f\nM,o);into;
)IN=fopen(nin.datH;'rn);
fclose(IN);if(IN==NULL)
fclose(OUT);(
}printf("ReadFileError");
)
14功能:編寫函數(shù)用冒泡排序法對數(shù)組中OUT=fopen("out.dat","w");
的數(shù)據(jù)進行從小到大的排序。if(OUT==NULL)
f
\
#include<stdlib.h>printf(uWriteFileError1');
#include<stdio.h>)
voidsort(inta[],intn)for(n=0;n<10;n++)
|(
/**********Program**********/fscanf(IN,u%d';&i[n]);
inti,j,t;)
for(i=0;i<n-l;i++)sort(iJO);
for(j=0;j<n-l;j++)for(n=0;n<10;n++)
if(aU]>aU+l])fprintf(OUT,"%d\n”,i[n]);
{fclose(IN);
t=a[j];fclose(OUT);
a[j]=a[j+l];1
a[j+l]=t;
題月:用函數(shù)求一個階方陣右下三
|15N
/**********]End**********/角元素的和(包括副對角線上的元素)。
f
main()#include<stdlib.h>
(#include"stdio.hu
#defineN3for(n=0;n<3;n++)
intsum(inta[][N])fscanf(IN,u%du,&i[m][n]);
(o=sum(i);
/**********Prooram**********/fprintf(OUT,M%d\n,r,o);
intI,j,k=O;fclose(IN);
for(i=0;i<N;i++)fclose(OUT);
for(j=N-1;j<N;j++)}
k=k+a[i][j];
10功能:根據(jù)整型形參m,計算如下公式
return(k);
/********************/的值:y=sin(m)*10o
)例如:若m=9,則應輸出:4.121185
main()—
(#include"stdio.h"
inta[N][N],i,j;#include"math.h"
for(i=0;i<N;i++)doublefun(intm)
((
for(j=0;j<N:j++)/**¥*******Pro0「am不*********/
(doubley=0;
a[i][j]=rand()%(10)+10;y=sin(m)*10;
printf("%3d",a[i][j]);return(y);
}/********************/
printfC'Xn");)
)main()
printf(n------------------------------==\n");{
printf(Hsum=%5d\nu,sum(a));intn;
yzj();printf(nEntern:");
)scanf(M%dH,&n);
yzj()printf(H\nTheresultis%lf\nn,fun(n));
(yzj();
FILE*IN,*OUT;)
intm,n;yzj()
inti[3][3];(
into;FILE*IN,*0UT;
IN=fopen("in.dat",T');ints,i;
if(IN==NULL)intt;
(floato;
printf("ReadFileError");IN=fopen("in.dat";T);
)if(IN==NULL)
OUT=fopen(Mout.datu,uw°);(
if(OUT==NULL)printf("ReadFileError");
()
printf(HWriteFileError");OUT=fopen(nout.datn,nwu);
)if(OUT==NULL)
for(m=0;m<3;m++)
printf(MWriteFileError");}
)Str[i-l]=,\O,;
for(i=0;i<5;i++)/***¥*¥*****¥****¥***/
(1
fscanf(INJ%d”,&t);yzjO
o=fun(t);(
fprintf(OUT;,%f\n,,,o);FILE*IN,*OUT;
)intn;
fclose(IN);chari[200J;
fclose(OUT);charof200];
)IN=fopen(Min.datM,,,rn);
if(IN==NULL)
17功能:編寫函數(shù)fun(str,i,n),從字符串(
str中刪除第i個字符開始的連續(xù)n個字符(注printf("ReadFileError");
意:str⑼代表字符串的第一個字符)。)
OUT=fopen("out.dat"」w");
#include"stdio.h"if(OUT==NULL)
main()(
(printf(uWriteFileError");
charstr(81];)
inti,n;fscanf(IN,"%s",i);
printf("請輸入字符串str的值:\n");fun(i,2,8);
scanf("%s",str);fprintf(OUT,n%s\nH,i);
printf("你輸入的字符串str是:%s\n",str);fclose(IN);
printf("請輸入刪除位置i和待刪字符個數(shù)nfclose(OUT);
的值:\n");}
scanf("%d%d",&i,&n);
while(i+n-l>strlen(str))18功能:統(tǒng)計出若干個學生的平均成績,
(最高分以及得最高分的人數(shù)。
printf("刪除位置i和待刪字符個數(shù)n的值例如:輸入10名學生的成績分別為92,
錯!請重新輸入i和n的值\n”);87,68,56,92,84,67,75,92,66,則輸
scanf(u%d%d,,,&i,&n);出平均成績?yōu)?7.9,最高分為92,得最高分
)的人數(shù)為3人。
fun(str,i,n);
printf("刪除后的字符串str是:%s\n”,str);#include"stdio.h"
yzj();floatMax=0;
)intJ=0;
fun(charstr[],inti,intn)floatfun(floatarray[],intn)
((
/******
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東省濟寧市金鄉(xiāng)縣2023-2024學年六年級下學期期末考試英語試卷
- 24.1.4 圓周角 人教版數(shù)學九年級上冊堂堂練(含答案)
- 陜西省西安國際港務區(qū)鐵一中陸港初級中學2024-2025學年八年級上學期第一次月考數(shù)學試題(無答案)
- 人力資源預算編制與控制的最佳實踐案例分析
- 股權(quán)結(jié)構(gòu)對公司財務預測準確性的提升作用研究
- 江蘇省南京市江寧區(qū)湖熟片達標名校2024屆中考數(shù)學最后一模試卷含解析
- 2023年天水武山縣人社局招聘城鎮(zhèn)公益性崗位工作人員考試試題及答案
- 2023年南通市崇川區(qū)招聘園區(qū)專業(yè)人才考試試題及答案
- 2023年廣東珠海高新技術(shù)產(chǎn)業(yè)開發(fā)區(qū)綜合治理局招聘職員考試試題及答案
- 2023年都江堰市教育局所屬市教師管理中心社會引進筆試真題
- 報價單(報價單模板)
- 2023年上海臨港外服人力資源有限公司招聘筆試題庫及答案解析
- 二年級口算題卡10000道(100以內(nèi)加減法)
- 2507超級雙相不銹鋼性能規(guī)范
- 二年級看圖寫話(word)
- 學習解讀《退役的軍人保障法》內(nèi)容完整PPT課件
- 自考00067《財務管理學》全套課件(完整版)
- 教師勝任力文獻綜述
- 德邦物流貨物運輸服務合同(最新版)
- 篩分振動篩更換施工方案(完整版)
- 小學語文綜合實踐活動案例《走進童話王國》
評論
0/150
提交評論