c語(yǔ)言上機(jī)考試編程題庫(kù)_第1頁(yè)
c語(yǔ)言上機(jī)考試編程題庫(kù)_第2頁(yè)
c語(yǔ)言上機(jī)考試編程題庫(kù)_第3頁(yè)
c語(yǔ)言上機(jī)考試編程題庫(kù)_第4頁(yè)
c語(yǔ)言上機(jī)考試編程題庫(kù)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(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)介

本文格式為Word版,下載可任意編輯——c語(yǔ)言上機(jī)考試編程題庫(kù)

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

1、輸入一個(gè)字符,判斷它是否是大寫字母,假使是,將它轉(zhuǎn)換成小寫字母;假使不是,不轉(zhuǎn)換。然后輸出最終得到的字符。

#includestdio.h

intmain()

{

}

2、輸入一行字符,分別統(tǒng)計(jì)出其中英文字母、空格、數(shù)字和其他字符的個(gè)數(shù)。

#includestdio.h

intmain()

{

}

3、編寫一個(gè)函數(shù),求數(shù)列1+1/2+1/3+1/4+1/5+...1/n,利用主函數(shù)調(diào)用這個(gè)函數(shù)并輸出結(jié)果。#includestdio.h

intmain()

{

intn;floatc;

floatsum(intn);scanf(%d,n);c=sum(n);printf(%f\n,c);charc;intletters=0,space=0,digit=0,other=0;printf(Pleaseinputletters:\n);while((c=getchar())!='\n'){}return0;if(c='a'c='z'||c='A'c='Z')letters++;digit++;space++;other++;elseif(c='0'c='9')elseif(c=='')elsecharc1;printf(inputalatter:\n);scanf(%c,c1);if(c1='A'c1='Z')c1=c1+32;printf(%c,c1);return0;printf(字母數(shù):%d\n數(shù)字?jǐn)?shù):%d\n空格數(shù):%d\n其他字母數(shù):%d\n,letters,digit,space,other);

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

floatsum(intn)

{

}

4、輸入一個(gè)字符,判斷它是否是小寫字母,假使是,將它轉(zhuǎn)換成大寫字母;假使不是,不轉(zhuǎn)換。然后輸出最終得到的字符。

#includestdio.h

intmain()

{

}

5、求S=a+aa+aaa+...+aa...a(n個(gè)a)之值。其中a是一個(gè)數(shù)字,n代表a的位數(shù)。例如:2+22+222+2222+22222(此時(shí)n為5),n由鍵盤輸入。

#includestdio.h

intmain()

{

}

6、將一個(gè)二維數(shù)組行和列的元素互換,存到另外一個(gè)二維數(shù)組中。

#includestdio.h

intmain()inti,a,b,c,n;scanf(%d,%d,a,n);c=b=a;for(i=2;i=n;i++){}printf(%d\n,c);return0;b=10*b+a;c=b+c;charc1;printf(inputalatter:\n);scanf(%c,c1);if(c1='a'c1='z')c1=c1-32;printf(%c,c1);return0;inti;floatsum=0.0;sum=sum+1.0/i;for(i=1;i=n;i++)returnsum;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

inti,j;inta[3][3]={1,2,3,4,5,6,7,8,9},b[3][3];for(i=0;i=2;i++){}printf(\n);printf(arrayb:\n);{for(j=0;j=2;j++)for(j=0;j=2;j++){b[j][i]=a[i][j];}printf(\n);printf(arraya:\n);printf(%5d,a[i][j]);for(i=0;i=2;i++)

printf(%5d,b[i][j]);

printf(\n);

}

7、有三個(gè)整數(shù)a,b,c,由鍵盤輸入,輸出其中最大者。

#includestdio.h

intmain()

{

}

intmax(intx,inty,intz)

{

intq,p;if(xy)q=x;elseq=y;if(zq)p=z;elsep=q;returnp;inta,b,c,d;intmax(intx,inty,intz);scanf(%d%d%d,a,b,c);d=max(a,b,c);printf(%d\n,d);return0;}return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

