第一篇:大一C語言上機實驗報告
C語言程序設計實驗報告
姓名: 班級: 學號:
實驗內容:
編寫一個程序,從鍵盤輸入任意一個五位數,把這個數值分解為單個數字,然后打印出每一個數字(每個數字之間用三個空格分開)。例如用戶輸入了42339,屏幕輸出結果為:
【提示】巧妙使用 / 和 % 兩種運算符。源代碼: #include
long int num,a,b,c,d,e;
scanf(“%ld”,&num);a=num/10000;b=num%10000/1000;c=num%1000/100;d=num%100/10;e=num%10;printf(“%ld
%ld
%ld
%ld
%ldn”,a,b,c,d,e);}
運行結果:
實驗內容:
已知三角形三邊a,b,c,計算三角形的面積。
注:三角形面積公式為area=[s(s-a)(s-b)(s-c)]的1/2次冪
S=1/2*(a+b+c)源代碼: #include
} scanf(“%lf%lf%lf”,&a,&b,&c);s=(a+b+c)/2;if(a>0 && b>0 && c>0){ area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“area=%lfn”,area);} else printf(“輸入錯誤,三角形邊長不能為負數或0n”);運行結果:
實驗內容:
輸入圓的半徑,計算出圓的周長和面積 源代碼: #include
double r,z,area,pi=3.14159;scanf(“%lf”,&r);if(r>0)
{
z=2*pi*r;area=pow(r,2)*pi;printf(“圓面積為%lf周長為%lfn”,area,z);return 0;
} } else printf(“輸如錯誤,圓的半徑不能為負數或0n”);運行結果:
實驗內容:
? 體型判斷。按“體指數”對肥胖程度進行劃分:
體指數t = 體重w /(身高h)2
(w 單位為公斤,h單位為米)
– 當t < 18時,為低體重;
– 當t介于18和25之間時,為正常體重; – 當t介于25和27之間時,為超重體重; – 當t >= 27時,為肥胖。
? 編程從鍵盤輸入你的身高h和體重w,根據給定公式計算體指數t,然后判斷你的體重屬于何種類型。? 用3種方法編程:
– 算法1:用不帶else子句的if語句編程
– 算法2:用在if子句中嵌入if 語句的形式編程
– 算法3:用在else子句中嵌入if 語句的形式編程
算法1:源代碼: #include
float w,h;double t;scanf(“%f%f”,&h,&w);if(w<=0 || h<=0){
printf(“輸入錯誤,身高體重不能為負數或0n”);} {
t=w/pow(h,2);
if(t<18){ printf(“低體重n”);
goto loop;
goto loop;
} if(t>=18 && t<25)
{
} if(t>=25 && t<27){
printf(“超重體重n”);
goto loop;} if(t>=27){ printf(“正常體重n”);goto loop;
printf(“肥胖n”);
} }
loop:return 0;} 運行結果:
算法2:源代碼: #include
#include
float w,h;double t;scanf(“%f%f”,&h,&w);if(w<=0 || h<=0){
printf(“輸入錯誤,身高體重不能為負數或0n”);} { t=w/pow(h,2);if(t<25){
if(t>=18){
} printf(“正常體重n”);goto loop;goto loop;
printf(“低體重n”);}
if(t>=25){
if(t<27){
} printf(“超重體重n”);goto loop;
printf(“肥胖n”);} }
loop:return 0;} 運行結果:
算法3:源代碼: #include
float w,h;double t;scanf(“%f%f”,&h,&w);if(w<=0 || h<=0)printf(“輸入錯誤,身高體重不能為負數或0n”);else {
} t=w/pow(h,2);if(t<18)printf(“低體重n”);else {
} if(t>=18 && t<25)printf(“正常體重n”);else {
}
if(t>=25 && t<27)
printf(“超重體重n”);else printf(“肥胖n”);return 0;} 運行結果:
實驗內容:
編寫一個程序,計算-32768~+32767之間任意整數(由鍵盤輸入)中各位奇數的平方和。源代碼: #include
} int a,b=0,c=0,i;scanf(“%d”,&a);for(i=0;i<5;i++){ if(a%2!=0){
} a/=10;} printf(“%dn”,b);return 0;c=a%10;b=b+c*c;
運行結果:
實驗內容:
設有一四位數abcd=(ab+cd)2,編寫一個程序,求a、b、c、d。源代碼: #include
for(num=1000;num<=9999;num++){
a=num/1000;
} 運行結果:
} return 0;b=num%1000/100;c=num%100/10;d=num%10;if(num==pow((10*a+b+10*c+d),2))printf(“a=%db=%dc=%dd=%dn”,a,b,c,d);
實驗內容: 雞兔問題:雞兔共30只,腳共有90個。編寫一個程序,求雞、兔各多少只。源代碼: #include
} 運行結果: int x,y;for(x=0;x<=45;x++){
} return 0;for(y=0;y<=22;y++)if(x+y==30 && 2*x+4*y==90)printf(“雞有%d只,兔有%d只n”,x,y);
實驗內容:
編寫一個程序,求S值(n由鍵盤輸入):
(程序檢驗參考:
x=6.66,n=8時,s=40.955;x=6.66,n=15時,s=-1.511 源代碼: #include
#include
double jiecheng(int);
double s=0,x=6.66;
} double jiecheng(int x){
} double f;if(x==0||x==1)f=1;int n,i;scanf(“%d”,&n);for(i=1;i<=n;i++){ } printf(“%.3fn”,s);return 0;s=s+pow(-1,i)*pow(x,i)/jiecheng(i);else f=jiecheng(x-1)*x;return f;
運行結果:
實驗內容:
編寫一個程序,求前 n 項之和S值,其中 n≥1,x ≠ 0。(n由鍵盤輸入):
2x
5x
13x
S = ── ── +
──-── +...2x
5x
13x(程序檢驗參考:x=6.66,n=8時,s=-16.492;x=6.66,n=15時,s=-28.469)源代碼: #include
int a=1,b=2,n,i,t=0;
double s=0,x;
scanf(“%lf%d”,&x,&n);
if(n>=1)
{
for(i=1;i<=n;i++)
{ if(i%2)
{
s+=pow(-1,i+1)*a/(b*x);
t=a;
a=b;
b=t+b;
}
else
{
s+=pow(-1,i+1)*a*x/b;
t=a;
a=b;
b=t+b;
}
}
printf(“%fn”,s);
} return 0;}
運行結果:
x3x5x7x9x??????,3!5!7!9!
實驗內容:
利用泰勒級數sin(x)≈
計算sin(x)的值。要求最后一項的絕對值小于10-5,并統計出此時累加了多少項。
(程序檢驗參考:x=6時,sin(x)=-0.279415,count=13)源代碼: #include
double s=0,x;
int i,count=0;scanf(“%lf”,&x);for(i=1;;i+=2){
} s+=pow(-1,count)*pow(x,i)/jiecheng(i);count+=1;if(fabs((pow(x,i)/jiecheng(i)))
} printf(“sin(x)=%f count=%dn”,s,count);return 0;double jiecheng(int i){
} 運行結果: double f;if(i==0||i==1)f=1;else f=jiecheng(i-1)*i;return f;
實驗內容:
三色球問題。若一個口袋中放有12個球,其中有3個紅色的,3個白色的,6個黑色的,從中任取8個球,問共有多少種不同的顏色搭配? 源代碼: #include
int i,j,k,way=0;
for(i=0;i<=3;i++)
{
for(j=0;j<=3;j++)
{
for(k=0;k<=6;k++)
{
if(i+j+k==8)
way=way+1;
}
}
}
printf(“way=%dn”,way);
return 0;} 運行結果:
實驗內容:編程打印以下圖案
****** ****** ****** ******
源代碼: #include
int i,j;for(j=1;j<=4;j++){
for(i=1;i<=4-j;i++)
} { printf(“ ”);} printf(“******n”);
return 0;} 運行結果:
* *** ***** *******
源代碼: #include
int i,j;for(j=1;j<=4;j++)
{
for(i=1;i<=2*j-1;i++)
} printf(“*”);printf(“n”);return 0;} 運行結果:
*
* * * * * * * * * * * * * * * * * * * *
* * * * 源代碼: #include
int i,j,m,n;for(j=1;j<=7;j++){
if(i<5)
{ } else { m=j-4;n=(15-2*j);m=4-j;n=2*j-1;
}
for(i=1;i<=m;i++)
printf(“ ”);
for(i=1;i<=n;i++)printf(“*”);
printf(“n”);} return 0;} 運行結果:
實驗內容:
輸出下三角形乘法九九表--------1 2 3 4 12 16 5 10 15 20 25 6 12 18 24 30 36 7 14 21 28 35 42 49 8 16 24 32 40 48 56 64 9 18 27 36 45 54 63 72 81 源代碼: #include
9n”);
for(j=1;j<=i;j++)
{
printf(“ %d ”,k=i*j);
}
printf(“n”);} return 0;}
運行結果:
第二篇:c語言上機實驗報告
C語言上機實驗報告
2160500146 計算機66馬俊松
在本學期,共進行了大約五次上機,完成了數十道編程題,現將在完成作業過程中所遇到的問題以及解決過程進行如下幾點總結,并提出幾點建議。
1.在剛開始那幾次做編程作業時,經常因為只是輸出時的格式不符合moodle上的要求而的零分,因而不斷修改,浪費大量時間,希望今后moodle網站能在這一點上做出改進(如果過程正確而只是輸出格式錯誤,可以不必給零分)。比如下面幾個題:
2.在做6.1題(找出一句話中最長的子字符串)的過程中,因為字符數組的知識未掌握牢固,在以下幾個方面卡了比較久:
①:字符串在輸入時,若用scanf(”%s”,a),則只會得到第一個單詞;若用for(i=1;i<=n;i++)scanf(“%c”,a[i]),則循環會一直持續知道輸入n個字符;若希望將整句話輸入,應用gets(a);
②:將”n”,” 主站蜘蛛池模板: 无码国产精品一区二区免费式影视| 久久亚洲精品中文字幕波多野结衣| 日本一本免费一二区| 宅宅少妇无码| 蜜桃麻豆www久久国产精品| 欧美日韩午夜群交多人轮换| 久久夜色精品国产亚洲| 欧美性猛交xxxx免费看| 久久婷婷五月综合色丁香花| 日韩一区精品视频一区二区| 熟女无套高潮内谢吼叫免费| 亚洲 欧美精品suv| 久久精品国产亚洲av电影网| 久久久无码精品一区二区三区蜜桃| 中文字幕精品久久久久人妻红杏ⅰ| 一区二区三区四区在线不卡高清| 亚洲国产成人精品无码区宅男?| 欧美激情综合色综合啪啪五月| 国产免费视频| 成人天堂资源www在线| 国产精品三级av及在线观看| 超碰人人超碰人人| 天堂av无码av一区二区三区| 性色做爰片在线观看ww| 国产成人精品亚洲日本专区61| 国产av无码专区亚洲精品| 四虎影视久久久免费| 国产日韩久久免费影院| 国产欧美亚洲精品a第一页| 日韩精品毛片无码一区到三区| 天天综合网网欲色| 国产一区二区女内射| 亚洲综合欧美在线一区在线播放| 久久综合久久久久88| 亚洲 日韩 另类 制服 无码| 亚洲av色香蕉一区二区三区| 天堂√中文在线bt| 中国少妇初尝黑人巨高清| 98久久人妻少妇激情啪啪| 免费无码又爽又高潮视频| 国产精品无码av不卡顿|