計(jì)算機(jī)程序設(shè)計(jì)員試題及答案_第1頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)員試題及答案_第2頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)員試題及答案_第3頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)員試題及答案_第4頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)員試題及答案_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

注意事項(xiàng)考生考生答題不準(zhǔn)超過(guò)此線地區(qū)姓名單位名稱準(zhǔn)考證號(hào)試題1、我國(guó)古代難題--百雞問(wèn)題:雞翁一,值錢五;雞母一,值錢三;雞雛一,值錢一。百錢買百雞,問(wèn)雞翁、母、雛各幾何?用PAD圖描述解決辦法。=1\*GB2(1)本題分值:20分=2\*GB2(2)考核時(shí)間:36min=3\*GB2(3)考核形式:筆試=4\*GB2(4)具體考核要求:我國(guó)古代難題--百雞問(wèn)題:雞翁一,值錢五;雞母一,值錢三;雞雛一,值錢一。百錢買百雞,問(wèn)雞翁、母、雛各幾何?用PAD圖描述解決辦法。試題2、編寫加油站計(jì)費(fèi)程序。=1\*GB2(1)本題分值:50分。=2\*GB2(2)考核時(shí)間:90min。=3\*GB2(3)考核形式:實(shí)操。=4\*GB2(4)具體考核要求:編寫加油站計(jì)費(fèi)程序。a) 程序界面如下:b) 選擇好汽油種類,即可在窗口上方顯示出該種類汽油的單價(jià)(90號(hào)4.43元/升,93號(hào)4.8元/升,97號(hào)5.03元/升)。c) 輸入汽油數(shù)量,點(diǎn)擊“計(jì)算”按鈕即可計(jì)算出總價(jià)錢是多少,如選擇打折則會(huì)計(jì)算出打折后的價(jià)錢。d) 點(diǎn)擊“退出”按鈕退出程序。e) 將“加油站計(jì)費(fèi)程序”源程序上傳到考場(chǎng)給出的ftp服務(wù)器上面。試題3、使用基本路徑測(cè)試方法,為下列程序段設(shè)計(jì)測(cè)試用例。=1\*GB2(1)本題分值:30分=2\*GB2(2)考核時(shí)間:54min=3\*GB2(3)考核形式:筆試=4\*GB2(4)具體考核要求:使用基本路徑測(cè)試方法,為下列程序段設(shè)計(jì)測(cè)試用例。voiddo(intX,intA,intB){if((A>1)&&(B=0))X=X/A;if((A=2)||(X>1))X=X+1;}畫出程序的控制流圖。計(jì)算程序的環(huán)形復(fù)雜度(導(dǎo)出程序基本路徑集中的獨(dú)立路徑條數(shù)這是確定程序中每個(gè)可執(zhí)行語(yǔ)句至少執(zhí)行一次所必須的測(cè)試用例數(shù)目的上界)。導(dǎo)出基本路徑集,確定程序的獨(dú)立路徑。根據(jù) C)中的獨(dú)立路徑,設(shè)計(jì)測(cè)試用例的輸入數(shù)據(jù)和預(yù)期輸出。f)

