




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2006年北京師范大學(xué)452C語(yǔ)言考研試題
1設(shè)圓的半徑片1.5,圓錐高h(yuǎn)=3,求圓的周長(zhǎng)和椎體體積。用scanf輸入數(shù)據(jù),輸出計(jì)算結(jié)
果。輸出時(shí)要求有文字說(shuō)明,取小數(shù)點(diǎn)后兩位數(shù)字。
2輸入兩個(gè)整數(shù),求它們相除的余數(shù)。用帶參的宏來(lái)實(shí)現(xiàn)。
3求100~200之間的全部素?cái)?shù)之和。
4計(jì)算圓周率的近似值,直到最后一項(xiàng)的絕對(duì)值小于10的-6為止,圓周率=4*
(1-1/3+1/5-1/7+1/9-....)
5寫一個(gè)函數(shù),判斷一字符串是否回文?;匚氖侵疙樞蚝偷棺x都一樣的字符串。
#include<stdio.h>
#include<string.h>
inthw(charf[25]){
inta,b;
a=0;//初始化a指向f的首地址
b=strlen(f)-1;〃指向f的最后一個(gè)
while(a<=b){
if(f[a++]!=f[b-]){
printf("No!\n");
return0;〃程序結(jié)束
printf("Yes!\n");
return1;//a>=b是正確的
intmain(){
charf[25];
intHW;//a,b=0;不需要
scanf("%s",f);
HW=hw(f);
return0;
)
6有一篇文章,共有3行文字,每行有80個(gè)字符。要求分別統(tǒng)計(jì)出其中英文大寫字母,數(shù)字
以及其它字符的個(gè)數(shù)。
7將一個(gè)磁盤中的二進(jìn)制文件復(fù)制到另一個(gè)磁盤中,兩個(gè)文件名隨命令行一起輸入。
#include<stdio.h>
voidmain()
{
FILE*from,*to;
charin[100],out[100];
printf("請(qǐng)輸入源文件名:\n");
scanf("%s",in);
printf("請(qǐng)輸入目標(biāo)文件名:\n");
scanf("%s",out);
if((from=fopen(in,"r"))==NULL)
(
printf("文件不存在!\n");
exit(O);
)
if((to=fopen(out,"w"))==NULL)
(
printf("創(chuàng)建目標(biāo)文件失??!\n");
exit(O);
)
printf("............");
while(!feof(from))
(
fputc(fgetc(from),to);
)
fclose(from);
fclose(to);
)
北京航空航天大學(xué)2010年碩士研究生入學(xué)考試試題
七.程序設(shè)計(jì)題(20分)
請(qǐng)編寫程序,該程序首先通過(guò)鍵盤輸入獲得整型數(shù)據(jù)a與n,然后計(jì)算sum=a+aa+aaa+……+
(共n項(xiàng)),最后輸出計(jì)算結(jié)果。例如:當(dāng)a=5,n=4時(shí),計(jì)算sum=5+55+555+5555.
A.程序設(shè)計(jì)題(15分)
在Unix操作系統(tǒng)中有一條命令,命令的功能是打印文本文件的最后n行。命令格式為:
tail[-n]filename
其中,tail為命令名;參數(shù)filename為文本文件名;參數(shù)[句表示要打印的行數(shù),該參數(shù)是可選
的,缺省值為10,既無(wú)此參數(shù)時(shí),表示打印文件的最后10行,例如,命令
tail-20example.txt
表示打印文本文件example.txt的最后20行。如果被打印的文本文件中行數(shù)少于n行或者少
于10行,該命令將打印文件中的所有行。
請(qǐng)用帶參數(shù)的main函數(shù)實(shí)現(xiàn)該程序。該程序應(yīng)該具有一定的錯(cuò)誤處理能力。例如,能夠處理
非法命令參數(shù)和非法文件名。
程序中可以使用以下C庫(kù)函數(shù):
intatoi(char*s)——將數(shù)字串轉(zhuǎn)換為相應(yīng)的整數(shù)
fgets(char*s,intn,FILE*fg)-----從文件中讀入一行;
void*malloc(unsignedsize).free-----申請(qǐng)和釋放內(nèi)存;
strlen-----計(jì)算字符串的長(zhǎng)度;
strcpy——講一個(gè)字符串拷貝到另一個(gè)字符串中;
除此之外,不允許使用其他庫(kù)函數(shù)。
提示:
1可以再命令行參數(shù)正確性分析過(guò)程中獲取被打印的文本文件名稱以及需要打印的行數(shù)等
信息。
2如果命令行分析正確,可以建立一個(gè)不帶頭結(jié)點(diǎn)的單向循環(huán)鏈表存放從文件中獨(dú)到的內(nèi)
容
2012計(jì)算機(jī)考研復(fù)試題回憶
一、編寫函數(shù)Eval,求解一元二次方程ax^2+bx+c=0的解,寫出每個(gè)參數(shù)的含義。
#include<iostream>//包含iostream的頭文件
#include<math.h>
#include<string>〃字符串處理函數(shù)
usingnamespacestd;
classFindRoot//定義類FindRoot
{
private:
floata,b,c;
doubler,q,x1,x2;〃定義數(shù)據(jù)成員類型
intjud;
public:
voidInput。;//輸入函數(shù)
voidDisplay。;//顯示函數(shù)
voidFind。;//求根函數(shù)
);
〃以上是類的聲明部分,以下是類的實(shí)現(xiàn)部分
voidFindRoot::lnput()
(
cout<<"這是一個(gè)求解ax2+bx+c=0的根的程序:"<<endl;〃總述程序
for(;;)
{
cout<<"輸入方程系數(shù)a:
cin?a;
if(a==O)
coutvv"錯(cuò)誤:a不能為0!!!:"?endl;
elsebreak;
}〃輸入a,并對(duì)a的可能情況進(jìn)行判斷
coutvv"輸入方程系數(shù)b:
cin?b;〃輸入b
coutvv"輸入方程系數(shù)c:
cin?c;〃輸入c
)
voidFindRoot::Find()〃定義求根的函數(shù)
(
floatdelta=b*b-4*a*c;〃定義求根公式的數(shù)據(jù)類型
if(delta<0)
{jud=O;
r=-b/(2*a);
q=sqrt(-delta)/(2*a);〃有兩個(gè)共輾復(fù)數(shù)根的情況
elseif(delta==O)
{
x1=-b/(2*a);
jud=1,有兩個(gè)相同的根的情況
)
else
{
x1=(-b+sqrt
(delta))/(2*a);
x2=(-b-sqrt
(delta))/(2*a);
jud=2;〃有兩個(gè)不同的根的情況
voidFindRoot::Display()〃定義顯示函數(shù)
(
switch(jud)
{
case0:
{cout?"x1="?r<<"+"?q?"i"?endl;
cout<<"x2="<<r<<"-"<<q<<"i"<<endl;}break;〃顯示有共輾復(fù)數(shù)根
時(shí)的解
case1:
cout?"x1=x2="?x1<<endl;break;〃顯示有——實(shí)根時(shí)的解
case2:
coutvv"x1="<vx1vv'\n'v<"x2="vvx2v<endl;break;〃顯示有兩不同根情況的解
voidmain()〃主函數(shù)
{
while(1)
{
FindRootf;//定義類型
f.lnput();
f.FindQ;
f.Display。;//以上各函數(shù)按順序執(zhí)行
cout<<"是否退出?(Y退出,其它任意鍵繼續(xù))"<<endl;〃程序是否退出
charm[2];charY[]="Y";chary[]="y";〃定義字符串
cin?m;
if(strcmp(m,Y)==O||strcmp(m,y)==O)
break;//如果退出血終止運(yùn)行
else
cout<<"請(qǐng)繼續(xù)..."<<endl;〃如果不退出則繼續(xù)執(zhí)行
二、輸入若干行文本,包括圓括號(hào),方括號(hào),字母,數(shù)字,以空符結(jié)束文本的輸入,找
出括號(hào)不匹配(包括圓括號(hào)、方括號(hào))的文本行并輸出。畫出程序的流程圖或者寫出程
序偽碼,寫出每個(gè)循環(huán)控制語(yǔ)句的用途
編寫C/C++函數(shù),驗(yàn)證一個(gè)字符串形式的表達(dá)式中的括號(hào)是否匹配,其中括號(hào)包括圓括號(hào)、方括號(hào)和
花括號(hào)。(2)編寫main函數(shù)從鍵盤讀入表達(dá)式,并調(diào)用你編寫的函數(shù)。
#include<stdio.h>
#include<stdlib.h>
typedefstruct{
char*base;
char*top;
intsize;
}snode;
boolmatch(char*p){
snodes;
inti;
i=0;
s.base=(char*)malloc(20*sizeof(char));〃初始化一個(gè)棧
if(!s.base){
printf("內(nèi)存空間不足\n");
returnfalse;
)
s.top=s.base;
s.size=20;
while(p[i]!='\0'){〃開(kāi)始循環(huán)“\0”是字符串
的結(jié)束標(biāo)志
if((p[i]=='{')ll(P[i]=='DJ|(P[i]=='(')){//篩選['進(jìn)棧
if(s.top-s.base>=s.size){〃入棧判棧滿
printf("棧滿\n");
returnfalse;
)
*(s.top)=p[i];
s.top++;
i++;
}else{
switch(p[i]){
case')':if(s.base==s.top){〃遇至『)則
開(kāi)始匹配,要是棧頂元素能匹配成功,則繼續(xù),否則直接return,里面的一些條件可以自己
想想
returnfalse;
}elseif(*(--s.top)=='('){
i++;
continue;
}else{
returnfalse;
)
case'}':if(s.base==s.top){
returnfalse;
}elseif(*(--s.top)=='{'){
i++;
continue;
}else{
returnfalse;
}
case:if(s.base==s.top){
returnfalse;
}elseif(*(--s.top)=='['){
i++;
continue;
}else{
returnfalse;
)
default:i++;//剔除其他符號(hào)
continue;
if(s.top==s.base)〃匹配成功則最后???/p>
returntrue;
else
returnfalse;
)
intmain(){
charstr[50];
inti=0;
char*p;
p=str;
printf("請(qǐng)輸入字符串
gets(str);
if(match(p))
printf("匹配成功!\n");
else
printf("匹配失敗……\n");
return0;
中國(guó)礦業(yè)大學(xué)2007年碩士研究生入學(xué)試題
三.請(qǐng)將一下語(yǔ)法改寫成為switch語(yǔ)句。
if((s>0)&&(s<=10))
if((s>=3)&&(s<=6))x=2;
elseif((s>l)||(s>8))x=3;
elsex=l;
elsex=0;
四.試編程序,找出1至99之間的全部同構(gòu)數(shù)。同構(gòu)數(shù)是這樣一組數(shù):它出現(xiàn)在平方數(shù)的
右邊。例如5是25右邊的數(shù),25是625右邊的數(shù),5和25都是同構(gòu)數(shù).(25分)
voidmain()
{
inti,j,s;
intcount=0;
for(i=1;i<100;i++)
{
if(i<10)
s=1;
elses=2;
j=i*i;
if(i==j%(int)pow(10,s))
(
printf("%d\n",i);
count++;
)
)
printf("totalnumber:%d\n",count);
應(yīng)該有5個(gè),1,5,6,25,76
五.通過(guò)賦初值按行順序給2*3的二維數(shù)組賦予236……等偶數(shù),然后按列的順序輸出該數(shù)
組。試編程。
voidmain()
(
intnum[2][3];
inti=0,j=0;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
num[i][j]=2*((3*i)+j+1);
for(j=0;j<3;j++)
{
for(i=0;i<2;i++)
(
printf("%d,",num[i][j]);
中國(guó)礦業(yè)大學(xué)2008年C語(yǔ)言考研真題
三.編寫程序,對(duì)于給定的一個(gè)百分制成績(jī),輸出相應(yīng)的五分制成績(jī)。設(shè):90分以上'A',80~89分為‘B',
70~79分為'C',60~69分為'D',60分以下為‘E'。
四.每個(gè)蘋果0.6元,第一個(gè)買菜個(gè)蘋果,第二天開(kāi)始,每天買前一天的2倍,直至購(gòu)買的
蘋果個(gè)數(shù)達(dá)到不超過(guò)100的最大值。編寫程序求每天平均花多少錢?
#include<stdio.h>
main()
{
intx=2,n=0,a;
floatave=0,sum=0;
scanf("%d",&a);
for(x,n;x<=a;n++)
(
sum=sum+0.8*x;
x=2*x;
)
ave=sum/n;
printf("%.2f\n",ave);
return0;
)
五.若有說(shuō)明:inta[2][3]={{1,2,3},{4,5,6}}冼要將a的行和列的元素互換后存到另一個(gè)二維數(shù)組b中,試
編寫程序。
中國(guó)礦業(yè)大學(xué)(北京)采礦工程專業(yè)考研真題——計(jì)算機(jī)語(yǔ)言基礎(chǔ)2006
三.編程實(shí)現(xiàn)以下功能:讀入兩個(gè)運(yùn)算數(shù)(datal和data2)及一個(gè)運(yùn)算符(op),
計(jì)算表達(dá)式datalopdata2的數(shù)值,其中op可為+,—,*,I,(用switch語(yǔ)句實(shí)現(xiàn))
四.編寫程序,從鍵盤輸入6名學(xué)生的5門成績(jī),分別統(tǒng)計(jì)出每個(gè)學(xué)生的平均成績(jī)。
#include<stdio.h>
#defineM6
#defineN5
floataverage(float*p,intn)/*求平均分的函數(shù)*/
{floatsum=0.;
inti;
for(i=0;i<n;i++)
sum=sum+*(p+i);
returnsum/n;
)
voidmain()
{floatscore[M][N],ave[M];/*定義數(shù)組score⑹[5]用來(lái)放6個(gè)學(xué)生5門課成績(jī)*/
inti,j;
for(i=0;i<M;i++)
{printf("輸入第%d個(gè)學(xué)生的%d門課的成績(jī):",i+1,N);
for(j=0;j<N;j++)
scanf("%f",&score[i][j]);
printf("\n");
)
for(i=0;i<M;i++)
{ave[i]=average(score[i],N
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 標(biāo)準(zhǔn)計(jì)劃智能計(jì)劃趨勢(shì)明星
- 公開(kāi)引進(jìn)高層次人才報(bào)名登記表
- 我對(duì)電子世界的看法(英語(yǔ))
- 秋季中醫(yī)養(yǎng)生保健知識(shí)
- 2025至2030年中國(guó)頭孢拉定針劑數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- Unit+3+Sports+and+fitness+Reading+and+thinking高中英語(yǔ)人教版(2019)必修第一冊(cè)
- 2025至2030年中國(guó)動(dòng)物多維數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國(guó)中筒毛圈少襪數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 印刷木紋紙貼面板企業(yè)ESG實(shí)踐與創(chuàng)新戰(zhàn)略研究報(bào)告
- 婦科中藥注射液系列行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 2024年蘇州衛(wèi)生職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文歷年參考題庫(kù)含答案解析
- 《歡樂(lè)運(yùn)動(dòng)會(huì):1 我為班級(jí)出把力》說(shuō)課稿-2024-2025學(xué)年四年級(jí)上冊(cè)綜合實(shí)踐活動(dòng)滬科黔科版
- 2025年中智集團(tuán)及下屬單位招聘筆試參考題庫(kù)含答案解析
- 廣東2025年高中化學(xué)學(xué)業(yè)水平考試模擬試卷試題(含答案詳解)
- 2024年中國(guó)牛排2市場(chǎng)調(diào)查研究報(bào)告
- 2025年事業(yè)單位考試(綜合管理類A類)綜合應(yīng)用能力試題及解答參考
- 科創(chuàng)板知識(shí)題庫(kù)試題及答案
- UL1450標(biāo)準(zhǔn)中文版-2019電動(dòng)空氣壓縮機(jī)真空泵和涂裝設(shè)備中文版第四版
- “互聯(lián)網(wǎng)+”大學(xué)生創(chuàng)新創(chuàng)業(yè)大賽計(jì)劃書一等獎(jiǎng)
- 物業(yè)社區(qū)文化活動(dòng)培訓(xùn)
- 采購(gòu)員工作總結(jié)
評(píng)論
0/150
提交評(píng)論