c語言吧-湖南科技大學(xué)2010年C語言上機題庫_第1頁
c語言吧-湖南科技大學(xué)2010年C語言上機題庫_第2頁
c語言吧-湖南科技大學(xué)2010年C語言上機題庫_第3頁
c語言吧-湖南科技大學(xué)2010年C語言上機題庫_第4頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

第一套1、設(shè)計ー個程序,從鍵盤輸入3個整數(shù),按由大到小的順序輸出。#include<stdio.h>main()(inta,b,c,t;printf(”請輸入3個整數(shù)(用逗號分開):つ;scanf(n%d,%d,%dn,&a,&b,&c);if(a<b)(t=a;a=b;b=t;)if(b<c){t=b;b=c;c=t;}if(a<b)(t=a;a=b;b=t;printf(n%d,%d,%d\nu,a,b,c);}2、求!+3+5+7+ +95+97+99 的和0#include<stdio.h>main()(intn,sum=0;for(n=l;n<100;)(sum=sum+n;ri—n+2;}printf(H%d\nn,sum);}3、寫ー個函數(shù),從鍵盤輸入ー個整數(shù),如果該整數(shù)為素數(shù),則輸出“此整數(shù)為素數(shù)”,否則輸出“整數(shù)非素數(shù)”。(要求從主函數(shù)輸入整數(shù))#include<stdio.h>#include<math.h>main()intx,n,flag=l;scanf(H%dH,&x);for(n=2;n<=x-l;n++)if(x%n==O)flag=O;if(flag==l)printf(H%d是素數(shù)、n",x);elseprintf(H%d不是素數(shù)Xn”,x);}第二套4、從鍵盤輸入10個整數(shù),保存在ー個數(shù)組中,將這10個數(shù)逆序輸出,然后求出這10個數(shù)的和并輸出。#include<stdio.h>main()(shorti,a[10],total=0;printf("請連續(xù)輸入10個整數(shù)(空格分開):\nn);for(i=0;i<10;i++)scanf(H%dH,&a[i]);printf("這!0個整數(shù)逆序輸出得:'iT);for(i=9;i>=0;i—)printf(n%5dH,a[i]);for(i=0;i<10;i++)total=total+a[i];printf(n\n這10個整數(shù)的和為:%d\nH,total);}5、輸入!!個國家的英文名,要求按字母先后順序,并按照順序輸出。#include<string.h>#include<stdio.h>main()|char"nationロ={"China''JRussia''JFranceJEngland"JJapan''JUnitedStatesOFAmerice","Australiainti,m;voidsort(char*name[],int);m=sizeof(nation)/sizeof(char*);sort(nation,m);for(i=0;i<m;i++)printf(H%9s\nH,nation[i]);)voidsort(char*name[],intn)/?選擇排序?/|char*t;intij,k;for(i=0;i<n-l;i++)(k=i;for(j=i+l;j<n;j++)if(strcmp(name[k],name[j])>0)k二j;/*第j個元素更小?/if(k!=i)/?最小元素是該趟的第一個元素,則不需要交換刃(t=name[i];name[i]=name[k];name[k]=t;))#include<stdio.h>#include<string.h>voidmain()inta9b;charc[5][20],d[20];for(a=0;a<=4;a++)scanf(H%sH,c[a]);for(a=0;a<=4;a++)for(b=a;b<=4;b++)|if(c[b][0]<=c[a][0])(strcpy(d,c[a]);strcpy(c[a],c[b]);strcpy(c[b],d);})for(a=0;a<=4;a++)printf(n%s\nn,c[a]);6、某年級共有4個班,每班各有30名學(xué)生,有6個科目的考試成績,要求輸出每門課程最高分的學(xué)生的班級、學(xué)號和姓名,并計算各班每個學(xué)生的平均成績并輸出。#include<stdio.h>#defineN14#defineN230#defineN36main()(floatscore[Nl][N2][N3],studav[Nl][N2];intij,k;floatsum;for(i=0;i<Nl;i++)for(j=0;j<N2;j++)for(k=0;k<N3;k++)(printf("請輸入%d班學(xué)號為%d的科目%d成績”nscore[%d][%d][%d]:n,i+lj+l,k+l,iJ,k);scanf(H%fH,&score[i][j][k]);}for(i=0;i<Nl;i++)for(j=0;j<N2;j++)|sum=O;for(k=0;k<N3;k++)sum=sum+score[i][j][k];studav[i][j]=sum/N3;printf「%d班學(xué)號為%(!的學(xué)生的平均成績studav[%d][%d]為:“n%f\nn9i+l,j+l9k+l,studav[i][j]);}第三套7、求從鍵盤上輸入10個數(shù)據(jù)(實數(shù))中的最大值,并求和。#include<stdio.h> floata[10],sum=0;main() inti,maxi;{ printf("請輸入十個的實數(shù):\n”);for(i=0;i<10;i++)scanf(H%f\&a[i]);maxi=O;for(i=l;i<10;i++)(if(a[i]>a[maxi])maxi=i;)printf(n%f\nu,a[maxi]);for(i=0;i<10;i++)sum=sum+a[i];printf(H%f\nu,sum);}#include<stdio.h>main()floata[10],sum=0,max;inti;printf("請輸入十個的實數(shù):\n");for(i=0;i<10;i++)scanf(H%fH,&a[i]);max=a[0];for(i=l;i<10;i++)(if(a[i]>max)max=a[i];)printf(H%f\n*\max);for(i=0;i<10;i++)sum=sum+a[i];printf(H%f\nn,sum);8、給出三角形的三邊A、B、C,求三角形的面積。(先判斷三邊是否能構(gòu)成三角形)。#include<stdio.h>#include<math.h>main()|floata,b,c,area,p;scanグ%f,%f,%f”,&a,&b,&c);p=(a+b+c)/2;if(a+b>c&&a+c>b&&b+c>a){area=sqrt(p*(p-a)*(p-b)*(p-c));printf(HArea=%6.2f\nn,area);}elseprintf(HError\nn);)9、編寫程序求一個字符串的第n個字符開始、長度為m的字串。#include<stdio.h>main()charc[100],s[100];intn,m,i;printf("請輸入一字符串:つ;gets(c);printf(Hn,m的值Xn");scanf(n%d,%dn,&n,&m);for(i=0;i<m;i++)(s[i]=c[n+i-l];)printf(n%sH,s);}第四套:.猜數(shù)游戲,假文噬定一個整數(shù)m=123,然后讓其他人從鍵盤上猜該數(shù)字,如果猜對,輸出“RIGHT”,如果猜錯,則輸出“WRONG”,并且指出設(shè)定的數(shù)字比輸入的數(shù)字大還.編寫程序,用于統(tǒng)計從鍵盤輸入的字符串中的元音字母(a.A.eEiエ。QmU)的個數(shù)。.編寫程序求1-100中所有同構(gòu)數(shù)的個數(shù)(ー個自然數(shù)的平方的末幾位與該數(shù)相同時,該數(shù)就稱為同構(gòu)數(shù),如25二=625)#include<stdio.h>main()intdate;printf(nInputadate:scanf(H%dH,&date);if(date==123)printf(HRIGHT\nn);else{printf(HWRONG\nn);if(date>123)printf(HItisLARGE\nH);elseprintf(nItisSMALL\nn);})#include<stdio.h>main()(charc[50];inti,n=O;scanf(H%sn,c);for(i=0;i<50;i++)if(c[i]!=,\O,)if(中]ニニ'A')n++;if(c[i]=='a')n++;if(c[i]=='E')n++;if(c[i]=='e')n++;ニニT)n++;if(c[i]=='i')n++;if(c[i]ニニ0)n++;if(c[i]=='o')n++;if(c[i]=='U')n++;ニニ’u')n++;}printf("%d\n",n);}#include<stdio.h>main()(intx;for(x二l;xv二100;x++)if(x*x%10==xllx%100==x)printf("%5d",x);

