欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      計(jì)算機(jī)系C語言編程50題(含答案)

      時(shí)間:2019-05-11 22:55:32下載本文作者:會(huì)員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《計(jì)算機(jī)系C語言編程50題(含答案)》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《計(jì)算機(jī)系C語言編程50題(含答案)》。

      第一篇:計(jì)算機(jī)系C語言編程50題(含答案)

      1、輸入1~10之間的一個(gè)數(shù)字,輸出它對應(yīng)的英文單詞。#include “stdio.h” main(){ int x;printf(“please input x(1-10):n”);scanf(“%d”,&x);switch(x){ case 1:printf(“one”);break;case 2:printf(“two”);break;case 3:printf(“three”);break;case 4:printf(“four”);break;case 5:printf(“five”);break;case 6:printf(“six”);break;case 7:printf(“server”);break;case 8:printf(“eight”);break;case 9:printf(“nine”);break;case 10:printf(“ten”);break;} }

      2、用自然語言描述程序邏輯如下,試寫程序。① 設(shè)置環(huán)境;

      ② 定義變量i、j、s,以及用于放置結(jié)果的變量sum,并令sum初值為0; ③ i=1;

      ④ 如果i≤100,則轉(zhuǎn)⑤,否則轉(zhuǎn)⑧;

      ⑤ 令s=0,求前i個(gè)自然數(shù)之和,并放于變量s之中; ⑥ sum=sum+s; ⑦ i增加1,轉(zhuǎn)④; ⑧ 輸出和sum,結(jié)束。#include “stdio.h” main(){ int i,j,s;long sum=0;for(i=1;i<=100;i++){ s=0;for(j=1;j<=i;j++){

      s=s+j;} sum=sum+s;

      } printf(“sum=%d”,sum);}

      3、用自然語言描述的程序邏輯為:(假設(shè)正確口令為123456)① 設(shè)置環(huán)境;

      ② 定義變量i、flag和password,并令flag=0,i=0; ③ 用戶回答口令,將其賦于password變量;

      ④ 口令正確?如果是,則flag=1,轉(zhuǎn)⑥。否則轉(zhuǎn)⑤; ⑤ 回答三次口令了嗎?如果沒有,計(jì)數(shù)器加1后(i++),轉(zhuǎn)③,否則轉(zhuǎn)⑥; ⑥ 根據(jù)flag之值輸出相應(yīng)信息。#include “stdio.h” main(){ long i=0,flag=0,password;printf(“please input password:n”);scanf(“%ld”,&password);do { if(password==123456)flag=1;i++;}while(i<3);if(flag==1)printf(“口令正確!”);else printf(“口令不正確!”);}

      4、用自然語言描述的程序邏輯如下: ① 設(shè)置環(huán)境;

      ② 定義變量digit、x、y分別表示原始數(shù)、原始數(shù)的個(gè)位數(shù)和逆數(shù); ③ 輸入原始正整數(shù)x;

      ④ 從x中分解出個(gè)位數(shù)字digit; ⑤ 合并個(gè)位digit至逆數(shù)y中; ⑥ 原始數(shù)x縮小10倍:x=x/10; ⑦ 如果x非零,則轉(zhuǎn)④;

      ⑧ 輸出逆數(shù)y,結(jié)束 #include “stdio.h” main(){ int digit,x,y=0;printf(“please input x:n”);scanf(“%d”,&x);do { digit=x%10;y=y*10+digit;x=x/10;} while(x);printf(“%d”,y);}

      5、輸入某三角形的三個(gè)邊的長度,判斷出這是個(gè)什么三角形(等腰、等邊、任意,或不能構(gòu)成)。#include “stdio.h” main(){ float a,b,c;printf(“please input a,b,c:n”);scanf(“%f,%f,%f”,&a,&b,&c);if(a>0&&b>0&&c>0&&a+b>c&&b+c>a&&a+c>b){ if(a==b&&a==c&&b==c){

      printf(“等邊三角形!”);}

      else { if(a==b||a==c||b==c)

      {

      printf(“等腰三角形!”);

      }

      else

      {

      printf(“任意三角形!”);

      }

      } } else { printf(“不能構(gòu)成三角形!”);} }

      6、輸入10個(gè)數(shù),分別統(tǒng)計(jì)其中正數(shù)、負(fù)數(shù)、零的個(gè)數(shù)。#include “stdio.h” #define N 10 main(){ int i,zsum=0,fsum=0,lsum=0;float x;for(i=1;i<=N;i++){ printf(“請輸入第%d個(gè)數(shù):”,i);scanf(“%f”,&x);if(x>0)zsum++;else if(x==0)lsum++;

      else fsum++;} printf(“有%d個(gè)正數(shù),%d個(gè)負(fù)數(shù),%d個(gè)零”,zsum,fsum,lsum);}

      7、先隨機(jī)產(chǎn)生N個(gè)三位自然數(shù)輸出,然后再輸出其中同時(shí)是3、5、7倍數(shù)的數(shù)。(設(shè)N為100)#include “stdio.h” #include “stdlib.h” #include “time.h” #define N 100 main(){ int i,x;randomize();for(i=1;i<=N;i++){ x=random(900)+100;printf(“%dt”,x);if(x%3==0&&x%5==0&&x%7==0)printf(“n*%d*n”,x);}

      }

      8、已知x和y存在下列對應(yīng)關(guān)系,要求對輸入的每個(gè)x值,計(jì)算出y值,請編程。y=0,x=a||x=-a;y=sqrt(a*a-x*x),-aa.#include “stdio.h” #include “math.h” main(){ float x,y,a;printf(“從鍵盤輸入a,x:n”);scanf(“%f,%f”,&a,&x);if(x==a||x==-a){ y=0;} else if(x>-a&&x

      9、計(jì)算:1/2-2/3+3/4-4/5??,前100項(xiàng)。#include “stdio.h” main(){ int i,t=1;float sum=0;for(i=1;i<=100;i++){ sum=sum+(t*i*1.0)/(i+1);t=-t;} printf(“%f”,sum);}

      10、從終端輸入3個(gè)數(shù)a、b、c,按從大到小的順序輸出。#include “stdio.h” #define N 3 main(){ int x[N],i,j,temp;for(i=0;i

      if(x[j]>x[i])

      {

      temp=x[i];

      x[i]=x[j];

      x[j]=temp;

      }

      } } for(i=0;i

      11、打印出所有的“水仙花數(shù)”,所謂“水仙花數(shù)”是指一個(gè)3位數(shù),其各位數(shù)字立方之和等于該數(shù)本身。#include “stdio.h” #include “math.h” main(){ int i,gw,sw,bw;for(i=100;i<=999;i++){ gw=i%10;sw=i/10%10;bw=i/100%10;if(i==pow(gw,3)+pow(sw,3)+pow(bw,3))printf(“%dn”,i);} }

      12、求下列式子的值:1-1/2+1/3-1/4+??+1/99-1/100,將結(jié)果輸出。#include “stdio.h” main(){ int i,t=1;float sum=0;for(i=1;i<=100;i++){ sum=sum+(1.0*t)/(i+1);t=-t;} printf(“sum=%f”,sum);}

      13、編程輸入整數(shù)a和b,若大于100,則輸出百位以上的數(shù)字,否則輸出兩數(shù)之和。#include “stdio.h” main(){ int a,b;printf(“please input a,b:n”);scanf(“%d,%d”,&a,&b);if(a>100&&b>100){ printf(“%d,%d”,a/100,b/100);} else { printf(“%d”,a+b);} }

      14、輸入學(xué)生的成績,利用計(jì)算機(jī)將學(xué)生的成績劃分出等級(jí)并輸出:90~100:A級(jí); 80~89:B級(jí); 70~79:C級(jí); 60~69:D級(jí); 0~59:E級(jí); #include “stdio.h” main(){ int chengji;printf(“please input chengji:n”);scanf(“%d”,&chengji);if(chengji>=90&&chengji<=100)printf(“A”);else if(chengji>=80)printf(“B”);else if(chengji>=70)printf(“C”);else if(chengji>=60)printf(“D”);else printf(“E”);}

      15、把100~200之間的不能被3整除的數(shù)輸出。#include “stdio.h” main(){ int i;for(i=100;i<=200;i++)if(i%3!=0)printf(“%dt”,i);}

      二 數(shù)組循環(huán)部分:

      16、從終端(鍵盤)讀入20個(gè)數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算這些正數(shù)之和。#include “stdio.h” #define N 5 main(){ float x[N],sum=0;int i,count=0;for(i=0;i0){

      count++;

      sum+=x[i];

      } } printf(“count=%d,sum=%f”,count,sum);}

      17、從終端(鍵盤)將5個(gè)整數(shù)輸入到數(shù)組a中,然后將a逆序復(fù)制到數(shù)組b中,并輸出b中各元素的值。#include “stdio.h” #define N 5 main(){ int a[N],b[N],i;for(i=0;i

      18、一輛卡車違反交通規(guī)則,撞人后逃跑?,F(xiàn)場有三人目擊事件,但都沒有記住車號(hào),只記下車號(hào)的一些特征。甲說:牌照的前兩位數(shù)字是相同的;乙說:牌照的后兩位數(shù)字是相同的,但與前兩位不同;丙是數(shù)學(xué)家,他說:四位的車號(hào)剛好是一個(gè)整數(shù)的平方。請根據(jù)以上線索找出車號(hào)。include “stdio.h” #include “math.h” main(){ int x;/*x表示四位車號(hào)*/ int gw,sw,bw,qw;for(x=0;x<=9999;x++){ gw=x%10;/*個(gè)位*/ sw=x/10%10;/*十位*/ bw=x/100%10;/*百位*/ qw=x/1000%10;/*千位*/ if(bw==qw&&gw==sw&&gw!=bw&&sqrt(x)==(int)sqrt(x))printf(“%dt”,x);} } 19 安人員審問四名竊賊嫌疑犯。已知,這四人當(dāng)中僅有一名是竊賊,還知道這四人中每人要么是誠實(shí)的,要么總是說謊的。在回答公安人員的問題中:甲說“乙沒有偷,是丁偷的”,乙說“我沒有偷,是丙偷的”,丙說“甲沒有偷,是乙偷的”,丁說“我沒有偷”。請根據(jù)這四人的答話判斷誰是盜竊者 #include “stdio.h” main(){ int a,b,c,d;for(a=0;a<=1;a++)for(b=0;b<=1;b++)for(c=0;c<=1;c++)for(d=0;d<=1;d++)if(b+d==1&&b+c==1&&a+b==1)printf(“%d,%d,%d,%dn”,a,b,c,d);}“百錢百雞”問題。百錢買百雞,雞翁一值錢三,雞母一值錢二,雞雛三值錢一,問雞翁、雞母、雞雛各幾何?*/ #include “stdio.h” main(){ int jiweng,jimu,jichou;for(jiweng=1;jiweng<=33;jiweng++)for(jimu=1;jimu<=50;jimu++){ jichou=100-jiweng-jimu;if(jiweng*3+jimu*2+jichou*1.0/3==100)printf(“%d,%d,%dn”,jiweng,jimu,jichou);} } B、C、D、E五名學(xué)生有可能參加計(jì)算機(jī)競賽,根據(jù)下列條件判斷哪些人參加了競賽.(1)A參加時(shí),B也參加;(2)B和C只有一個(gè)人參加;

      (3)C和D或者都參加,或者都不參加;(4)D和E中至少有一個(gè)人參加;

      (5)如果E參加,那么A和D也都參加。(程序有誤)#include “stdio.h” main(){ int a,b,c,d,e;/*用表示參加,表示未參加*/ for(a=0;a<=1;a++)for(b=0;b<=1;b++)for(c=0;c<=1;c++)for(d=0;d<=1;d++)for(e=0;e<=1;e++){ if(a==1)b=1;if(b==1)c=0;else c=1;if(c==1)d=1;else if(c==0)d=0;if(d||e)} } 輸入一個(gè)字串,判斷它是否是對稱串。如”abcdcba”是對稱串,”123456789”不是。#include “stdio.h” #include “string.h” main(){ char s[50];int i,flag=1;;gets(s);for(i=0;i<=strlen(s)/2-1;i++){ if(s[i]!=s[strlen(s)-i-1]){ flag=0;break;} } if(flag==1){ printf(“%s是對稱串”,s);} else { printf(“%s不是對稱串”,s);} } 23 隨機(jī)產(chǎn)生N個(gè)大寫字母輸出,然后統(tǒng)計(jì)其中共有多少個(gè)元音字符。(設(shè)N為200)#include “stdio.h” #include “stdlib.h” #include “time.h” #define N 200 main(){ int i,count=0,ch;randomize();for(i=1;i<=N;i++){ ch=random(26)+65;printf(“%ct”,ch);if(ch=='A'||ch=='E'||ch=='I'||ch=='O'||ch=='U')count++;} printf(“count=%d”,count);} 24 從鍵盤輸入長度不等的兩個(gè)字串,將長串連接于短串之后輸出。include “string.h” main(){ char s1[50],s2[100];gets(s1);/*輸入長串*/ gets(s2);/*輸入短串*/ puts(strcat(s2,s1));} 2

      5鍵盤輸入兩個(gè)字串,輸出其中較短的那個(gè)字串,并輸出它的長度。#include “stdio.h” #include “string.h” main(){

      char s1[100],s2[100];gets(s1);gets(s2);if(strlen(s1)='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z')ywcount++;else if(s[i]==' ')spcount++;else if(s[i]>='0'&&s[i]<='9')szcount++;else qtcount++;} printf(“英文字母=%d,空格=%d,數(shù)字=%d,其他字符=%d”,ywcount,spcount,szcount,qtcount);} 個(gè)字符串中的元音字母復(fù)制到另一字符串,然后輸出“另一字符串”。#include “stdio.h” #include “string.h” main(){ char s1[100],s2[100];int i,j=0;gets(s1);for(i=0;i<=strlen(s1);i++){ if(s1[i]=='a'||s1[i]=='e'||s1[i]=='i'||s1[i]=='o'||s1[i]=='u'){ s2[j]=s1[i];j++;} } puts(s2);} 28 字符數(shù)組str1種下標(biāo)為偶數(shù)的元素賦給另一字符數(shù)組str2,并輸出str1和str2。、#include “stdio.h” #include “string.h” main(){ char str1[100],str2[100];int i,j=0;gets(str1);for(i=0;i<=strlen(str1);i=i+2){ str2[j]=str[i];j++;} puts(str2);

      29入一行英文,已知各單詞之間用1個(gè)空格或一個(gè)標(biāo)點(diǎn)符號(hào)相隔(設(shè)第一個(gè)單詞前沒有空格),統(tǒng)計(jì)這行英文有多少個(gè)單詞。

      #include “stdio.h” #include “string.h” main(){ char s[100];int i,count=0;gets(s);for(i=0;i

      30輸入一行字符串,按如下規(guī)則加密:如果是英文字母則大寫變小寫、小寫變大寫,對非英文字符則保持不變。試寫加密程序。

      #include “stdio.h” #include “string.h” main(){ char s[100];int i;gets(s);for(i=0;i='A'&&s[i]<='Z')s[i]=s[i]+32;else if(s[i]>='a'&&s[i]<='z')s[i]=s[i]-32;} puts(s);}

      31隨機(jī)產(chǎn)生N個(gè)兩位自然數(shù),降序排列后輸出。(設(shè)N為20)#include “stdio.h” #include “stdlib.h” #include “time.h” #define N 20 main(){ int x[N],i,j,temp;randomize();for(i=0;ix[i]){ temp=x[i];x[i]=x[j];x[j]=temp;

      } } for(i=0;i

      32求s=a+aa+aaa+aaaa+......+aa...a的值,其中a是1~9之間的一個(gè)數(shù)字,表達(dá)式項(xiàng)數(shù)從鍵盤輸入(設(shè)不超過10項(xiàng))。例如2+22+222+2222+22222(此時(shí)共有5個(gè)數(shù)相加),幾個(gè)數(shù)相加有鍵盤控制。#include “stdio.h” #include “math.h” main(){ int i,a,n;long t=0,s=0;scanf(“%d,%d”,&a,&n);s=t=a;printf(“%d”,t);for(i=1;i

      for(i=1;i<=n;i++){ s=s+i*pow(10,n-i);

      } printf(“%d”,s);}

      34小學(xué)生智商測試。讓電腦隨機(jī)出十道100以內(nèi)整數(shù)的加法題(10分/題),小學(xué)生從鍵盤回答答案,統(tǒng)計(jì)小學(xué)生最后得分。

      #include “stdio.h” #include “stdlib.h” #include “time.h” main(){ int i,x,y,sum,chengji=0;randomize();for(i=1;i<=10;i++){ x=random(100)+1;y=random(100)+1;printf(“%d+%d=”,x,y);scanf(“%d”,&sum);if(x+y==sum)chengji+=10;printf(“n”);} printf(“chengji=%d”,chengji);}

      35斐氏數(shù)列是公元13世紀(jì)數(shù)學(xué)家斐波拉契發(fā)明的。即:1,2,3,5,8,13,21,34,55,89,??,輸出其前15項(xiàng)。

      #include “stdio.h” #define N 15 main(){ int x,y,z,i;x=1;y=2;printf(“%dt%d”,x,y);for(i=3;i<=N;i++){ z=x+y;printf(“t%d”,z);x=y;y=z;} } 36輸入一個(gè)十進(jìn)數(shù),將其轉(zhuǎn)換成 N 進(jìn)制數(shù)(0=0&&n<=16){ do {

      digit=x%n;

      s[i]=digit;

      i++;

      x=x/10;}while(x);for(i=strlen(s);i>=0;i--)printf(“%d”,s[i]);} else { printf(“n超出范圍!”);} }

      37輸入n個(gè)整數(shù),將其中最小者與第一個(gè)數(shù)對調(diào),最大者與最后一個(gè)數(shù)對調(diào)。#include “stdio.h” #define N 10 main(){ int x[N],max,min,i,min_i,max_i;/*輸入N個(gè)數(shù)*/ for(i=0;imax){

      max=x[i];

      max_i=i;}

      if(x[i]

      min=x[i];

      min_i=i;}

      } /*輸出原來N個(gè)數(shù)*/ printf(“原來N個(gè)數(shù)如下:n”);for(i=0;i=0){ if(cj>max)max=cj;if(cj

      41從鍵盤上輸入若干學(xué)生的一門課成績,計(jì)算出平均分,當(dāng)輸入負(fù)數(shù)時(shí)結(jié)束輸入。將結(jié)果輸出。#include “stdio.h” main(){ int x,count=0;float sum=0,avg;scanf(“%d”,&x);while(x>=0){ sum+=x;count++;scanf(“%d”,&x);} avg=sum/count;printf(“avg=%f”,avg);}

      42打印以下圖案:

      倒三角

      #include “stdio.h” main(){ int i,j;for(i=4;i>=0;i--){ /*輸出每行前的空格*/ for(j=0;j<20-i;j++){ printf(“ ”);} /*輸出每行中的*號(hào)個(gè)數(shù)*/ for(j=0;j<2*i-1;j++){ printf(“*”);}

      /*輸出換行符*/ printf(“n”);} } 43求一個(gè)3*3的整型矩陣對角線元素之和。#include “stdio.h” #include “stdlib.h” #include “time.h” main(){ int x[3][3],i,j,sum=0;/*隨機(jī)產(chǎn)生整型矩陣,并輸出*/ randomize();for(i=0;i<3;i++){ for(j=0;j<3;j++){ x[i][j]=random(900);printf(“%dt”,x[i][j]);} printf(“n”);}

      /*求對角線元素和*/ sum=x[0][0]+x[1][1]+x[2][2];printf(“n對角線和=%d”,sum);} 44求滿足1+2+3+?+n<500中最大的N,并求其和,編寫程序?qū)崿F(xiàn)。#include “stdio.h” main(){ int n=0,sum=0;while(sum<500){ n++;sum+=n;} printf(“n=%d”,n);} 45求N的階乘,N由鍵盤輸入。#include “stdio.h” main(){ int n,i;long t=1;scanf(“%d”,&n);for(i=n;i>=1;i--)t=t*i;printf(“%d!=%ld”,n,t);}

      三、自定義函數(shù)與指針部分:

      46、鍵盤輸入長方體的長寬高l、w、h,求其體積及表面積。要求用自定義函數(shù)val(l,w,h)計(jì)算長方體的體積和表面積,計(jì)算結(jié)果使用全局變量帶回主函數(shù)。#include “stdio.h” float tiji,bmianji;void val(float l,float w,float h);main(){ float l,w,h;scanf(“%f,%f,%f”,&l,&w,&h);val(l,w,h);printf(“tiji=%f,bmianji=%f”,tiji,bmianji);} void val(float l,float w,float h){ tiji=l*w*h;bmianji=2*(l*w+l*h+w*h);}

      47、找出三位自然數(shù)中的所有素?cái)?shù),要求判斷x素?cái)?shù)用自定義函數(shù)data(x)實(shí)現(xiàn)。#include “stdio.h” int data(int x);main(){ int i;for(i=100;i<=999;i++)if(data(i))printf(“%dt”,i);} int data(int x){ int flag=1,i;for(i=2;i

      if(x%i==0){ flag=0;

      break;} if(flag==1)

      return 1;else

      return 0;}

      48、輸出n行由“#”組成的矩形,每行“#”的個(gè)數(shù)為m個(gè),其中n、m由終端(鍵盤)輸入。要求輸出m個(gè)“#”功能由函數(shù)satr(m)函數(shù)實(shí)現(xiàn)。#include “stdio.h” void satr(int m);main(){ int m,n,i;printf(“please input m,n:n”);scanf(“%d,%d”,&m,&n);for(i=1;i<=n;i++){ satr(m);printf(“n”);} } void satr(int m){ int i;for(i=m;i>=1;i--)printf(“#”);}

      49、編寫程序,建立phone.txt文件,由鍵盤輸入5個(gè)人的姓名、手機(jī)號(hào)碼、家庭住址,寫入該文件中。#include “stdio.h” #define size 5 struct student { char name[20];int num;char addr[20];}stud[size];

      void save(){ FILE *fp;int i;if((fp=fopen(“c:phone.txt”,“wb”))==NULL){

      printf(“n不能打開文件,錯(cuò)誤”);

      exit(0);} for(i=0;i

      main(){ int i;for(i=0;i

      50、輸出某二維數(shù)組中各元素的內(nèi)存地址及其值。#include “stdio.h” #include “stdlib.h” #include “time.h” #define M 4 #define N 6 main(){ int x[M][N],i,j,*p;randomize();for(i=0;i

      for(i=0;i

      第二篇:C語言經(jīng)典編程題(推薦)

      C語言經(jīng)典編程題

      題目01:在一個(gè)已知的字符串中查找最長單詞,假定字符串中只含字母和空格,空格用來分隔不同的單詞。

      [cpp] view plain copy print?

      1.2.3.4.5.6.7.8.9.int main(){

      // 用數(shù)組定義一個(gè)字符串

      char array[50] = “zha junju zhamengjun z mengjun”;

      char *str = array;// 定義指針變量str,指向數(shù)組array

      int len = 0;// 定義變量len,用于計(jì)數(shù)

      int max = 0;// 定義變量max,存放最長單詞的長度

      char *p = 0;// 定義指針變量p,指向最長單詞的首字符

      10.11.// 判斷指針當(dāng)前指向的字符是不是'