根據老師的要求,我把上次測試的答案彙總了下,將程序寫的獲得滿分的答案給挑了出來,但願你們不要追究版權問題,如有問題,咱們私下武力解決問題。編程
第一題:從鍵盤輸入一個大寫字母,要求改用小寫字母輸出。(這道題老師課堂上講過,你們都應該沒有問題)測試
#include<stdio.h> int main() { char c; printf("請輸入一個大寫字母:"); c = getchar(); if(c>='A' && c<='Z'){ c = c + 32; printf("轉換後的小寫字母爲:%c\n",c); } }
第二題: 求ax2+bx+c=0方程的解(第二題班裏沒有滿分,只有四個5分)spa
#include<stdio.h> #include <math.h> int main(){ int a,b,c,i; float x1,x2,p,q; printf("請輸入a,b,c 的值:"); scanf("%d%d%d",&a,&b,&c); if(a==0) printf("非二元一次方程。\n"); else if(b*b-4*a*c==0) printf("有兩個相等的實數根%f\n",-1*b/2.0*a); else if(b*b-4*a*c>0){ x1=-1*b+sqrt(b*b-4*a*c)/2.0*a; x2=-1*b-sqrt(b*b-4*a*c)/2.0*a; printf("有兩個實數根x1=%f x2=%f\n",x1,x2); } else if(b*b-4*a*c<0){ p=-1*b/2*a; q=sqrt(-1*(b*b-4*a*c)); printf("兩個復跟:%f+%fi %f-%fi\n",p,q,p,q); } return 0; }
第三題: 任給三角形的三邊,判斷該三角形是等邊、等腰、直角或通常三角形。3d
#include<stdio.h> #include <math.h> int main() { float a,b,c,; printf("請輸入三角形三邊的長:\n"); scanf("%f%f%f",&a,&b,&c); if(a+b>c&&a+c>b&&b+c>a) { if(a==b && b==c) printf("該三角形爲等邊三角形!\n"); else { if((a==b && b!=c)||(b==c && b!=a)||(a==c && c!=a)) printf("該三角形爲等腰三角形!\n"); else { if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) printf("該三角形爲直角三角形!\n"); else { printf("該三角形爲通常三角形!\n"); } } } } else{ printf("不能構成三角形\n"); } return 0; }
第四題:寫程序,判斷某一年是否閏年code
#include<stdio.h> int main(){ int year,leap; printf("隨便輸入一個年份唄: "); scanf("%d",&year); if(year%4==0){ if(year%100==0){ if(year%400==0){ leap=1; } else{ leap=0; } } else{ leap=1; } } else leap=0; if(leap){ printf("呦!可貴一見的閏年\n"); } else{ printf("親它並非閏年\n"); } return 0; }
第六題:打印乘法99表blog
#include<stdio.h> int main() { int i,j,k; printf("\n\n九九乘法表:\n\n\n"); for(i=1;i<=9;i++) { for(j=1;j<=i;j++) { k=i*j; printf("%dX%d=%-3d ",j,i,k); } printf("\n"); } getchar(); getchar(); }
第七題:.斐波那契數列的前幾項是:1、1、2、3、5、 八、1三、2一、34……編寫程序輸出該數列的前13項。(每行輸出5個數)get
#include<stdio.h> int main() { int a,b,c,i; a = 1; b = 1; printf("%7d %7d ",a,b); for(i=3;i<=13;i++){ c = a + b; printf("%7d ",c); if(i%5==0) printf("\n"); a = b; b = c; } printf("\n") ; }
第八題:計算表達式的值,直到某一項的值小於10-3爲止。(第八題你們作了的不多)it
#include<stdio.h> int main() { int i; double sum=0,item=0.5; for(i=1;item>0.001;i++) { item=1.0/(i*(i+1)); sum=sum+item; } printf("%1f\n",sum); return 0; }
第九題:編程序,求一批非零整數中的偶數、奇數的平均值。用零做爲終止標記。(這道題班裏作對的也很少)io
void f9() { int n; int jishusum=0; int oushusum=0; int jishucount=0; int oushucount=0; printf("請輸入若干個非零整數(以零爲終止標記):"); scanf("%d",&n); while(n) { if(n%2){ jishusum+=n;jishucount++; } else{ oushusum+=n;oushucount++; } scanf("%d",&n); } printf("奇數平均值:%f\n",1.0*jishusum/jishucount); printf("偶數平均值:%f\n",1.0*oushusum/oushucount); }
第十題:任意十個數,打印它們中的最大數與最小數。class
#include<stdio.h> int main() { int i = 0,a[10]; int max = 0,min = 0,sum = 0; printf("請輸入你要計算的十個數: "); float pj = 0;; for(i = 0;i < 10;i ++) scanf("%d",a+i); max = min = a[0]; for(i = 1;i < 10;i ++) if(max < a[i]) max = a[i]; for(i = 1;i < 10;i ++) if(min > a[i]) min = a[i]; for(i = 0;i < 10;i ++) sum += a[i]; pj = sum / 10.0; printf("最大值%d\t最小值%d\t\n",max,min,pj); }
第十一題:找出10~1200之間各位數字之和能被5整除的全部數。
#include<stdio.h> int main() { int i,j,num,sum; int iBegin=10; int iEnd=1200; for(i=iBegin,j=0;i<=iEnd;i++) { num=i; sum=0; do { sum+=(num%10); }while((num/=10)>0); if(sum%5==0) { j++; printf("%d%c",i,(j%10==0)?'\n':' '); } } }
第十二題:簡單圖案打印(矩形)
#include<stdio.h> int main() { int i; for(i=1;i<=5;i++){ printf("* * * * *\n"); } }
第十三題:簡單圖案打印(平行四邊形)
#include<stdio.h> int main() { int i,j; for(i=0;i<5;i++){ for(j=0;j<i+5;j++) printf(" "); for(j=0;j<5;j++) printf("*"); printf("\n"); } }
第十四題:簡單圖案打印(等腰三角形)
#include<stdio.h> int main() { int i,j; for(i=0;i<5;i++){ for(j=0;j<5-i;j++) printf(" "); for(j=0;j<2*i+1;j++) printf("*"); printf("\n"); } return 0; }
第十五題: 計算和統計旅客運費程序.
#include<stdio.h> int main() { int num=0,total=0; float w,f,t=0; printf("請輸入該名旅客行李的重量:"); scanf("%f",&w); while(num<=100&&w>0){ if(w<=50) f=w*1.5; else f=1.5*50+2.8*(w-50); num++; total+=f; printf("旅客編號爲:%d,應付金額爲:%.2f元,行李重量爲:%.2fkg\n",num,f,w); printf("總收入爲:%d元\n",total); printf("請輸入該名旅客行李的重量:"); scanf("%f",&w); } printf("t=%.2f,num=%d\n",t,num); return 0; }
如果有錯誤,但願你們可以及時的指出。謝謝!