職業(yè)技能鑒定國(guó)家題庫(kù)計(jì)算機(jī)程序設(shè)計(jì)員國(guó)家職業(yè)資格四級(jí)理論知識(shí)試卷答案一、單項(xiàng)選擇題(第1題~第160題。選擇一個(gè)正確的答案,將相應(yīng)的字母填入題內(nèi)的括號(hào)中。每題0.5分,滿分80分。)1.D2.C3.D4.A5.A6.A7.A8.A9.C10.C11.A12.A13.C14.C15.A16.C17.D18.B19.B20.B21.A22.B23.B24.A25.B26.D27.B28.A29.B30.C31.C32.A33.A34.C35.A36.B37.B38.D39.C40.B41.B42.D43.B44.C45.C46.D47.C48.B49.C50.A51.D52.B53.A54.D55.B56.B57.D58.C59.D60.A61.A62.C63.D64.D65.A66.C67.A68.C69.D70.D71.D72.A73.D74.D75.D76.B77.C78.D79.D80.C81.D82.D83.B84.B85.C86.D87.D88.A89.C90.B91.A92.B93.B94.D95.D96.B97.B98.C99.C100.C101.C102.B103.D104.D105.A106.D107.D108.D109.C110.D111.D112.D113.B114.B115.A116.B117.A118.C119.D120.D121.B122.D123.C124.C125.A126.C127.C128.A129.D130.C131.A132.D133.D134.C135.C136.C137.D138.C139.D140.D141.C142.B143.D144.D145.D146.D147.D148.C149.B150.D151.D152.D153.B154.C155.D156.C157.C158.C159.D160.D二、判斷題(第161題~第200題。將判斷結(jié)果填入括號(hào)中。正確的填“√”,錯(cuò)誤的填“×”。每題0.5分,滿分20分。)161.×162.×163.×164.×165.×166.×167.√168.×169.×170.×171.√172.×173.√174.×175.×176.×177.×178.√179.√180.√181.×182.√183.√184.×185.√186.√187.×188.×189.√190.×191.×192.×193.√194.×195.×196.×197.×198.√199.√200.×計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語(yǔ)言)編程練習(xí)題及參考答案1.輸入2個(gè)整數(shù),求兩數(shù)的平方和并輸出。#include<stdio.h>main(){intta,b,s;printf("pleaseinputa,b:\n");scanf("%d%d”,&a,&b); s=a*a+b*b;printf("theresultis%d\n",s); }2.輸入一個(gè)圓半徑(r)當(dāng)r>=0時(shí),計(jì)算并輸出圓的面積和周長(zhǎng),否則,輸出提示信息。#include<stdio.h>#definePI3.14<stdio.h>main(){floatr,s,l;printf("pleaseinputr:\n");scanf("%f”,&r); if(r>=0) {s=pi*r*r;l=2*i*r; printf("theareais%f\n",s); printf("thecircumferenceis%f\n",l);}elseprintf("inputerror!\n");}3、函數(shù)y=f(x)可表示為:2x+1(x<0)y=0(x=0)2x-1(x>0)編程實(shí)現(xiàn)輸入一個(gè)x值,輸出y值。main(){intx,y;scanf(“%d”,&x);If(x<0)y=2*x+1;If(x>0)y=2*x-1;If(x==0)y=0;printf(“%d”,y);}4、編寫一個(gè)程序,從4個(gè)整數(shù)中找出最小的數(shù),并顯示此數(shù)。main(){inta,b,c,d,t;scanf(“%d,%d,%d,%d”,&a,&b,&c,&d);if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(a>d){t=a;a=d;d=t;}printf(“min=%d\n”,a);}5.有一函數(shù)當(dāng)x<0時(shí)y=1,當(dāng)x>0時(shí),y=3,當(dāng)x=0時(shí)y=5,編程,從鍵盤輸入一個(gè)x值,輸出y值。main(){intx,y;scanf("%d",&x);if(x<0)y=1;elseif(x==0)y=5;elsey=3;printf("x=%d,y=%d\n",x,y);}6.從鍵盤輸入兩個(gè)數(shù),求出其最大值(要求使用函數(shù)完成求最大值,并在主函數(shù)中調(diào)用該函數(shù))main(){floatmax(floatx,floaty);floata,b,m;scanf("%f,%f",&a,&b);m=max(a,b);printf("Maxis%f\n",m);}floatmax(floatx,floaty){floattemp;if(x<y){temp=x;x=y;y=temp;}return(x);}7、從鍵盤輸入你和你朋友的年齡,編成判斷誰(shuí)的年齡最大,并打印最大者的年齡。#include<stdio.h>main(){ intyourAge,hisAge; printf("Pleaseenteryourage:"); scanf("%d",&yourAge);/*輸入你的年齡yourAge*/ printf("Pleaseenteryourfriend'sage:"); scanf("%d",&hisAge);/*輸入你朋友的年齡hisAge*/ if(yourAge>=hisAge) { printf("Youareolder!Yourageis=%d\n",yourAge); } if(hisAge>yourAge) { printf("Yourfriendisolder!HisAgeageis=%d\n",hisAge); }}8、鍵盤輸入2個(gè)加數(shù),再輸入答案,如果正確,顯示“right”,否則顯示“error”#include“stdio.h”main(){inta,b,c;printf(“pleaseinputaandb\n”);scanf(%d,%d”,&a,&b);printf(“pleaseinputtheanswerfora+b\n”);scanf(%d”,&c);if(c==a+b)printf(“right\n”);elseprintf(“error\n”);}9.編一程序每個(gè)月根據(jù)每個(gè)月上網(wǎng)時(shí)間計(jì)算上網(wǎng)費(fèi)用,計(jì)算方法如下:要求當(dāng)輸入每月上網(wǎng)小時(shí)數(shù),顯示該月總的上網(wǎng)費(fèi)用(6分)main(){inthour;floatfee;printf(“pleaseinputhour:\n”);scanf(“%d”,&hour);if(hour<=10)fee=30;elseif(hour>=10&&hour<=50)fee=3*hour;elsefee=hour*2.5;printf(“Thetotalfeeis%f”,fee);}10.神州行用戶無(wú)月租費(fèi),話費(fèi)每分鐘元,全球通用戶月租費(fèi)50元,話費(fèi)每分鐘0.4元。輸入一個(gè)月的通話時(shí)間,分別計(jì)算出兩種方式的費(fèi)用,判斷哪一種合適。main(){floata,x,y;printf(“\n請(qǐng)輸入您的話費(fèi):”);scanf(“%f,”,&a);x=0.6*a;y=50+0.4*a;printf(“神州行話費(fèi)為:%f\n”,x);printf(“全球通話費(fèi)為:%f\n”,y);if(x>=y)printf(“建議使用全球通”);elseprintf(“建議使用神州行);}11.個(gè)人所得稅計(jì)算,應(yīng)納稅款的計(jì)算公式如下:收入稅率收入<=1000元部分0%2000元>=收入>1000元的部分5%3000元>=收入>2000元的部分10%6000元>=收入>3000元的部分15%收入>6000元的部分20%輸入某人的收入,計(jì)算出應(yīng)納稅額及實(shí)際得到的報(bào)酬。(7分)(如需連續(xù)計(jì)算多個(gè)人的納稅情況,直到輸入負(fù)數(shù)為止,程序應(yīng)如何改進(jìn)?試寫出程序)#include“stdio.h”main(){intgrade;floatincome,tax,money;printf(“pleaseinputyourincome\n”);scanf(“%f”,&income);if(income<0)printf(“theinputiserror”);else{grade=(int)income/1000;switch(grade){case0:tax=0;break;case1:tax=(income-1000)*0.05;break;case2:tax=50+(income-2000)*0.1;break;case3:case4:case5:tax=150+(income-3000)*0.15;break;default:tax=600+(income-6000)*0.2;}money=income-tax;printf(“\ntax=%f,money=%f”,tax,money);}}12.從鍵盤上輸入一個(gè)百分制成績(jī)score,按下列原則輸出其等級(jí):score≥90,等級(jí)為A;80≤score<90,等級(jí)為B;70≤score<80,等級(jí)為C;60≤score<70,等級(jí)為D;score<60,等級(jí)為E。#include<stdio.h>main(){ intdata; chargrade; printf("Pleaseenterthescore:"); scanf("%d”,&data); switch(data/10) {case10:case9:grade=’A’;break; case8:grade=’B’; break; case7:grade=’C’; break;case6:grade=’D’; break; default:grade=’E’; }printf("thegradeis%c”,grade);}*13.編程設(shè)計(jì)一個(gè)簡(jiǎn)單的計(jì)算器程序。從鍵盤輸入2個(gè)操作數(shù),1個(gè)運(yùn)算符,當(dāng)運(yùn)算符為加(+)、減(-)、乘(*)、除(/)時(shí),輸出計(jì)算結(jié)果#include<stdio.h>main(){intdata1,data2;/*定義兩個(gè)操作符*/ charop;/*定義運(yùn)算符*/ printf("Pleaseentertheexpression:"); scanf("%d%c%d",&data1,&op,&data2);/*輸入運(yùn)算表達(dá)式*/ switch(op)/*根據(jù)輸入的運(yùn)算符確定要執(zhí)行的運(yùn)算*/ {case'+':/*處理加法*/ printf("%d+%d=%d\n",data1,data2,data1+data2); break; case'-':/*處理減法*/ printf("%d-%d=%d\n",data1,data2,data1-data2); break; case'*':/*處理乘法*/ printf("%d*%d=%d\n",data1,data2,data1*data2); break; case'/':/*處理除法*/ if(0==data2)/*為避免出現(xiàn)溢出錯(cuò)誤,檢驗(yàn)除數(shù)是否為0*/ printf("Divisionbyzero!\n"); else printf("%d/%d=%d\n",data1,data2,data1/data2); break; default: printf("Unknownoperator!\n"); }}14.從鍵盤輸入10個(gè)整數(shù),統(tǒng)計(jì)其中正數(shù)、負(fù)數(shù)和零的個(gè)數(shù),并在屏幕上輸出。main(){inta[10],i,p=0,n=0,z=0;printf(“pleaseinputnumber”);for(i=0;i<10;i++){scanf(“%d,”,&a[i]);if(a[i]>0)p++;elseif(a[i]<0)n++;elsez++}printf(“正數(shù):%5d,負(fù)數(shù):%5d,零:%5d\n”,p,n,z);}}15、編程序?qū)崿F(xiàn)求1-200之間的所有數(shù)的乘積并輸出。#include<stdio.h>main(){inti,sum=1for(i=1;i<200i=i+1)sum=sum*i;printf(“thesumofoddis:%d”,sum);}16.從鍵盤上輸入10個(gè)數(shù),求其平均值。main(){ inta[10],i,s=0; floatave;; for(i=0;i<10;i++)scanf(“%d”,&a[i]);for(i=0;i<10;i++)sum+=a[i];ave=(float)sum/10; printf("ave=%f\n",ave);}17、編程序?qū)崿F(xiàn)求1-1000之間的所有奇數(shù)的和并輸出。#include<stdio.h>main(){inti,sum=0;for(i=1;i<1000;i=i+2)sum=sum+i;printf(“thesumofoddis:%d”,sum);}18.有一個(gè)分?jǐn)?shù)序列:2/1,3/2,5/3,8/5,13/8,21/13……編程求這個(gè)序列的前20項(xiàng)之和。main(){inti,t,n=20;floata=2,b=1,s=0;for(i=1;i<=n;i++){s=s+a/b;t=a;a=a+b;b=t;}printf("sum=%",s);}19.用數(shù)組實(shí)現(xiàn)以下功能:輸入5個(gè)學(xué)生成績(jī),而后求出這些成績(jī)的平均值并顯示出來(lái)。main(){floata[5],i;floats=0;for(i=0;i<5;i++)scanf(“%f”,&a[i]);for(i=0;i<5;I++)s=s+a[i];printf(“result=%f”,s/5);}*20、用循環(huán)的方法構(gòu)造一個(gè)5行5列的二維數(shù)組,使主對(duì)角線上的變量為1,其它為0,并將數(shù)組中所有項(xiàng)按行按列顯示出來(lái)。main(){inta[5][5],i,j,s=0;for(i=0;I<5;i++)for(j=0;j<5;j++)if(i==j)a[i][j]=1;elsea[i][j]=0;for(i=0;i<5;i++)for(j=0;j<5;j++){if(j==0)printf(“\n”);printf(“%d”,a[i][j]);}}21.求一個(gè)3×3矩陣對(duì)角線元素之和。從鍵盤輸入矩陣元素的值并輸出和的值.main(){inta[3][3],sum=0;inti,j;printf("Enterdata:\n");for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)sum=sum+a[i][i];printf("sum=%d",sum);}22.輸入n的值,n代表行數(shù),輸出如圖所示的圖形。(6分)****************(此圖為n=4時(shí)的輸出結(jié)果)#include<stdio.h>main(){inti,j,k; for(i=1;i<=4;i++)/*控制行數(shù)*/ {for(k=1;k<=(2*i-1);k++)/*控制每行輸出的*號(hào)個(gè)數(shù)*/ {printf("*"); } printf("\n"); }}/*輸出一行后換行*/23、從鍵盤輸入30名學(xué)生的成績(jī)數(shù)據(jù),求其中的最高分、最低分和平均分。(提示:用數(shù)組存放成績(jī)數(shù)據(jù))#include<stdio.h>#defineM30main(){floatscore[M],max,min,aver;inti;printf(“pleaseinputscore:\n”);for(i=0;i<M;i++)scanf(“%f”,&score[i]);max=score[0];min=score[0];aver=score[0];for(i=1;i<M;i++){if(max<score[i])max=score[i];if(min>score[i])min=score[i];aver+=score[i];}printf(“max=%f,min=%f,aver=%f”,max,min,aver/M);}24.從鍵盤輸入某班學(xué)生某門課的成績(jī)及其學(xué)號(hào)(班級(jí)人數(shù)最多40人,具體人數(shù)由鍵盤輸入),輸出該班最高分和最低分及其學(xué)生學(xué)號(hào);并輸出該班該課程的總分和平均分。請(qǐng)編寫程序。#include<stdio.h>#defineARR_SIZE40main(){floatscore[ARR_SIZE],maxScore,minScore,sum; intn,i; longmaxNum,minNum,num[ARR_SIZE]; printf("Pleaseentertotalnumber:"); scanf("%d",&n); printf("Pleaseenterthenumberandscore:\n"); for(i=0;i<n;i++) scanf("%ld%f",&num[i],&score[i]); maxScore=score[0];minScore=score[0]; maxNum=num[0];minNum=num[0];sum=score[0]; for(i=1;i<n;i++) { if(score[i]>maxScore) { maxScore=score[i]; maxNum=num[i]; }elseif(score[i]<minScore){minScore=score[i]; minNum=num[i];} sum=sum+score[i];} printf("maxScore=%.0f,maxNum=%ld\n",maxScore,maxNum);printf("minScore=%.0f,minNum=%ld\n",minScore,minNum);printf("sum=%.1f,average=%.1f\n",sum,sum/n);}*25.將一個(gè)有5個(gè)元素的數(shù)組中的值(整數(shù))按逆序重新存放。例:原來(lái)順序?yàn)?8、6、5、4、1,要求改為1、4、5、6、8defineN5main(){inta[N],I,temp;printf(“enterarraya:\n”);for(I=0;I<N;I++)scanf(“%d”,$a[i]);for(I=0;I<N;I++){temp=a[i];a[i]=a[N-I-1];a[N-I-1]=temp;}printf(“\nNow,arraya:\n”);for(I=0;I<N;I++)printf(“%4d”,a[i]);printf(“\n”);}*26.從鍵盤上輸入一個(gè)2*3的矩陣,將其轉(zhuǎn)置后形成3*2的矩陣輸出。main(){inta[2][3],b[3][2],i,j;for(i=0;i<2;i++)for(j=0;j<3;j++)scanf(“%d”,&a[i][j]);for(i=0;i<3;i++)for(j=0;j<2;j++)b[i][j]=a[j][i];for(i=0;i<3;i++){for(j=0;j<2;j++)printf("%5d",b[i][j]);printf("\n”);}}*27.編寫兩個(gè)函數(shù)分別求兩個(gè)整數(shù)的最小公倍數(shù)和最大公約數(shù),用主函數(shù)調(diào)用這兩個(gè)函數(shù)并輸出結(jié)果。兩個(gè)整數(shù)由鍵盤輸入。#include"stdio.h"mingb(x,y)intx,y;{intz,i,t;z=1;i=1;if(x>y){t=x;x=y;y=t;}while(z<=x*y){z=i*y;if((z%x==0)&&(z%y==0))break;i++;}return(z);}maxgy(x,y)intx,y;{intz,t;if(x>y){t=x;x=y;y=t;}z=x;while(z>1){if((x%z==0)&&(y%z==0))break;z--;}return(z);}main(){inta,b,c;charch;printf("\nmingb(1)/maxgy(2)?");ch=getchar();printf("\ninput:");scanf("%d,%d",&a,&b);if(ch=='1')c=mingb(a,b);elseif(ch='2')c=maxgy(a,b);printf("theresultis%d",c);getch();}*28.輸入一個(gè)3*3矩陣,求出其轉(zhuǎn)置矩陣,并求出兩個(gè)矩陣的和.main(){inta[3][3];intb[3][3];intc[3][3]inti,j;printf(“pleaseinput6numbers!”)for(i=1;i<3;i++)for(j=1;j<3;j++){scanf(“%d”,&a[i][j]);b[j][i]=a[i][j];}for(i=1;i<3;i++)for(j=1;j<3;j++){c[i][j]=a[i][j]+b[i][j];}for(i=1;i<3;i++)for(j=1;j<3;j++){printf(“%d”,a[i][j]);}}29、從鍵盤輸入10名學(xué)生的成績(jī)數(shù)據(jù),按成績(jī)從高到低的順序排列并輸出。(提示:用數(shù)組存放成績(jī)數(shù)據(jù))main(){inta[10];inti,j,temp;printf("inputscore:\n");for(i=0;i<10;i++) scanf("%d",&a[i]);printf("\n");for(i=1;i<10;i++) for(j=0;j<9;j++) if(a[j]<a[j+1]) {temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; }for(i=0;i<10;i++)printf("%d,",a[i]);}30.定義一個(gè)5行3列的數(shù)組,從鍵盤輸入各數(shù)組元素的值,計(jì)算各數(shù)組元素之和。#include<stdio.h>main(){ inti,j,a[5][3]; printf(“Enterdata:\n”);for(i=0;i<5;i++)for(j=0;j<3;j++)scanf(“%d”,&a[i][j]);for(i=0;i<5;i++)for(j=0;j<3;j++)sum=sum+a[i][j];printf(“sum=%5d\n”,sum);}31、編寫程序,交換兩個(gè)數(shù)組中的對(duì)應(yīng)元素。#include<stdio.h>#defineN20main(){inta[N],b[N],i,j,temp;printf(“pleaseinputa:\n”);for(i=0;i<N;i++)scanf(“%d”,&a[i]);printf(“pleaseinputb:\n”);for(j=0;j<N;j++)scanf(“%d”,&b[i]);for(i=0;i<N;i++){temp=a[i];a[i]=b[i];b[i]=temp;}for(j=0;j<N;j++)printf(“%d,”,a[j]);printf(“\n”);for(j=0;j<N;j++)printf(“%d,”,b[j]);}*32、從鍵盤上輸入一個(gè)4*3的整型數(shù)組,找出數(shù)組中的最小值及其在數(shù)組中的下標(biāo)。#include<stdio.h>main(){inta[4][3],i,j,min,m,n;printf("Pleaseenterdata:");for(i=0;i<4;i++)for(j=0;j<3;j++)scanf(“%d”,&a[i][j]);min=a[0][0];m=0;n=0;for(i=0;i<4;i++)for(j=0;j<3;j++)if(a[i][j]<min){min=a[i][j];m=i;n=j;}printf("theminis%d\n,min);printf("posionis%d%d\n,m,n);}33.編程實(shí)現(xiàn)如下功能:從鍵盤輸入一行字符,統(tǒng)計(jì)其中大寫英文字符,小寫英文字符和其他字符的個(gè)數(shù)。#include<stdio.h>#include<string.h>#defineARR_SIZE80main(){ charstr[ARR_SIZE]; intlen,i,letter=0,digit=0,space=0,others=0;printf("Pleaseinputastring:");gets(str);len=strlen(str); for(i=0;i<len;i++){if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z') letter++;/*統(tǒng)計(jì)英文字符*/elseif(str[i]>='0'&&str[i]<='9')digit++;/*統(tǒng)計(jì)數(shù)字字符*/else others++;/*統(tǒng)計(jì)其它字符的個(gè)數(shù)*/} printf("Englishcharacter:%d\n",letter); printf("digitcharacter:%d\n",digit); printf("othercharacter:%d\n",others);}*34.編程實(shí)現(xiàn)如下功能:1)在主函數(shù)中,實(shí)現(xiàn)從鍵盤輸入10名學(xué)生某門課的成績(jī),保存在一維數(shù)組中;調(diào)用排序函數(shù);對(duì)排序后的數(shù)組中的元素按從高到低打印輸出。2)編寫排序函數(shù),使用數(shù)組名做函數(shù)參數(shù),實(shí)現(xiàn)對(duì)該成績(jī)的排序。#include<stdio.h>#defineARR_SIZE40voidSort(floatscore[],longnum[],intn);main(){floatscore[ARR_SIZE]; intn,i; longnum[ARR_SIZE]; printf("Pleaseentertotalnumber:"); scanf("%d",&n); printf("Pleaseenterthenumberandscore:\n"); for(i=0;i<n;i++) { scanf("%ld%f",&num[i],&score[i]); } Sort(score,num,n); printf("Sortedresults:\n"); for(i=0;i<n;i++) { printf("%ld\t%\n",num[i],score[i]); }}voidSort(floatscore[],longnum[],intn){inti,j; floattemp1; longtemp2; for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) { if(score[j]>score[i]) { temp1=score[j]; score[j]=score[i]; score[i]=temp1; /*交換學(xué)號(hào)*/ temp2=num[j]; num[j]=num[i]; num[i]=temp2; } } }}*35.編程實(shí)現(xiàn)如下功能:實(shí)現(xiàn)從鍵盤輸入兩個(gè)字符串,分別存入兩個(gè)不同的字符數(shù)組中;將兩個(gè)字符串連接為一個(gè)字符串,并打印輸出連接后的整個(gè)字符。#include<stdio.h>#include<string.h>#defineARR_SIZE80voidMyStrcat(chardstStr[],charsrcStr[]);main(){chars[ARR_SIZE],t[ARR_SIZE]; printf("Pleaseentersourcestring:"); gets(s); printf("Pleaseenterdestinationstring:"); gets(t); MyStrcat(s,t); printf("Theconcatenatestringis:"); puts(s);}voidMyStrcat(chardstStr[],charsrcStr[]){inti=0,j;while(dstStr[i]!='\0') { i++;}for(j=0;srcStr[j]!='\0';j++,i++){ dstStr[i]=srcStr[j];} dstStr[i]='\0';}*36、猜數(shù)游戲。系統(tǒng)隨機(jī)產(chǎn)生一個(gè)整數(shù),通過(guò)鍵盤輸入數(shù)據(jù)猜數(shù),猜對(duì)為止,并要求統(tǒng)計(jì)猜的次數(shù)。注:rand()函數(shù)可以產(chǎn)生0~32767間的正整數(shù),程序中需包含stdli。#include<stdio.h>#include<stdlib.h>main(){ intmagic; intguess; intcounter; magic=rand()%100+1;

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論