8、將一個(gè)數(shù)組中的值按逆序重新存放。例如,原來(lái)順序?yàn)?,6,4,3,2,0。要求改為0,2,3,4,6,8。

#includestdio.h

intmain()

{

}

9、有分段函數(shù):當(dāng)x-5時(shí),y=x+10;當(dāng)-5≤x≤5時(shí),y=x/2;當(dāng)x5時(shí),y=2x-10.

編一程序,輸入x的值,輸出y的值。

#includestdio.h

intmain()

{

floaty,x;printf(請(qǐng)輸入X的值);scanf(%f,x);if(x-5){}elseif(x=-5x=5){}else{y=2*x-10;y=x/2;printf(%3f,y=x/2=%f\n,x,y);y=x+10;printf(%3f,y=x+10=%f\n,x,y);inta[6]={8,6,4,3,2,0};printf(arraya:\n);printf(%5d,a[i]);inti,b[6];for(i=0;i6;i++)printf(\n);for(i=0;i6;i++)b[i]=a[5-i];printf(\n);printf(arrayb:\n);for(i=0;i6;i++)printf(%5d,b[i]);printf(\n);return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}}return0;

10、用pi4≈1-1/3+1/5-1/7+...公式求pi的近似值,直到某一項(xiàng)的絕對(duì)值小于10的-6次方為止。#includestdio.h

#includemath.h

intmain()

{

intsign=1,count=0;

doublepi=0.0,n=1.0,term=1.0;

while(fabs(term)=1e-8)

{

pi=pi+term;

n=n+2;

sign=-sign;

term=sign/n;

}

pi=pi*4;

printf(pi=%10.8f\n,pi);

return0;

}

11、輸出以下圖形

*

***

*****

*******

#includestdio.h

intmain()

{inti,j,k;

for(i=0;i=3;i++)

{for(j=0;j=2-i;j++)

printf();

for(k=0;k=2*i;k++)

printf(*);

printf(\n);

}//下面的可以不要

/*for(i=0;i=2;i++)

{for(j=0;j=i;j++)

printf();

for(k=0;k=4-2*i;k++)

printf(*);

printf(\n);

}*/

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}

12、輸入三個(gè)實(shí)數(shù),將這三個(gè)數(shù)按由大到小的順序排列,并輸出這三個(gè)數(shù)。

#includestdio.h

intmain()

{

inta,b,c,t;printf(請(qǐng)輸入a,b,c的值\n);scanf(%d,%d,%d,a,b,c);if(ab){t=a;

a=b;

b=t;

}

13、猴子吃桃問(wèn)題。猴子第一天摘下若干個(gè)桃子,當(dāng)即吃了一半,還不過(guò)癮,又多吃了一個(gè)。其次天早上又將剩下的桃子吃掉一半,又多吃一個(gè)。以后每天早上都吃了前一天剩下的一半零一個(gè)。到第10天早上想吃時(shí)就剩一個(gè)桃子了。求第一天共摘了多少個(gè)桃子。

#includestdio.h

intmain()

{

intday,x1,x2;

day=9;

x2=1;

while(day0)

{x1=(x2+1)*2;

x2=x1;}if(ac){}if(bc){}printf(%d,%d,%d,\n,a,b,c);t=b;b=c;c=t;t=a;a=c;c=t;return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}

printf(total=%d\n,x1);

return0;

}

14、用冒泡排序法對(duì)輸入的10個(gè)數(shù)進(jìn)行升序排序,并存入數(shù)組中。

#includestdio.h

intmain()

{

}

15、輸入三角形的三邊長(zhǎng),求三角形面積。求三角形面積的公式為area=sqrt(s(s-a)(s-b)(s-c)),其中s=(a+b+c)/2。

#includestdio.h/*有問(wèn)題*/

#includemath.h

intmain()

{

floata,b,c,s,area;

printf(pleaseinputa,b,c:\n);

scanf(%f,%f,%f,a,b,c);

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf(a=%f\tb=%f\t%f\n,a,b,c);

printf(area=%f\n,area);

return0;

}