printf(H\nH);}第五套:13從鍵盤接收一整數(shù)x,判斷x是否為含有因子7的正整數(shù),如是,則輸出“YES':否則輸出“NO14編寫一個密単檢測的程序,在程序執(zhí)行時,要求用戶名輸入密碼(標(biāo)準(zhǔn)密碼自己預(yù)先設(shè)定),然后通過字符串比較函數(shù)比較輸入密碼和標(biāo)準(zhǔn)密碼是否相等,若相等,則顯示“ロ令正確’:并轉(zhuǎn)去執(zhí)行后繼程序;若不相等,重新輸入,3次都不相等則終止程序的執(zhí)行。要求自己編寫ー個字符串比較函數(shù),而不使用系統(tǒng)的strcmpO函數(shù)。15編寫實現(xiàn)求s=l!+2!+ +10!.#include<stdio.h>main()(inti;printf("請輸入ー個整數(shù):");scanf(H%dH,&i);if(i%7==0)printf(HYESH);elseprintf(HNOH);}#include<stdio.h>intstrcmp(charstr1[],charstr2[])

inti=0;while(strl[i]==str2[i]&&strl[i]!=,\0,&&str2[i]!=,\0,)i++;returnstrl[i]-str2[i];}main()(charstr[20];intx=0;do|printf(H\nEnterpassword:**);gets(str);if(strcmp(str,**12345**))x++;else(printf(**\nYouarepass!\n**);break;}}while(x<3);

