中山大學(xué)《高級語言程序設(shè)計(一)》實踐試題_第1頁
中山大學(xué)《高級語言程序設(shè)計(一)》實踐試題_第2頁
中山大學(xué)《高級語言程序設(shè)計(一)》實踐試題_第3頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

考核試題及答案1.1,2,3,4個數(shù)字,都是多少?輸出這些三位數(shù).解答:main(){inta[4]={1,2,3,4};inti,j,k;for(i=0;i<4;i++){for(j=0;j<4;j++){for(k=0;k<4;k++){if((i!=j)&&(j!=k)&&(i!=k)){printf("%8d",a*100+a[j]*10+a[k]);}}printf("n");}}}2.有一個整數(shù),100后是一個完全平方數(shù),168又是一個完全平方數(shù),少?解答:#includemain(){inti=10,j;longm=268,n=100;charflag='n';while(flag=='n'){for(j=i+1;j<=sqrt(m);j++){if(m==(long)(j*j)){printf("%dn",flag='y';break;}}i++;n=(long)i*i;m=n+168;}}試題3.編寫C程序,要求能讀入一正整數(shù)n,(n<10),并輸出如下圖形:122233333...nnnnn...nnnnn(2n-1個n)...333332221解答:main(){inti,j,n;printf("Pleaseinputn(1~9):n");scanf("%d",&n);for(i=1;i<=n;i++){for(j=0;jprintf("");for(j=0;j<2*i-1;j++)printf("%d",i);printf("n");}for(i=n-1;i>=1;i--){for(j=0;jprintf("");for(j=0;j<2*i-1;j++)printf("%d",i);printf("n");}}4.C,要求能讀入兩個整數(shù)m與n,計算并讀出m與n.解答:main(){intm,n,a,b,t,div,mul;printf("Pleaseinputscanf("%d,%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if((m==0)||(n==0)){div=0;mul=0;}else{if(m<N){a=n;b=m;}else{a=m;b=n;}do{t=a%b;a=b;b=t;}while(t!=0);div=a;mul=m*n/a;}printf("themaximumcommondivisorof%d,%dis:%dn",m,n,div);printf("theminimumcommonmultipleof%d,%dis:%dn",m,n,mul);}5.e=1+1/1!+1/2!+1/3!+...+1/n!,e的近似值.10-6,程序給出如下,請完成程序,實現(xiàn)以上功能.#includemain(){inti=1;floate,n;e=1.0;n=1.0;******在此編寫代碼******}fun(inti){intj,k;k=1;for(j=1;j<=i;++j)k=k*j;return(k);}解答:#includemain(){inti=1;floate=1.0,n=1.0;do{n=fun(i);e+=1.0/n;i++;}while(1.0/n>=1e-6);printf("e=%fn",e);}fun(inti){intj,k;k=1;for(j=1;j<=i;++j)k=k*j;return(k);}6.100~200之間的所有素數(shù),.(1的自然數(shù))解答:main(){inti,j;for(i=100;i<=200;i++){for(j=2;j{if(i%j==0)break;}if(i==j)printf("%4d",i);}}7.fun(str),它的功能是:統(tǒng)計由實參傳來的一個字符中的字母,數(shù)字,空格和其它字符的個數(shù)部分源程序給出如下,main,fun的花括號中填入你編寫的若干語句.#includeintalph,digit,space,others;main(){chartext[80];printf("n請輸入一個字符串gets(text);printf字符串是puts(text);alph=digit=space=others=fun(text);printf("n%d個字母%d%d%d個其它字符alph,digit,space,others);}fun(str)char{............}解答:#includeintalph,digit,space,main(){chartext[80];printf("pleaseinputacharacterstring:n");gets(text);printf("thecharacterstringputs(text);alph=digit=space=others=fun(text);printf("alphnumber:%d,digitnumber:%d,spacenumber:%d,othersnumber:%dn",alph,digit,space,others);}fun(str)charstr[];{inti=0;while(str!=''){if((('a'<=str)&&(str<='z'))||(('A'<=str)&&(str<=alph++;elseif(('0'<=str)&&(str<=digit++;elseif(str=='')space++;elseothers++;i++;}return;}8.編寫一個程序,:3x3的矩陣轉(zhuǎn)置,例如:運行程序時,3x3的矩陣123456789轉(zhuǎn)置后的矩陣為:147258369:main(){inta[3][3],b[3][3],i,j;printf("Pleaseinputamatrix:n");for(i=0;i<3;i++)for(j=0;j<3;j++){scanf("%d",&a[j]);b[j]=a[j];}for(i=0;i<3;i++){for(j=0;j<3;j++)printf("%8d",printf("n");}}9..(用循環(huán)語句,行數(shù)可變,8行11211102131693141584567解答:main(){inti,j,m=1,n,a[80][80];printf("pleaseinputn:n");scanf("%d",&n);for(i=0;i<(n+1)/2;i++){for(j=i;j{a[j]=m++;}for(j=i+1;j{a[n-i-1][j]=m++;}for(j=n-i-2;j>=i;j--){a[j][n-i-1]=m++;}for(j=n-i-2;j>i;j--){a[j]=m++;}}for(i=0;i{for(j=0;j{printf("%4d",a[j]);}printf("n");}}試題10.正讀和反讀都一樣的字符串稱為回文字符串,在鍵盤上輸入一個字符串,判別它是否回文字符串(字符串中字符的個數(shù)不得少于10).解答:#includemain(){charstr[80],flag='y';inti=0,j;printf("pleaseinputastring:n");gets(str);j=strlen(str);j--;while(i<=j){if(str!=str[j]){flag='n';break;}else{i++;j--;}}if(flag=='n')printf("thestringisnotpalindrome!n");elseprintf("thestringispalindrome!n");}1n<=1試題11.y(n){,編寫程序計算y(n),要求能y(n-2)+2*y(n-1)n>1對讀入的任意n(n>=0且n<50),能計算并輸出y(n)的值.解答:inty(intn){if(n<=1)return(1);elsereturny(n-2)+2*y(n-1);}main(){intn,f;printf("pleaseinputn:n");scanf("%d",&n);f=y(n);printf("y(n)=%dn",f);}試題12.編寫C程序,要求能讀入一個字符串(100以內(nèi)個字符,其中有空格),計算并輸出該字符串中所有大寫英文字母的個數(shù).解答:#includemain(){inti=0,n=0;charstr[100];printf("pleaseinputastring:n");gets(str);while(str!=''){if(('A'<=str)&&(str<='Z'))i++;}printf("thenumberis:%dn",n);}13.一個整數(shù),100,168又是一個完全平方數(shù),,100000以內(nèi)的整數(shù)中找出所有滿足上述性質(zhì)的整數(shù).解答:#includemain(){inti=10,j;longm=268,n=100;while(n<100000){for(j=i+1;j<=sqrt(m);j++){if(m==(long)(j*j)){printf("%8d",break;}}i++;n=(long)i*i;m=n+168;}printf("n");}試題14.編寫程序,求1到100之間的奇數(shù)之和及偶數(shù)之和,并將二者輸出.解答:main(){inti;intoddSum=0,evenSum=0;for(i=1;i<=100;i++){if(i%2==1)oddSum+=i;elseevenSum+=i;}printf("theoddnumbersumis:%dn",oddSum);printf("theevenunmbersumis:%dn",evenSum);}15.編寫程序計算PI公式如下PI/4=(1-1/3+1/5-1/7+...),0.0001止0.0001).解答:#include"math.h"main(){floatpi=0.0,n=1.0,s=1.0,do{t=s/n;pi+=t;s*=-1.0;n+=2;}while(fabs(t)>=1e-4);pr

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論