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

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

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

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

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

      C語言程序設計上機指導及習題選解 實驗二編程五篇范文

      時間:2019-05-14 19:28:45下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《C語言程序設計上機指導及習題選解 實驗二編程》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《C語言程序設計上機指導及習題選解 實驗二編程》。

      第一篇:C語言程序設計上機指導及習題選解 實驗二編程

      C語言程序設計上機指導及習題選解

      實驗2順序結構程序設計

      二、6.實現(xiàn)兩個數(shù)的對調:

      #include void main(){ int a,b,t;scanf(“%d%d”,&a,&b);printf(“a=%d b=%dn”,a,b);t=a;a=b;b=t;printf(“a=%d b=%d”,a,b);} 7.編寫程序

      (1)#include #include void main(){ double a,x,y;scanf(“%lf %lf”,&a,&x);y=sin(sqrt(a*x))+log(a+x);printf(“%lfn”,y);}(2)

      #include

      #include void main(){ double a,x,y;scanf(“%lf %lf”,&a,&x);y=cos(sqrt(a+x))+exp(a*x);printf(“%lfn”,y);}(3)#include #include void main(){ double a,b,c,s,area;scanf(“%lf %lf %lf”,&a,&b,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));

      printf(“%lfn”,area);}

      第二篇:C語言程序設計習題試題(編程題)

      C語言程序設計習題(編程類)

      1、從鍵盤輸入任意的字符,按下列規(guī)則進行分類計數(shù)。

      第一類 '0','1','2','3','4','5','6','7','8','9'

      第二類 '+','-','*','/','%','='

      第三類 其它字符

      當輸入字符''時先計數(shù),然后停止接收輸入,打印計數(shù)的結果。參考答案:

      #include void main(){ int class1, class2, class3; char ch;

      class1=class2=class3=0; /* 初始化分類計數(shù)器 */ do { ch=getch(); switch(ch){ case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': class1++; break; /* 對分類1計數(shù) */ case '+': case '-': case '*': case '/': case '%': case '=': class2++; break; /* 對分類2計數(shù) */ default: class3++; break; /* 對分類3計數(shù) */ } }while(ch!= ''); /* 字符''在C程序中要使用轉義符'' */ printf(“class1=%d, class2=%d, class3=%dn”, class1, class2, class3); }

      2、從鍵盤輸入十個整數(shù),用插入法對輸入的數(shù)據(jù)按照從小到大的順序進行排序,將排序后的結果輸出。參考答案: void main(){ int i,j,num,a[10]; for(i=0;i<10;i++){ printf(“Enter No.%d:”, i+1); scanf(“%d”,&num);

      for(j=i-1;j>=0&&a[j]>num;j--)a[j+1]=a[j]; a[j+1]=num; } for(i=0;i<10;i++)printf(“No.%d=%dn”, i+1, a[i]); }

      3、輸入一個正整數(shù),要求以相反的順序輸出該數(shù)。例如輸入12345,輸出位54321。參考答案: void main(){ int n;

      printf(“Please enter n:”); scanf(“%d”,&n); while(n>0){ printf(“%d”,n%10); n=n/10; } }

      4、編寫程序,讀入一個整數(shù)N;若N為非負數(shù),則計算N到2×N之間的整數(shù)和;若N為一個負數(shù),則求2×N到N之間的整數(shù)和。分別利用for和while寫出兩個程序。參考答案: void main(){ int i,n;

      long s1=0,s2=0;

      printf(“Please enter N:”); scanf(“%d”,&n); if(n>=0)for(i=n;i<=2*n;i++)s1=s1+i; else for(i=n;i>=2*n;i--)s1=s1+i; i=n; if(i>=0)while(i<=2*n)s2=s2+i++; else while(i>=2*n)s2=s2+i--;

      printf(“Result1=%ld result2=%ldn”,s1,s2); }

      5、一個自然數(shù)被8除余1,所得的商被8除也余1,再將第二次的商被8除后余7,最后得到一個商為a。又知這個自然數(shù)被17除余4,?所得的商被17除余15,最后得到一個商是a的2倍。編寫程序求這個自然數(shù)。參考答案: void main(){ int i,n,a;

      for(i=0; ;i++){ if(i%8==1){ n=i/8; if(n%8==1){ n=n/8;

      if(n%8==7)a=n/8; } } if(i%17==4){ n=i/17;

      if(n%17==15)n=n/17; } if(2*a==n){ printf(“result=%dn”,i); break; } } }

      6、編寫程序,輸出用一元人民幣兌換成1分、2分和5分硬幣的不同兌換方法。參考答案: void main(){ int f1,f2,f5,count=0; for(f5=0;f5<=20;f5++)for(f2=0;f2<=(100-f5*5)/2;f2++){ f1=100-f5*5-f2*2; if(f5*5+f2*2+f1==100)printf(“No.%2d >> 5: %4d 2: %2d 1: %2dn”,++count,f5,f2,f1); } }

      7、將一個數(shù)的數(shù)碼倒過來所得到的新數(shù)叫原數(shù)的反序數(shù)。如果一個數(shù)等于它的反序數(shù),則稱它為對稱數(shù)。求不超過1993的最大的二進制的對稱數(shù)。參考答案: void main(){ int i,j,n,k,a[16]={0}; for(i=1;i<=1993;i++){ n=i;k=0;

      while(n>0)/* 將十進制數(shù)轉變?yōu)槎M制數(shù) */ { a[k++]=n%2; n=n/2; } for(j=0;j=k){ printf(“ %d: ”,i); for(j=0;j

      8、十個小孩圍成一圈分糖果,老師分給第一個小孩10塊,第二個小孩2塊,第三個小孩8塊,第四個小孩22塊,第五個小孩16塊,第六個小孩4塊,第七個小孩10塊,第八個小孩6塊,第九個小孩14 塊,第十個小孩20塊。然后所有的小孩同時將自己手中的糖分一半給右邊的小孩;糖塊數(shù)為奇數(shù)的人可向老師要一塊。問經(jīng)過這樣幾次調整后大家手中的糖的塊數(shù)都一樣?每人各有多少塊糖? 參考答案: void main(){ int i,count=0,a[11]={0,10,2,8,22,16,4,10,6,14,20}; while(1){ for(i=1;i<=10;i++)a[i-1]=a[i-1]/2+a[i]/2; a[10]=a[10]/2+a[0]; for(i=1;i<=10;i++)if(a[i]%2==1)a[i]++; for(i=1;i<10;i++)if(a[i]!=a[i+1])break; if(i==10)break; else { a[0]=0; count++; } } printf(“count=%d number=%dn”,count,a[1]); }

      9、輸入5×5的數(shù)組,編寫程序實現(xiàn):(1)求出對角線上各元素的和;

      (2)求出對角線上行、列下標均為偶數(shù)的各元素的積;(3)找出對角線上其值最大的元素和它在數(shù)組中的位置。參考答案: void main(){ int i,j,s1=0,s2=1,a[5][5]; for(i=0;i<5;i++)for(j=0;j<5;j++){ printf(“%d %d: ”,i,j); scanf(“%d”,&a[i][j]); } for(i=0;i<5;i++){ for(j=0;j<5;j++)printf(“%5d”,a[i][j]); printf(“n”); } j=0;

      for(i=0;i<5;i++){ s1=s1+a[i][i];

      if(i%2==0)s2=s2*a[i][i]; if(a[i][i]>a[j][j])j=i; } printf(“SUN=%dnACCOM=%dna[%d]=%dn”,s1,s2,j,a[j][j]); }

      10、編寫程序,以字符形式輸入一個十六進制數(shù),將其變換為一個十進制整數(shù)后輸出。參考答案:

      #include “stdio.h” void main(){ int i,n=0,a[4]={0};

      printf(“Please enter a digit:”);

      for(i=0;i<4 &&(a[i]=getchar())!='n';i++); for(i=0;i<4;i++)if(a[i]>=48&&a[i]<=57)a[i]=a[i]-48; else if(a[i]>=65&&a[i]<=69)a[i]=a[i]-55; else if(a[i]>=97&&a[i]<=102)a[i]=a[i]-87; else printf(“input Error!”); for(i=0;i<4;i++)n=n*16+a[i]; printf(“%d”,n); }

      11、編寫程序,輸入一個十進制整數(shù),將其變換為二進制后儲存在一個字符數(shù)組中。參考答案: void main(){ int i,n,k=16,a[16]={0}; printf(“Please enter a digit:”); scanf(“%d”,&n);

      while(n>0)/* 將十進制數(shù)轉變?yōu)槎M制數(shù) */ { a[--k]=n%2; n=n/2; } for(i=0;i<16;i++)printf(“%2d”,a[i]); }

      12、對數(shù)組A中的N(0<N<100=個整數(shù)從小到大進行連續(xù)編號,輸出各個元素的編號。要求不能改變數(shù)組A中元素的順序,且相同的整數(shù)要具有相同的編號。例如數(shù)組是:A=(5,3,4,7,3,5,6)則輸出為:(3,1,2,5,1,3,4)參考答案: void main(){ int i,j,k,n,m=1,r=1,a[2][100]={0}; printf(“Please enter n:”); scanf(“%d”,&n); for(i=0;i

      for(j=i;j

      13、求這樣一個三位數(shù),該三位數(shù)等于其每位數(shù)字的階乘之和。

      即: abc = a!+ b!+ c!參考答案: void main(){ int a[5],i,t,k;

      for(i=100;i<1000;i++){ for(t=0,k=1000;k>=10;t++){ a[t]=(i%k)/(k/10); k/=10; } if(f(a[0])+f(a[1])+f(a[2])==i)printf(“%d ”,i); } } f(m)int m;

      { int i=0,t=1;

      while(++i<=m)t*=i; return(t); }

      14、編寫一個函數(shù)實現(xiàn)將字符串str1和字符串str2合并,合并后的字符串按其ASCII碼值從小到大進行排序,相同的字符在新字符串中只出現(xiàn)一次。參考答案:

      #include “string.h” strcmbn(a,b,c)/* 數(shù)組合并函數(shù):將數(shù)組a、b合并到 */ char a[],b[],c[]; { char tmp; int i,j,k,m,n; m=strlen(a); n=strlen(b);

      for(i=0;i

      tmp=a[i]; a[i]=a[k]; a[k]=tmp; } for(i=0;i

      tmp=b[i]; b[i]=b[k]; b[k]=tmp; } i=0;j=0;k=0;

      while(ib[j])c[k++]=b[j++]; /* 將a[i]、b[j]中的小者存入c[k] */ else { c[k++]=a[i++]; if(a[i-1]==b[j])j++; /* 如果a、b當前元素相等,刪掉一個 */ } while(i