if(x==3)printf(H\nYouarefalrure!\nH);)#include<stdio.h>main()|inti,n,sum=O,s;for(n=l;n<=10;n++)(s=l;for(i=1;i<=n;i++)|s=s*i;}sum=sum+s;)printf(H%dM,sum);)第六套:.編寫程序,能時ー給定的3X4的矩陣,求出其中的最大元素值及其所在的行列號。.求:000中含有5的因子個數(shù)。.求任意一個小于6553S的正整數(shù)的逆序數(shù),并判斷該數(shù)是否為回文數(shù)。

16、#include<stdio.h>main()(intij,row=0,colum=0,max;static inta[3][4]={{l,2,3,4},{9,8,7,6},{10,-10,-4,4));max=a[O][O];for(i=0;i<=2;i++)for(j=0;j<=3;j++)|if(a[i][j]>max)(max=a[i][j];row=i;colum=j;)}printf(nmax=%d,row=%d,colum=%d'',max,row,colum);}17、#include<stdio.h>main()inti,n=O;for(i=l;i<=2000;i++)(if(i%5==0)n++;)printf(H%d\nH,n);)18、#include<stdio.h>main()(longinti,j=O,t?a;printf("輸入ー個小于65535的正整數(shù):つ;scanf(H%ldH,&i);a=i;do{t=i%10;j=j*10+t;i=i/10;

)while(i>0);printf(“它的逆序數(shù)為:%ldHj);if(j==a)printグ它是回文數(shù)");elseprintf(“它不是回文數(shù)”);}19給ー個不多于5位的正整數(shù),要求,求出其位數(shù),并分別打印出每一位數(shù)字,最后按逆序打印出這個正整數(shù)(如,錨入】23.打印出,3ユ】).20.求一個4行ユ列矩陣主對角線元素之和。2I編寫一個程序.判斷從鍵盤稔入的四個字符串是否相同.若相同則輸出“字符串相同’:否則輸出“字符串不同く19、#include<stdio.h>main()(longintx,y=0;intt,n=0;printf(”請輸入ー個不多于5位數(shù)的數(shù):\n”);scanf(”%ld”,&x);printf(”此數(shù)的每一位為(由個位開始):\nH);

while(x>0)(t=x%10;y=y*10+t;x=x/10;n++;printf(H%d\nn,t);)printf("此數(shù)有%d位Xn”,n);printf("此數(shù)的逆序數(shù)為%ld\nH,y);}#include<stdio.h>voidfun(void)|intal9a29a3,a49a5;longa,b;printf("請您輸入ー個5位以內(nèi)的數(shù)\n");scanf(n%ldn,&a);if(a<99999)(printf("您輸入的數(shù)在所求范圍里面al=a/10000;a=a-al*10000;a2=a/1000;a=a-a2*1000;a3=a/100;a=a-a3*100;a4=a/10;a=a-a4*10;a5=a/l;if(al!=O)b二a5*10000+a4*1000+a3*100+a2*10+al;printf("此數(shù)有5位Xn");}elseif(al==0&&a2;=0)|b=a5*1000+a4*100+a3*10+a2;printf("此數(shù)有4位Xn");}elseif(al==0&&a2==0&&a3;=0)b=a5*100+a4*10+a3;printf("此數(shù)有3位Xn");}elseif(al==0&&a2==0&&a3==0&&a4;=0){b=a5*10+a4;printf("此數(shù)有2位Xn");)else{b=a5;printf("此數(shù)有1位Xn”);}printf(H這個數(shù)按逆向表示為%1(1\曖,か;)else{printf("您輸入的數(shù)不在此范圍內(nèi),請您重新輸入:\nH);fun();}main()(fun();)20、#include<stdio.h>main()(inta[4][4],iJ,sum=0;for(i=0;i<4;i++)(for(j=0;j<4;j++)scanf(H%dn,&a[i][j]);}for(i=0;i<4;i++)|for(j=0;j<4;j++)(if(i+j==3lli==j)sum=sum+a[i][j];)printf(H%dn,sum);21、#include<stdio.h>#include<string.h>main()|longt;chara[100],b[100];printf("請您分別輸入2個字符串、n");scanf(H%sH,a);scanf(H%sn,b);t=strcmp(a,b);if(t==O)printf("您輸入的兩個字符串相同Xn”);elseprintグ您輸入的兩個字符串不相同\nu);}