16、一個(gè)數(shù)假使恰好等于它的因子之和,這個(gè)數(shù)就稱為完數(shù)。例如,6的因子為1、2、3,而6=1+2+3,因此6是完數(shù)。編程求1000以內(nèi)所有完數(shù)。inta[10],i,j,t;printf(pleaseinput10numbers:\n);for(i=0;i10;i++)scanf(%d,a[i]);for(j=0;j=9;j++)for(i=1;i9-j;i++)if(a[i]a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf(thesortednumbers:\n);for(i=0;i10;i++)printf(%5d,a[i]);printf(\n);return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

#defineM1000

#includestdio.h

intmain()

{

intk1,k2,k3,k4,k5,k6,k7,k8,k9,k10;

inti,a,n,s;

for(a=2;a=M;a++)

{n=0;

s=a;

for(i=1;ia;i++)

if(a%i==0)

{n++;s=s-i;switch(n){case1:k1=i;break;case2:k2=i;break;case3:k3=i;break;case4:k4=i;break;case5:k5=i;break;case6:k6=i;break;case7:k7=i;break;case8:k8=i;break;case9:k9=i;break;case10:k10=i;break;}}

if(s==0)

{

printf(%d,Itsfactorsare,a);

if(n1)printf(%d,%d,k1,k2);

if(n2)printf(,%d,k3);

if(n3)printf(,%d,k4);

if(n4)printf(,%d,k5);

if(n5)printf(,%d,k6);

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

if(n6)printf(,%d,k7);

if(n7)printf(,%d,k8);

if(n8)printf(,%d,k9);

if(n9)printf(,%d,k10);

printf(\n);

}

}

return0;

}

17、有三個(gè)整數(shù)a,b,c,由鍵盤輸入,輸出其中最小者。

#includestdio.h

intmain()

{

inta,b,c,t;printf(請(qǐng)輸入a,b,c的值\n);scanf(%d,%d,%d,a,b,c);if(ab){t=a;

a=b;

b=t;

}

18、編程求1!+3!+5!+7!+9!的值,并輸出結(jié)果。

#includestdio.h

intmain()

{

ints=0,i,j,a;for(i=1;a=1,i=9;i=i+2)}if(ac){}if(bc){}printf(%d\n,c);t=b;b=c;c=t;t=a;a=c;c=t;return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}{}printf(%d\n,s);return0;for(j=1;j=i;j++)a=a*j;s=s+a;

19、有分段函數(shù):當(dāng)x-10時(shí),y=|x|+5;當(dāng)-10≤x≤10時(shí),y=4x-8;當(dāng)x10時(shí),y=sqrt(x)。編一程序,輸入x的值,輸出y的值。

#includestdio.h

#includemath.h

intmain()

{intx;

floaty;

printf(輸入x:);

scanf(%d,x);

if(x-10)

{y=-x+5;

printf(x=%3d,y=|x|+5=%f\n,x,y);

}

elseif(x=10)

}

20、有一函數(shù):當(dāng)x0時(shí),y=-1;當(dāng)x=0時(shí),y=0;當(dāng)x0時(shí),y=1。編一程序,輸入x的值,輸出y的值。#includestdio.h

intmain()

{

intx,y;

printf(enterx:);

scanf(%d,x);

if(x==0)y=-1;

elseif(x!=0)

if(x0)y=1;

elsey=0;

printf(x=%d,y=%d\n,x,y);{y=4*x-8;printf(x=%d,y=4*x-8=%f\n,x,y);}else{y=sqrt(x);printf(x=%d,y=sqrt(x)=%f\n,x,y);}return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

return0;

}

21、輸出所有的“水仙花數(shù)〞,所謂“水仙花數(shù)〞是指一個(gè)3位數(shù),其各位數(shù)字立方和等于該數(shù)本身。#includestdio.h

intmain()

{

inti,j,k,n;

printf(parcissusnumbersare);

for(n=100;n1000;n++)

{

i=n/100;

j=n/10-i*10;

k=n%10;

if(n==i*i*i+j*j*j+k*k*k)

printf(%d,n);

}

printf(\n);

return0;

}

22、寫一個(gè)函數(shù),求兩個(gè)整數(shù)中的較大者,用主函數(shù)調(diào)用這個(gè)函數(shù),并輸出結(jié)果,兩個(gè)整數(shù)由鍵盤輸入。#includestdio.h

intmain()

{

}

intmax(intx,inty)

{

}

23、編程求2!+4!+6!+8!+10!的值,并輸出結(jié)果。

#includestdio.h

intmain()

{intz;if(xy)z=x;elsez=y;returnz;inta,b,c;intmax(intx,inty);printf(請(qǐng)輸入a,b的值:\n);scanf(%d,%d,a,b);c=max(a,b);printf(%d\n,c);return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}ints=0,i,j,a;for(i=2;a=1,i=10;i=i+2){}printf(%d\n,s);return0;for(j=1;j=i;j++)a=a*j;s=s+a;

24、編程求圓面積、圓周長(zhǎng)。要求圓半徑由鍵盤輸入,輸出時(shí)要求有文字說(shuō)明,取小數(shù)點(diǎn)后兩位數(shù)字。#includestdio.h

#definepi3.1415926

intmain()

{

}

25、編程求1~100之間的所有素?cái)?shù),并輸出結(jié)果。

