c語言編程大題題庫1_第1頁
c語言編程大題題庫1_第2頁
c語言編程大題題庫1_第3頁
c語言編程大題題庫1_第4頁
c語言編程大題題庫1_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第頁三、編程題1.輸入一個半徑值,分別計算圓周長、圓面積和球的體積。要求使用符號常量定義圓周率。#include<stdio.h>intmain()printf("計算圓周長面積求面積\n");floatr,c,s,v;scanf("%f",&r);#definePI3.14159265c=2*PI*r;s=4*PI*r*r;v=4/3*PI*r*r*r;printf("周長是%.2f\n",c);printf("表面積是%.2f\n",s);printf("體積是%.2f\n",v);return0;2.假設今天是星期三,編程求20天之后是星期幾?#include<stdio.h>intmain()printf("今天是星期三,20天后是星期幾?\n");inti;i=23%7;printf("20天后是星期%d\n",i);return0;3.從鍵盤輸入一個字符,然后將其按字符和整數(shù)這兩種形式輸出。#include<stdio.h>intmain()printf("輸入一個字符\n");chari;scanf("%c",&i);printf("整數(shù)形式是%d\n",i);printf("字母形式是%c\n",i);return0;4.輸入一個大寫英文字母,將它轉(zhuǎn)化為小寫輸出。#include<stdio.h>intmain() printf("請輸入一個大寫英文字母\n"); charch; scanf("%c",&ch); printf("%c\n",ch+32);return0; 5.求一元二次方程ax^2+bx+c=0方程的兩個實根。a、b、c由鍵盤輸入。(默認b*b-4*a*c>=0)#include<stdio.h>#include<math.h>intmain() printf("求兩個實數(shù)根\n");floatx1,x2,a,b,c;scanf("%f%f%f",&a,&b,&c);x1=((-b)+sqrt(b*b-4*a*c))/2;x2=((-b)-sqrt(b*b-4*a*c))/2; printf("%.2f\n",x1); printf("%.2f\n",x2);return0; 6.輸入長方形的長和寬,編程求該長方形的周長和面積#include<stdio.h>intmain() printf("輸入長和寬\n"); inta,b,c,s;scanf("%d%d",&a,&b);c=2*(a+b);s=a*b;printf("周長是%d\n",c);printf("面積是%d\n",s);return0; 7.要將“China”譯成密碼,譯碼規(guī)律是:用原來字母后面的第5個字母代替原來的字母。例如,字母“A”后面第5個字母是“F”,用“F”代替“A”。因此,“China”應譯為“Hmnsf”。請編寫程序,用賦初值的方法使c1、c2、c3、c4、c55個變量的值分別為‘C’、‘h’、‘i’、‘n’、‘a(chǎn)’,經(jīng)過運算,使c1、c2、c3、c4、c5分別變?yōu)椤瓾’、‘m’、‘n’、‘s’、‘f’并輸出。#include<stdio.h>intmain()printf("China到Hmnst\n");chara[5]={'C','h','i','n','a'};for(inti=0;i<=5;i++)a[i]=a[i]+5;for(intj=0;j<=5;j++)printf("%c",a[j]);printf("\n");return0; 8.有人用溫度計測量出用華氏法表示的溫度,現(xiàn)輸入華氏溫度f,要求把它轉(zhuǎn)換為以攝氏法表示的溫度c并輸出。(c=5/9(f-32))#include<stdio.h>intmain()printf("把華氏溫度轉(zhuǎn)換為攝氏溫度\n");printf("請輸入華氏溫度:\n");floati,j;scanf("%f",&i);j=5*(i-32)/9;printf("%.1f\n",j);return0;9.編寫程序,輸入兩個實數(shù),按代數(shù)值由大到小的順序輸出這兩個實數(shù)。#include<stdio.h>intmain()printf("將兩個實數(shù)從大到小排列\(zhòng)n");floati,j;scanf("%f%f",&i,&j);if(i>j)printf("輸出%f%f\n",i,j);elseprintf("輸出%f%f\n",j,i);return0;10.編寫程序,從鍵盤輸入兩個整數(shù),輸出其中較小的數(shù)。#include<stdio.h>intmain()printf("輸出較小的數(shù)\n");inti,j;scanf("%d%d",&i,&j);if(i<j)printf("%d\n",i);elseprintf("%d\n",j);return0;11.編寫程序,輸入一個不多于5位的正整數(shù),輸出該正整數(shù)是幾位數(shù)。#include<stdio.h>intmain()printf("輸入一個不多于5位數(shù)的正整數(shù)\n");inti;scanf("%d",&i);if(i>0&&i<10)printf("%d是一位數(shù)\n",i);if(i>=10&&i<100)printf("%d是二位數(shù)\n",i);if(i>=100&&i<1000)printf("%d是三位數(shù)\n",i);if(i>=1000&&i<10000)printf("%d是四位數(shù)\n",i);return0;12.編寫程序,不使用系統(tǒng)提供的數(shù)學函數(shù),編寫程序求一個實數(shù)的絕對值。#include<stdio.h>intmain()printf("求一個實數(shù)的絕對值\n");inti;scanf("%d",&i);if(i>=0)printf("絕對值是%d\n",i);if(i<0)printf("絕對值是%d\n",-i);return0;13.編寫程序,編寫程序?qū)崿F(xiàn)如下分段函數(shù)。當x<-5時,f(x)=|x|+5;當-5≤x≤5時,f(x)=x*x;當x>5時,f(x)=6x-10。(x定義成實型數(shù)據(jù))#include<stdio.h>intmain()inti;scanf("%d",&i);if(i<-5)printf("%d\n",-i+5);if(-5<=i&&i<=5)printf("%d\n",i*i);elseprintf("%d\n",6*i-10);return0;14.編寫程序,輸入2019年的一個月份,輸出該月有多少天。(使用switch語句實現(xiàn))#include<stdio.h>intmain()printf("輸入月份\n");intmonth,day;scanf("%d",&month);switch(month)case2:day=28;printf("%d\n",day);break;case1:case3:case5:case7:case8:case10:case12:day=31;printf("%d\n",day);break;case4:case6:case9:case11:day=30;printf("%d\n",day);break;return0;15.編寫程序,判斷某一年是否是閏年。#include<stdio.h>intmain()printf("判斷某一年是否為閏年\n");inti;scanf("%d",&i);if(i%4==0)printf("%d是閏年\n",i);if(i%4!=0)printf("%d是平年\n",i);return0;16.編寫程序,編寫程序,根據(jù)輸入的學生成績輸出相應的等級。90分以上(包括90分)為A等,80~89分為B等,70~79分為C等,60~69分為D等,60分以下為E等。#include<stdio.h>intmain()printf("求學生成績相應的等級\n");inti;scanf("%d",&i);if(i>=90)printf("%d是A\n",i);elseif(i<90&&i>=80)printf("%d是B\n",i);elseif(i<80&&i>=70)printf("%d是C\n",i);elseif(i<70&&i>=60)printf("%d是D\n",i);elseprintf("%d是E\n",i);return0;17編寫程序,輸入一個百分制成績,若大于等于60,則輸出“恭喜!您的成績通過了!”,若小于60,則輸出“抱歉!您的成績未通過!”(要求成績只能是整數(shù))#include<stdio.h>intmain() printf("請輸入您的成績\n");inti;scanf("%d",&i);if(i>=60)printf("您通過了\n");elseprintf("您沒通過\n");return0;18.編寫程序,輸入3個整數(shù)x、y、z,輸出其中最小值。#include<stdio.h>intmain() printf("輸出最小值\n");intx,y,z,min1,min;scanf("%d%d%d",&x,&y,&z);min1=x<y?x:y;min=min1<z?min1:z;printf("最小值是%d\n",min);return0;19.編寫程序,輸入三角形的3條邊a、b、c,判斷它們能否構(gòu)成三角形。若能構(gòu)成三角形,求出三角形面積。(s=(a+b+c)/2,三角形面積area=sqrt(s(s-a)(s-b)(s-c)))#include<stdio.h>#include<math.h>intmain() printf("判斷能否構(gòu)成三角形若能求面積\n"); floata,b,c,d,s; scanf("%f%f%f",&a,&b,&c); d=(a+b+c)/2;if(a>=c+b||b>=a+c||c>=a+b)printf("不能構(gòu)成三角形\n");elses=sqrt(d*(d-a)*(d-b)*(d-c));printf("面積是%.2f\n",s);return0;20.編寫程序,試編程判斷輸入的正整數(shù)是否既是5又是7的整倍數(shù)。若是,則輸出yes,否則輸出no。#include<stdio.h>intmain() printf("判斷一個正整數(shù)是否既是5又是7的倍數(shù)\n"); inti; scanf("%d",&i); if(i%35==0) printf("yes\n"); else printf("no\n");return0;21.編寫程序,編程實現(xiàn)以下功能:讀入兩個運算數(shù)(data1和data2)及一個運算符(op),計算表達式data1opdata2的值,其中op可為+,?,*,/(執(zhí)行除法運算時假設data2不為0,用switch語句實現(xiàn))。#include<stdio.h>intmain()charop;floatdata1,data2;printf("請輸入兩個數(shù)字\n");scanf("%f%c%f",&data1,&op,&data2);switch(op)case'+':printf("%f+%f=%.2f\n",data1,data2,data1+data2);break;case'-':printf("%f-%f=%.2f\n",data1,data2,data1-data2);break;case'*':printf("%f*%f=%.2f\n",data1,data2,data1*data2);break;case'/':printf("%f/%f=%.2f\n",data1,data2,data1/data2);break;return0;22.編寫程序,編寫程序,輸入任意一個1~7之間的整數(shù),將他們轉(zhuǎn)換成對應的表示星期幾的英文單詞。例如:1轉(zhuǎn)換成Monday,7轉(zhuǎn)換成Sunday。(使用switch語句實現(xiàn))#include<stdio.h>intmain()printf("請輸入1至7之間任意整數(shù)\n");inti;scanf("%d",&i);switch(i)case1:printf("Monday\n");break;case2:printf("Tuesday\n");break;case3:printf("Wednesday\n");break;case4:printf("Thursday\n");break;case5:printf("Friday\n");break;case6:printf("Saturday\n");break;case7:printf("Sunday\n");break;return0;23.輸出小寫字母的ascii碼對照表。#include<stdio.h>intmain()printf("輸出小寫字母的ascii碼\n");charch;ch='a';for(inti=0;i<=25;i++)printf("%c:%d\t",ch+i,ch+i);printf("\n");return0;24.輸入一行字符,分別統(tǒng)計出其中英文字母、空格、數(shù)字和其他字符的個數(shù)。#include<stdio.h>main()inta=0,b=0,c=0,d=0,i=0;chars[10];printf("請輸入一行不超過十個字的字符串:\n");gets(s);while(i<10)if(s[i]>='0'&&s[i]<='9')a++;elseif((s[i]>='a'&&s[i]<='z')||(s[i]>='A'&&s[i]<='Z'))b++;elseif(s[i]=='')c++; elsed++;i++;printf("數(shù)字的個數(shù)是%d\n",a);printf("字母的個數(shù)是%d\n",b);printf("空格的個數(shù)是%d\n",c);printf("其他符號的個數(shù)是%d\n",d);return0;25.輸出圖形#include<stdio.h>#include<math.h>intmain()for(inti=0;i<=3;i++)for(intj=1;j<=7;j++)if(j>=fabs(4-i)&&j<=fabs(4+i))printf("$");elseprintf("");printf("\n");return0;26.求s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n),要求n從鍵盤輸入。#include<stdio.h>main()intsum=0,n,i,a=1;printf("計算1+(1+2)+(1+2+3)+……(1+2+3+n)=?\n");scanf("%d",&n);while(a<=n)i=(1+a)*a/2;sum=sum+i;a++;printf("輸出sum=%d\n",sum);return0;27.計算10!#include<stdio.h>intmain()inti=1,a=1;for(i=1;i<=10;i++)a=a*i;printf("%d\n",a);return0;28.輸出所有的“水仙花數(shù)”,所謂“水仙花數(shù)”是指一個3位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如,153是一個水仙花數(shù),因為153=1^3+5^3+3^3。#include<stdio.h>intmain()printf("輸出所有的水下花數(shù)\n");for(inti=1;i<=9;i++)for(intj=0;j<=9;j++)for(intk=0;k<=9;k++)if(100*i+10*j+k==i*i*i+j*j*j+k*k*k)printf("%d%d%d",i,j,k);printf("\n");return0;29.雞兔同籠,上數(shù)共有35個頭,下有94只腳,雞、兔各有幾只?#include<stdio.h>intmain()for(intx=0;x<=35;x++)for(inty=0;y<=35;y++)if((x+y==35)&&(2*x+4*y==94))printf("雞有%d只,兔子有%d只\n",x,y);return0;30.編程找10個數(shù)中的最大數(shù)以及該數(shù)在數(shù)組中的位置。#include<stdio.h>intmain() printf("找10個數(shù)中最大數(shù)極其所在位置\n");inta[10],max;for(inti=0;i<=9;i++)scanf("%d",&a[i]);max=a[0];for(intj=1,intk=0;j<=9;j++)if(max<a[j])max=a[j];k=j+1;printf("第%d位\n",k);printf("最小是%d\n",max);return0;31.編程找10個數(shù)中的最小數(shù)以及該數(shù)在數(shù)組中的位置。#include<stdio.h>intmain() printf("找10個數(shù)中最小數(shù)極其所在位置\n");inta[10],min;for(inti=0;i<=9;i++)scanf("%d",&a[i]);min=a[0];for(intj=1,intk=0;j<=9;j++)if(min>a[j])min=a[j];k=j+1;printf("第%d位\n",k);printf("最小是%d\n",min);return0;32.編程將一個數(shù)組中的元素按逆序存放。#include<stdio.h>intmain() printf("一個數(shù)組按照逆序存放\n");inta[10],b[10];for(inti=0;i<=9;i++)scanf("%d",&a[i]);for(intj=0;j<=9;j++)b[j]=a[9-j];printf("%d",b[j]);printf("\n");return0;33.編程計算Fibonacci數(shù)列的前50項,并把結(jié)果存放在一個數(shù)組中。(Fibonacci數(shù)列前兩項的值是1。從第3項開始,其值為前兩項之和。)#include<stdio.h>intmain()inta[50]={0,1};for(inti=2;i<50;i++)a[i]=a[i-1]+a[i-2];for(i=0;i<50;i++)printf("%f\t",a[i]);printf("\n");return0;34.編寫程序,將兩個字符串連接起來(不使用strcat函數(shù))。#include<stdio.h>intmain() inti=0,j=0;printf("將兩個字符串連接起來\n");charch1[100],ch2[100];printf("輸入第一個字符串:");gets(ch1);printf("輸入第二個字符串:");gets(ch2);while(ch1[i]!='\0')i++;while(ch1[j]!='\0')j++;for(intk=i;k<=i+j-1;k++)ch1[k]=ch2[k-i];printf("連接后為:");for(intl=0;l<=i+j-1;l++)printf("%c",ch1[l]);printf("\n");return0;35.有一個2行3列的矩陣,編程找出值最小的元素的值以及它所在的行列號。#include<stdio.h>intmain() printf("找到最小元素的值極其位置\n");inta[2][3],min,x,y;for(inti=0;i<=1;i++)for(intj=0;j<=2;j++)scanf("%d",&a[i][j]);min=a[0][0];for(intm=0;m<=1;m++)for(intl=0;l<=2;l++)if(min>a[m][l])min=a[m][l];x=m+1;y=l+1;printf("%d\n",min);printf("第%d行,第%d列\(zhòng)n",x,y);return0;36.一個學習小組有3個人,每人有4門課的成績。計算每個人的平均成績。#include<stdio.h>intmain() printf("分別計算每個人的平均數(shù)\n");floata[3][4],v[3],s=0;for(intm=0;m<=2;m++)for(intl=0;l<=3;l++) scanf("%f",&a[m][l]);s=s+a[m][l];v[m]=s/4;s=0;printf("第一個人平均分是%.2f\n第二個人平均分是%.2f\n第三個人平均分是%.2f\n",v[0],v[1],v[2]);return0;37.編程輸出楊輝三角中的前10行。111121133114641#include<stdio.h>intmain()printf("\n");inta[10][10]={{1},{1,1}},i,j;for(i=0;i<10;i++)a[i][0]=1;for(i=2;i<10;i++)for(j=1;j<10;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=0;i<10;i++) for(j=0;j<=i;j++) printf("%d\t",a[i][j]); printf("\n");printf("\n"); return0;38.編寫一個函數(shù),輸入立方體的長、寬、高,輸出立方體的體積。#include<stdio.h>intV(inti,intj,intk);intmain()inta,b,c;printf("輸入長方體的長寬高\n");scanf("%d%d%d",&a,&b,&c);printf("體積是%d\n",V(a,b,c));return0;intV(inti,intj,intk)intv=i*j*k;returnv;39.輸入兩個整數(shù),要求輸出其中值較大者。用函數(shù)實現(xiàn)找大數(shù)。#include<stdio.h>intMAX(inti,intj);intmain()inta,b;printf("輸入兩個整數(shù)\n");scanf("%d%d",&a,&b);printf("最大數(shù)是%d\n",MAX(a,b));return0;intMAX(inti,intj) intv=i>j?i:j;returnv;40.編寫一個函數(shù),用遞歸方法求n!,調(diào)用該函數(shù)求m!/(n!*(m-n)!)的值并輸出。#include<stdio.h>floatX(intn);intmain() intm,n; scanf("%d%d",&m,&n);printf("resultis%.3f\n",X(m)/X(n)/X(m-n));return0;floatX(intn)inti=1,a=1;for(i=1;i<=n;i++)a=a*i;returna;41.編寫一個函數(shù),實現(xiàn)用選擇法對數(shù)組中10個整數(shù)按由小到大排序。#include<stdio.h>intpailie(inta[10],intn);intmain()for(inti=0;i<=9;i++)scanf("%d",&a[i]);return0;intpailie(inta[10],intn)(不會)42.編寫一個函數(shù),求一個3×4的矩陣所有元素之和。43.編寫求圓的面積的函數(shù),并調(diào)用該函數(shù)求出圓的面積。#include<stdio.h>floatS(intr);intmain()printf("計算圓的面積\n");inti;scanf("%d",&i);printf("面積是%.2f\n",S(i));return0;floatS(intr) floats;#definePI3.14159265s=r*r*PI;returns;44.編寫一個函數(shù),該函數(shù)的功能是判斷一個整數(shù)是不是素數(shù)(所謂素數(shù)是指除了1和它本身以外,不能被任何整數(shù)整除的數(shù)),在main函數(shù)中輸入一個整數(shù),調(diào)用該函數(shù),判斷該數(shù)是不是素數(shù),若是則輸出“yes”,否則輸出“no”。#include<stdio.h>intj();intmain()printf("請輸入一個數(shù):\n");j();return0;intj()intn;scanf("%d",&n);if(n==1&&n==2)printf("%d是素數(shù)\n",n);for(inti=2;i<=n;i++)if(n%i==0)break;if(i<n)printf("%d是合數(shù)\n",n);elseprintf("%d是素數(shù)\n",n);return0;45.編寫判定閏年的函數(shù),并調(diào)用此函數(shù)求出公元2000年到公元2100年之間的所有閏年。#include<stdio.h>intRUN(inti);intmain()printf("輸出2000至2100之間的閏年:\n");for(inta=2000;a<=2100;a++)RUN(a);printf("\n");return0;intRUN(inti)intj;if(i%4==0)printf("%d",i);return0;46.編寫兩函數(shù)分別求兩個個整數(shù)的最大公約數(shù)和最小公倍數(shù),用主函數(shù)調(diào)用兩個函數(shù)并輸出結(jié)果,兩個整數(shù)由鍵盤輸入。#include<stdio.h>intMAX(inta,intb);intMIN(inta,intb);intmain() printf("請輸入兩個數(shù)求最大公約數(shù)和最小公倍數(shù)\n");intx,y;scanf("%d%d",&x,&y);printf("最大公約數(shù)是%d,最小公倍數(shù)是%d\n",MAX(x,y),MIN(x,y));return0;intMAX(inta,intb) for(inti=(a<b?a:b);i>=1;i--) if(a%i==0&&b%i==0) break;returni;intMIN(inta,intb)for(intj=(a>b?a:b);

溫馨提示

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

評論

0/150

提交評論