第八套:.輸出100-200之間,能被3整除但不能被?整除的數(shù)。.將一個月份數(shù)字轉(zhuǎn)換成月份的英文名稱。.編寫ー程序,用簡單選擇排序?qū)崿F(xiàn)對5個整數(shù)的排序(從大到小),排序的思路:首先從n個整數(shù)中選出值最大的整數(shù),將它交換到第一個元素位置,再從剰余的n-I個整數(shù)中選出值最大的整數(shù),將它交換到第二個元素的位置,重復(fù)上述操作,直到排序成功。22,#include<stdio.h>main()|intn;for(n=100;n<=200;n++)if(n%3==0&&n%7!=0)printf(n%d\tH,n);)23、#include<stdio.h>main()(intn;printf("請輸入ー個1-12數(shù)字,分別代表著月份:'1”);scanf(H%dH,&n);switch(n)

caseLprintf("您輸入的月份是:January\nn);break;case2:printf("您輸入的月份是:February\nH);break;case3:printf(H您輸入的月份是:March\nu);break;case4:printf(H您輸入的月份是:April\nn);break;case5:printf("您輸入的月份是:May\nH);break;case6:printf("您輸入的月份是:June\nn);break;case7:printf("您輸入的月份是:July\nn);break;case8:printf("您輸入的月份是:Augest\nH);break;case9:printf("您輸入的月份是:September\nH);break;case10:printf("您輸入的月份是:OctoberXn1;break;caseILprintf("您輸入的月份是:November\nn);break;case12:printf("您輸入的月份是:December\nH);break;default:printfC’您的輸入有誤つ;))24^#include<stdio.h>#defineN5voidsmp_selsesort(intr[],intn)/?簡單選擇排序?/|intij,t;for(i=0;i<n;i++)for(j=i+l;j<n;j++)if(r[i]>r[j]){t=r[i];r[i]=r[j];r[j]=t;)}main()

inti,a[N];printf(”請輸入%d個整數(shù):\nn,N);for(i=0;i<N;i++)scanf(H%dH,&a[i]);smp_selsesort(a,N);printf("排序后的輸出為:\iT);for(i=0;i<N;i++)printf(H%5dn,a[i]);)第九套:25編寫ー個程序,實現(xiàn)從鍵盤輸入ー組整數(shù),求該組整數(shù)的平均值,并將大于平均值的整數(shù)輸出。26編寫程序,輸出形狀為直角三角形的九九乘法表。27編寫ー個程序,判斷某字符串在主串中出現(xiàn)的次數(shù),字符串及主串均從鍵盤輸入。(如:主串為“asdasasdas”,字符串為"as”,則出現(xiàn)4次。)25、#include<stdio.h>main()(longinta[10],c9s=0;floatb;printf("請您輸入十個整數(shù)、n");for(c=0;c<10;c++)scanf(H%ldu,&a[c]);