#includestdio.h

#includemath.h

intmain()

{

intn,k,i,m=0;

for(n=1;n=100;n=n+2)

{

k=sqrt(n);

for(i=2;i=k;i++)

if(n%i==0)break;

if(i=k+1)

{printf(%d,n);floatr,h,c,s,bm,v,zt;scanf(%f,%f,r,h);c=2*pi*r;s=r*r*pi;bm=4*pi*r*r;v=3.0/4.0*pi*r*r*r;zt=pi*r*r*h;printf(圓周長(zhǎng)為:c=%f\n圓面積為:s=%f\n圓球表面積為:bm=%f\n圓球體積為:v=%f\n圓柱體return0;printf(請(qǐng)輸入圓半徑r,圓柱高h(yuǎn):\n);積為:zt=%f\n,c,s,bm,v,zt);m=m+1;}if(m%10==0)printf(\n);

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}

printf(\n);

return0;

}

26、求一個(gè)33的整型矩陣對(duì)角線元素之和。

#includestdio.h

intmain()

{

inta[3][3],sum=0;

inti,j;

printf(enterdata:\n);

for(i=0;i3;i++)

for(j=0;j3;j++)

scanf(%3d,a[i][j]);

for(i=0;i3;i++){}for(j=0;j3;j++)printf(%5d,a[i][j]);printf(\n);

for(i=0;i3;i++)

sum=sum+a[i][i];

printf(sum=%6d\n,sum);

return0;

}

27、將一個(gè)二維數(shù)組行和列的元素互換,存到另外一個(gè)二維數(shù)組中。

#includestdio.h

intmain()

{

inta[2][2],b[2][2],i,j;printf(enterdata:\n);for(i=0;i2;i++)for(j=0;j2;j++)scanf(%d,a[i][j]);printf(\n);printf(arraya:\n);for(i=0;i2;i++){for(j=0;j2;j++){}printf(\n);printf(%3d,a[i][j]);b[j][i]=a[i][j];

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}}printf(arrayb:\n);for(i=0;i2;i++){}return0;for(j=0;j2;j++)printf(%3d,b[i][j]);printf(\n);printf(\n);

28、編程求1!+2!+3!++10!的值,并輸出結(jié)果。

#includestdio.h

intmain()

{

}

29、編寫兩個(gè)函數(shù)分別求兩個(gè)整數(shù)的最大公約數(shù)和最小公倍數(shù),在主函數(shù)中調(diào)用這兩個(gè)函數(shù),并輸出結(jié)果,兩個(gè)整數(shù)由鍵盤輸入。

#includestdio.h

intmain()

{inthcf(int,int);

intlcd(int,int,int);

intu,v,h,l;

scanf(%d,%d,u,v);

h=hcf(u,v);

printf(H.C.F=%d\n,h);

l=lcd(u,v,h);

printf(L.C.D=%d\n,l);

return0;

}

inthcf(intu,intv)

{intt,r;

if(vu)intsum=0,i,j,a;for(i=1;i=10;i++){}printf(%d\n,sum);return0;for(j=1,a=1;j=i;j++)a=a*j;sum=sum+a;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

{t=u;u=v;v=t;}

while((r=u%v)!=0)

{u=v;

v=r;}

return(v);

}

intlcd(intu,intv,inth)

{

return(u*v/h);

}

30、輸入一個(gè)華氏溫度,要求輸出攝氏溫度,輸出時(shí)要求有文字說(shuō)明,取小數(shù)點(diǎn)后兩位數(shù)字。公式為c=5/9(f-32)。

#includestdio.h

intmain()

{

}

31、編寫程序,將兩個(gè)字符串連接起來(lái),不要使用strcat函數(shù)。

#includestdio.h

voidmain()

{

}

32、有一分?jǐn)?shù)序列:2/1,3/2,5/3,8/5,13/8,21/13,求出這個(gè)數(shù)列前20項(xiàng)之和。

#includestdio.hcharstr1[20],str2[20];inti=0,j=0;printf(請(qǐng)輸入字符串1:\n);scanf(%s,str1);printf(請(qǐng)輸入字符串2:\n);scanf(%s,str2);while(str1[i]!='\0')i++;str1[i++]=str2[j++];while(str2[j]!='\0')str1[i]='\0';printf(合并之后的字符串為:%s\n,str1);floatf,c;printf(請(qǐng)輸入一個(gè)華氏溫度:);scanf(%f,f);c=(5.0/9.0)*(f-32);printf(對(duì)應(yīng)的攝氏溫度為:);printf(%6.2f\n,c);return0;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

intmain()

{

inti,n=20;

doublea=2,b=1,s=0,t;

for(i=1;i=n;i++)

{

s=s+a/b;

t=a;

a=a+b;

b=t;

}

printf(sum=%16.10f\n,s);

return0;

}

33、輸出以下圖形

*******

*****

***

*

#includestdio.h

intmain()

{inti,j,k;

for(i=0;i=3;i++)

{for(j=0;j=i;j++)

printf();

for(k=0;k=6-2*i;k++)

printf(*);

printf(\n);

}

return0;

}

34、有一個(gè)3乘4的矩陣,要求編程序求出其中值最大的那個(gè)元素的值,以及其所在的行號(hào)和列號(hào)。#includestdio.h

intmain()

{

inta[3][4]={12,23,56,89,78,85,94,63,41,75,86,52},i,j,max;max=a[0][0];i=0;j=0;for(i=0;i3;i++){for(j=0;j4;j++){

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

}}max=a[i][j];i=i;}j=j;printf(max=%d,i=%d,j=%d\n,max,i,j);return0;

35、求Fibonacci數(shù)列前40個(gè)數(shù)。這個(gè)數(shù)列有以下特點(diǎn):第1和第2個(gè)數(shù)為1,從第3個(gè)數(shù)開(kāi)始,該數(shù)是其前面兩個(gè)數(shù)之和。

#includestdio.h

intmain()

{

}

36、編寫程序,判斷某一年是否是閏年。(閏年的條件是:能被4整除,但是不能被100整除,或者可以被400整除。

#includestdio.h

intmain()

{

intn,leap;if(n%4==0){if(n%100==0){if(n%400==0)leap=1;elseleap=0;}elseleap=1;}elseleap=0;if(leap)printf(%dis,n);elseprintf(%disnot,n);printf(aleapyear.\n);scanf(%d,n);longintf1,f2;inti;f1=1;f2=1;for(i=1;i=20;i++){}return0;printf(%12d%12d,f1,f2);if(i%2==0)printf(\n);f1=f1+f2;f2=f2+f1;

主要適用于河南工業(yè)大學(xué)學(xué)生c語(yǔ)言考試

37、一個(gè)球從100m高度自由落下,每次落地后又反跳回原高度的一半,再落下,再

溫馨提示

  • 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)論