for(c=0;c<10;c++)s=s+a[c];b=s*1.0/10;printf("平均值b=%f\nn,b);printグ這組數(shù)中大于平均值的數(shù)為:\nH);for(c=0;c<10;c++)if(a[c]>b)printf(n%d\nH,a[c]);}26>#include<stdio.h>main()|inta9b,s;for(a=l;a<=9;a++){for(b=a;b<=9;b++){s=a*b;printf(H%d*%d=%d\tH,a,b,s);}printf(H\nH);}27、#include<stdio.h>#include<string.h>main()(intc,w[2],d=O,t=1,q=0;chara[100],b[10];printf(”請您輸入一個主字符串:'n");scanf(H%sH,a);printf("請您輸入在字符串中多次出現(xiàn)的字符串:\iT);scanf(M%sn,b);w[O]=strlen(b);w[l]=strlen(a);for(c=0;c<w[l]-l;c++)|if(a[c]==b[d]){if(d>=w[O])d=0;d=d+l;if(a[c+l]==b[d])t=t+l;else{d=0;t=l;))else{d=O;t=l;}if(t==w[O])q=q+i;}printf("您輸入的字符%s在主字符串中出現(xiàn)的次數(shù)為:\n*\b);printf(H%d\nH,q);第十套:28從鍵盤輸入一學(xué)生的成績,判斷學(xué)生成績等級,如果成績在90-100,等級為“A':成績在80-89I等級為“B成績在^0-79,等級為“C”成績在60-69l等級為“D':成績小于60I等級為"E':29輸岀100-1000間的全部素數(shù)。30.編寫程序,求出從鍵盤輸入的字符串的長度(不能用strlenO函數(shù),要求要用指針的知28、#include<stdio.h>voidfun(void)|inta;printf("請您輸入您的分?jǐn)?shù),我們將根據(jù)您的分?jǐn)?shù)對其進行評定Xn”);scanf(H%dH,&a);printf("您的分?jǐn)?shù)等級為:\nH);if(a<=100&&a>=90)printf(HA\nH);elseif(a<90&&a>=80)printf(nB\nH);elseif(a<80&&a>=70)printf(HC\nn);elseif(a<70&&a>=60)printf(HD\nn);elseif(a<60&&a>=0)

printf(HE\nH);else{printf("您輸入的分?jǐn)?shù)不在此范圍內(nèi),請您重新輸入:、パ);fun();)}main()|fun();}29、#include<stdio.h>voidfun(longa)(intflag=l,b;for(b=2;b<a-l;b++)if(a%b==0)flag=0;if(flag==l)printf(H%ld\nn,a);main()longa;printf(n100到1000的素數(shù)為:\nn);for(a=100;a<=1000;a++)fun(a);}30、#include<stdio.h>longfun(char*p)|longz="l;charc;do{z=z+l;c=*p;++p;}while(c!=\0);return(z);}voidmain()longb;chara[1000];printf("請您輸入待測字符串Xn");scanf(H%sH,a);b=fun(a);printf("您輸入的字符串長度為:%ld\nn,b);).在主函數(shù)中從鍵盤輸入若干個數(shù)放入數(shù)組中,用〇結(jié)束輸入,并放在最后ー個元素中,下列程序中,函數(shù)fun的功能是:計算數(shù)組元素中值為正數(shù)的平均值(不包括〇)。メ例如:數(shù)組中的元素中的值依次為:39,-47,21,2,-8,15,0,メ則程序的運行結(jié)果為:19.25000〇.請改編寫fun函數(shù),使它能得出正確的結(jié)果。試題程序:,#include<conio.h>*'#include<stdio.h>メdoublefun(intx[])<*,もレmain(レ{intx[1000];inti=0;メprintf(u\nPleaseentersomedata(endwith0):”);メdo^{scanf("%d/?,&x[i]), }while(x[i++]I=0);**printf(/?%f\n”,fun(x));メレ.編程:將一個數(shù)字字符串轉(zhuǎn)換成一個整數(shù)(不得調(diào)用C語言提供的將字符串轉(zhuǎn)換為整數(shù)的函數(shù))?例如,若輸入字符串“-1234”,則函數(shù)把它轉(zhuǎn)換為整數(shù)值ー1234?一.百馬百擔(dān)問題.有100匹馬,馱100擔(dān)貨,大馬馱3擔(dān),中馬馱2擔(dān),兩匹小馬馱1擔(dān),編程計算共有多少種馱法?“1、#include<conio.h>#include<stdio.h>doublefun(intx[])inta[1000];intij=O9k=O;doubles=0.0;while(x[j]!=0)if(x[j]>0)|a[k]=x[j];k++;)j++;)for(i=0;i<k;i++)s+=a[i];returns/k;}main()(intx[1000];inti=0;data(endprintf(n\nPleaseentersomewithO)”);data(enddoscanf(H%dH,&x[i]);)while(x[i++]!=0);printf(n%f\nH,fun(x));)2、#include<stdio.h>#include<string.h>#defineN10main()|charstr[N];inti=0,flag=0;longnum=0;printf("請輸入連續(xù)數(shù)字字符(最多10為數(shù)字):H);gets(str);while(str[i]!=,\O,&&str[i]!=,a,){if(str[i]==,-*)flag=l;elseif(str[i]==,+,)flag=O;elsenum=num*10+(str[i]-,0,);i++;}if(flag==l)num="num;printグ由數(shù)字字符串轉(zhuǎn)化成整數(shù)是:%ld\nn,num);)3、#include<stdio.h>main()|inta,b,c,s=O;for(a=0;a<=33;a++)for(b=0;b<=50;b++)for(c=0;c<=100;c=c+2)if(100==3*a+2*b+c/2&&a+b+c==100)s++;printf("共有駝法:%d種\n”,s);1.編寫函數(shù)fun,它的功能是:根據(jù)以下公式求p的值,結(jié)果由函數(shù)值帶回?m與n為兩個正整數(shù)且要求m>n.メP= *??l(m—?)1例如:m=12,n=8時,運行結(jié)果為495.00080?注意:部分源程序給出如下?iff勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句.試題程序:メ#include<ccnio.h>^#include<stdio.h>~floatfun(intnvintn)メレ}メmainO/*主函數(shù)”メ(メprintf(**P=%f\n0,fun(12,8)),メた2,求出1到18。之內(nèi)能被7或11整除、但不能同時被?和11整除的所有整數(shù),并求這些數(shù)的個數(shù).メ3.編程求一個3X3矩陣對角或元素之和.注意:第1度程序文件名誄命名為progl.cpp,!ヽ#include<conio.h>#include<stdio.h>floatfun(intm,intn)(floatt,pji,k,〇;if(m<n)t二m,m=n,n=t;for(p=l,j=l,i=l,o=m;p<=m-n;o-,p++)|尸。*j;l=p*l;)k=j/i;returnk;)main()/?主函數(shù)?/{printf(HP=%AnH,fun(12,8));}2、#include<stdio.h>main()|intx,y,z,i;printf(Hl到1000之內(nèi)能被7或11整除、但不能同時被7和11整除的所有整數(shù):\n");for(i=l;i<=1000;i++)(x=i%7,y=i%ll;if(x==0&&y!=0lly==0&&x!=0)printf(H%4dH,i);)printf(n\nH);)3、#include<stdio.h>main()inta[3][3],ij,sum=0;for(i=0;i<3;i++){for(j=0;j<3;j++)scanf(H%dH,&a[i][j]);}for(i=0;i<3;i++){for(j=0;j<3;j++){if(i+j==2lli==j)sum=sum+a[i][j];printf(H%dn,sum);.下列程序中,函數(shù)fun的功能是:求以下分?jǐn)?shù)序列的前n項之和?!?/2,2/3,3/5,5/8,8/13,13/21, レ和值通過函數(shù)值返回main函數(shù)?例如,若n的值為:5,則應(yīng)輸出:3.007051.”請編寫程序中的fun函數(shù),使它能得出正確的結(jié)果.“試題程序:レ#includeくstdio.h>>doublefun(intnレレmain()メ{intn;メprintf(wEntern:");メscanf("鳧d”,&n);メprintf(w\nTheresult:%f\n”,fun如));メレ.編寫程序,能對輸入一行字符,統(tǒng)計其中分別有多少個單詞和空格。比如輸入:''Howareyou”,有3個單詞和2個空格。メ#include<stdio.h>doublefun(intn)(doublea=l,b=2,c,sum=0;for(;n>0;n-){sum=a/b+sum;c=a+b;a=b;b=c;}returnsum;)main()intn;printf(nEntern:n);scanf(H%dH,&n);printf(n\nTheresult:%f\n'',fun(n));)#include<stdio.h>#include<string.h>main()(charstr[81];intiJ=O,w=l,s=O;printf("請輸入ー串字符:\n");gets(str);for(i=0;i<strlen(str);i++)(if(str[i]==**)s++;if(str[i]==*,&&str[i+l]!=,*)w++;if(str[O]==*f)w-;if(str[strlen(str)-l]==f*)w-;printf("單詞個數(shù)為:%d\n空格個數(shù)為:%d\nn,w,s);}#include<stdio.h>main()(intk=l,sum=O;for(;k<200;k=k+2)sum=sum+k;printf(Hsum=%d\nn,sum);.已知一個數(shù)列從第0項開始的前三項分別為0,0,1,以后的各項都是其相鄰的前三項之和。下列程序中,函數(shù)fun的功能是:計算并輸出該數(shù)列前n項的平方根之和sumon的值通過形參傳入.“例如,當(dāng)n=10時,程序的輸出結(jié)果應(yīng)為:23.197745。メ請編寫fun函數(shù),使程序的輸出正確的結(jié)果。試題程序:メ#includeくconio.h>メ#includeくstdio.h>メ#includeくmath.h>メfun(intn)メmain()メ{intn;printf(wInputN=");メscanf("%d",&n);メprintf("%f\n",fun(n));*,レ.編寫程序,用簡單選擇排序方法對輸入的10個整數(shù)排序(從大到小)。メ.編寫程序,能實現(xiàn)輸入10個數(shù),將其中的最大值以及平均數(shù)輸出。メ#include<conio.h>#include<stdio.h>#include<math.h>floatfun(intn)floata=O,b=O,c=l,d,e,s=O,k;for(k=l;k<=n;k++)s+=sqrt(a);d=a+b+c;a=b,b=c;c=d;returns;}main()(intn;//clrscr();printf(nInputN=n);scanf(H%dn,&n);printグ%f\nu,fun(n));}#include<stdio.h>fun(ints[10])(intij;for(i=l;i<10;i++)for(j=0;j<10-i;j++)if(s[j]<sU+l]){inttemp;temp=s[j];sU]=s[j+l];s[j+l]=temp;)printf「這10個數(shù)按從大到小排列為:\nu);for(i=0;i<10;i++)printf(H%dn,s[i]);}main()|ints[10]>0;printf(”請輸入!0個整數(shù):");for(;i<10;i++)scanf(H%dH,&s[i]);fun(s);printf(n\nH);)3.#include<stdio.h>fun(ints[10])(inti;floata=0;for(i=l;i<9;i++)if(s[i]>s[i+l]){inttemp;temp=s[i];s[i]=s[i+l];s[i+l]=temp;)printf(H這10個數(shù)中最大的為:%d\nH,s[9]);for(i=0;i<10;i++)a+=s[i];printf("平均數(shù)為:%.lfH,a/10);}main()(ints[10],i=0;printf("請輸入!0個整數(shù):");for(;i<10;i++)scanf(H%dH,&s[i]);fun(s);printf(n\nH);).下面程序中函數(shù)fun的功能是:根據(jù)整型形參m,計算如下公式的值:y=l+l/21+1/3J+1/4J+...+1/mJ例如:若m=6,則應(yīng)輸出:1.718056.~清編寫fun函數(shù),使它能得出正確的結(jié)果."#include<conio.#includeVstdio.h>>doublefun(intm)3レmain()(intn;メbrintf("Entern:");"scanf("%d",&n);**printf(0\nTheresultis%lf'n”,fun(n));メ}メ.編寫程序,求1!+2!+3!+ +9! +10I的和。メ.某幼兒園只收2~6歲的小孩,2~3歲編入小班,4歲編入中班,5~6歲編入大班,編寫程序?qū)崿F(xiàn)毎輸入一個年齡,輸出應(yīng)編入什么班.メ#include<conio.h>#include<stdio.h>doublefun(intm)|doublea=l,b,j,s=O;for(j=l;j<=m;j++){a=a*j;b=l/a;s+=b;returns;)main()intn;//clrscr();printf(nEnternn);scanf(H%dn,&n);printf(n\nTheresultis%lf\nn,fun(n));)#include<stdio.h>main()|inta=lj,s=O;for(j=l;j<=10;j++){a=a*j;s+=a;}printf("求和為:%d\nn,s);)#include<stdio.h>main()inta;for(;;){printf("請輸入小孩年齡:\nH);scanf(H%dH,&a);if(a<2lla>6)|printf("不適合進入幼兒園,請檢查年齡是否輸錯。、n\n、パ);continue;}elsebreak;)if(a==2lla==3)printf("編入小班'n、);if(a==4)printf("編入中班'n");if(a=5lla==6)printf(''編入大班'n、);1運用函數(shù)fun,用下面的公式求萬的近似值,直到最后ー項的絶對值小チ指定的數(shù)(參數(shù)num)為止,?n/4=l-l/3+l/5—l/7+イ例如,程序運行后,輸入00001,則程序輸出31414,試題程序,#include<mathh>*,#include<stdio.h>メfloatfum(floatnum)**(メレ^nain()?{floatnl,n2;??pnntf“Enterafloatnumder:');メscanf(0%f",&nl)アn2=fun(nl)產(chǎn)pnntf(w%6.4f\n”,n2)產(chǎn)レ2讀入ー個整數(shù)m(5,mW20),調(diào)用函數(shù)md獲得m個隨機整數(shù),將這m個隨機整數(shù)從小到大排序.メ3如果ー個數(shù)等于其所真因子(不包括其本身)之和,則該數(shù)為充數(shù),例如,6的因子有1,23且6=1+2+3,故6為完數(shù),求2~1000中的完數(shù)pl.#include<math.h>#include<stdio.h>floatfun(floatnum)floata,k,s=0;for(k=l,a=l;;k=k+2)s+=a*l/k;a=-a;if(l/k<num)break;}s=4*s;returns;main()floatnl,n2;printf(HEnterafloatnumdern);scanf(H%fu,&nl);n2=fun(nl);printf(H%6.4f\nn,n2);}2.#include<stdio.h>#include<stdlib.h>#include<time.h>intmain()(intm=0,i,s,k;int*arr;while(m<5IIm>20)(printf(Hinputm(5-20):\nH);scanf(H%dn,&m);arr=(int*)malloc(m*sizeof(int));srand(time(NULL));for(i=0;i<m;i++)arr[i]=rand();printf(H%dn,arr[i]);)printf(H\nn);s=1;while(s==1)|for(i=0;i<m-l;i++){s=0;if(arr[i]>arr[i+l]){k=arr[i];arr[i] =arr[i+l];arr[i+l]=k;s=1;

}for(i=0;i<m;i++)(printf(H%dn,arr[i]);return)

printf(H\nn);return0;)3.#include<stdio.h>main()(ints9n9k;for(n=2;k<=1000;k++){s=0;for(k=l;k<n;k++)if(n%k==0)s=s+k;if(s==n)printf(n%5dn,n);printf(H\nH);}1下列程序中,函數(shù)fun的功能是:求三個數(shù)的最小公倍數(shù)。3例如,給變量xl,x2,x3分別輸入15112,則輸由結(jié)果應(yīng)當(dāng)是:330。メ請編寫函數(shù)fun,使它能得到正確結(jié)果。“試題程序:メ#include<stdio.h>?,fun(intx,inty,intz)メmain({intxl,x2,x3,jアpnntf(11Inputxlx2x3:“エメscan£("%d%d%dtf,&xl,&x2,ax3)卅pnntf(Mxl=%d,x2=%d,x3=%d\n〃,xl,x2,x3);メj=fun(xl,x2,x3)了,printf(uTheminimalcommonmultipleis:%d\nu,j);メ2,求1000以內(nèi)的親密數(shù)對。親密數(shù)對的定義為:若正整數(shù)a的所有因子(不包括a本身)之和為b,b的所有因子(木包括b本身)之和為a,且aKb,則稱a與b為?兩6證Tホ!rーメ3,若用0~9之間不同的3個數(shù)構(gòu)成一個三位數(shù),編程統(tǒng)計出共有多少個這種不同的三位數(shù)?メl.#include<stdio.h>fun(intx,inty,intz)intj=l;for(;;j++)if(j%x==O&&j%y==O&&j%z==O)break;returnj;}main()intxl,x2,x3j;printf(nInputxlx2x3:\nH);scanf(H%d%d%du,&xl,&x2,&x3);printf(nxl=%d, x2=%d,x3=%d\n'',xl,x2,x3);j=fun(xl,x2,x3);print*“Theminimalcommonmultipleis:%d\nn,j);}.#include<stdio.h>main()(inta,b,sa,sb,k,t;for(a=l;a<=1000;a++){sa=O,sb=O;for(k=l;k<a;k++)if(a%k==O)sa+=k;if(sa<=1000)b=sa;for(t=l;t<b;t++)if(b%t==O)sb+=t;if(a==sb&&a!=b)printf(Ha=%d\nb=%d\n\n\nn,a,b);)).#include<stdio.h>main(){inta,b,c,s=O,k;for(k=100;k<1000;k++){a=k/100,b=k/10%10,c=k%10;if(a!=b&&a!=c&&b!=c)s++;}printf("這樣的三位數(shù)有%d個XiT,s);}ェ?清縮 函數(shù)xxvt-fundntpn.)?它的功能1是?判斷pm是否是米被?巷pmeS;崇歓,返回1:者不是素敷,返回0?pniM值由內(nèi)容,僅在函政/un的化后與中坡入你編寫的若干國句.*includeVconエ。.h>9includeVstdエ。?h>int"fun(inta))?axn()C intx;printi*(*\nPleaseenteranumber:").xcanT(?gd”,3),“為d\n”, (x));).毋程定W=TrM~2"2*+?T2”0.若れ他22為素散.則詔為梅森尼數(shù).求【エ?21】他國內(nèi).有多少個槪森尼數(shù)?嚴(yán)大的柢森尼數(shù)?l.#include<conio.h>#include<stdio.h>#include<math.h>intfun(inta){inti,b=O;for(i=2;i<=a;i++)if(a%i==O)b++;if(b==l)return1;elsereturn0;}main(){intx;printf(n\nPleaseenteranumber:");scanf("%d",&x);printf("%d\n",fun(x));)2.#include<stdio.h>main(){intw=l,i;printf(“求W=l+21+22+23+???+210\n'');for(i=21;i<=210;i++)w+=i;printf("求得:w=%d\nH,w);}3.#include<stdio.h>intsushu(intn){inti,flag=l;if(n==l)return0;else{for(i=2;i<n;i++)if(n%i==0){flag=0;break;}returnflag;})main()intij,s,p=0,t[21];for(j=l;j<=21;j++)s=l;for(i=l;i<=j;i++)s*=2;if(sushu(s-l)){t[p]=j;P++;printf("在[1,21]范圍內(nèi)梅森尼數(shù)個數(shù)為:%d\n”,p);printグ其中最大的ー個是:%d\nu5t[p-l]);}J C1下列程序中,函數(shù)fun的功能是I求KKKV13),所求階乗的值作為函數(shù)值返回。例若K=10,則應(yīng)輸出,3628800。メ請編寫Fun函數(shù),使它能得出正確的結(jié)果。試題程序,a#in

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論