當前位置:首頁 » 編程語言 » c語言程序設計上機實驗指導與習題
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言程序設計上機實驗指導與習題

發布時間: 2022-02-10 21:53:09

c語言程序設計課後習題解答與實驗指導

#include<stdio.h>
int max(int x,int y,int z)
{
int t;
t=x>y?x:y;
t=t>z?t:z;
return(t);
}
int min(int x ,int y,int z)
{
int t;
t=x<y?x:y;
t=t<z?t:z;
return(t);
}
int aver(int x ,int y,int z)
{
int t;
t=(x+y+z)/3;
return(t);
}
void main()
{ int x,y,z,a,b,c;
scanf("%d,%d,%d",&x,&y,&z);
a=(*max)(x,y,z);
b=(*min)(x,y,z);
c=(*aver)(x,y,z);
printf("%d,%d,%d\n",a,b,c);
}
建議改成:
#include<stdio.h>
int max(int x,int y,int z)
{
int t;
t=x>y?x:y;
t=t>z?t:z;
return(t);
}
int min(int x ,int y,int z)
{
int t;
t=x<y?x:y;
t=t<z?t:z;
return(t);
}
float aver(int x ,int y,int z)
{
int t;
t=(float)((x+y+z)/3.0);
return(t);
}
void main()
{ int x,y,z,a,b;float c;
scanf("%d,%d,%d",&x,&y,&z);
a=(*max)(x,y,z);
b=(*min)(x,y,z);
c=(*aver)(x,y,z);
printf("max=%d\nmin=%d\naver=%g\n",a,b,c);
}

② 急需c語言程序設計教程第四版實驗指導與習題解答課後習題答案,謝謝!!

你把這個拿去試試,我到網上找了一個幫你改的,看看可以不,

#include<stdio.h>
int main()
{
//int a[10][10];
int n;
printf("please input the line:\n");
scanf("%d\n",&n);
getchar();
int i,j;
for(i=0;i<n;i++)
{
a[i][0]=1;
a[i][i]=1;
}
for(i=2;i<n;i++)

for(j=1;j<i;j++)

a[i][j]=a[i-1][j-1]+a[i-1][j];

for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
printf("%d ",a[i][j]);
printf("\n");

}
return 0;
}

③ c語言程序設計實驗與習題指導(第3版)高等教育出版社顏暉張泳主編 答案

我有,你哪個不會呢?

④ 跪求C語言程序設計課後習題答案及C語言程序設計習題解答與實驗指導答案。

第一部分習題解答

第1章引言習題解答1
第2章基本的程序語句習題解答2
第3章程序的簡單演算法制定習題解答6
第4章分支結構習題解答11
第5章循環結構習題解答19
第6章函數和宏定義習題解答30
第7章數組習題解答38
第8章指針習題解答48
第9章構造數據類型習題解答56
第10章文件操作習題解答65
第11章位運算習題解答73

第二部分實驗

第1章引言實驗79
1.1目的和要求79
1.2實驗練習79
1.3綜合練習83

第2章基本的程序語句實驗83
2.1目的和要求83
2.2相關知識83
2.3實驗練習84
2.4綜合練習90

第3章程序的簡單演算法制定實驗91
3.1目的和要求91
3.2實驗練習91

第4章分支結構實驗96
4.1目的和要求96
4.2相關知識96
4.3實驗練習97
4.4綜合練習105

第5章循環結構實驗107
5.1目的和要求107
5.2相關知識107
5.3實驗練習108
5.4綜合練習118

第6章函數和宏定義實驗120
6.1目的和要求120
6.2相關知識121
6.3實驗練習122
6.4綜合練習126

第7章數組實驗127
7.1目的和要求127
7.2相關知識128
7.3實驗練習129
7.4綜合練習134

第8章指針實驗136
8.1目的和要求136
8.2相關知識136
8.3實驗練習137
8.4綜合練習144

第9章構造數據類型實驗145
9.1目的和要求145
9.2相關知識145
9.3實驗練習147
9.4綜合練習153

第10章文件操作實驗155
10.1目的和要求155
10.2相關知識156
10.3實驗練習157
10.4綜合練習164

第11章位運算實驗165
11.1目的和要求165
11.2相關知識165
11.3實驗練習166
11.4綜合練習168

第三部分其他

第12章集成開發環境介紹170
12.1Turbo C的安裝及使用170
12.1.1Turbo C的安裝170
12.1.2Turbo C簡介170
12.1.3Turbo C的使用173
12.2Borland C++的安裝及使用175
12.2.1Borland C++的安裝175
12.2.2編輯、編譯和運行程序175

第13章常見編譯錯誤信息176
13.1致命錯誤177
13.2一般錯誤177
13.3警告185

⑤ 誰有c語言程序設計實驗與習題指導第三版習題的詳細答案

我有,需要?

⑥ c語言程序設計上機指導與習題選解

#include"stdio.h"
void mian() {
intx ,y ;
x=2,y=1;
while(x--!=-1)
{do{y*=x; y++} while(x--);)
printf("%d,%d/n",y,x)'
}求輸出結果,詳解過程

⑦ 求C語言程序設計習題集與上機指導-第三版 (及答案)......

大學學習資料免費下載網 有

在 其他公共課程 版塊

標題:
譚浩強《C程序設計題解與上機指導》(電子書+紙質書)
譚浩強編《C語言程序設計》(電子書word(txt)、pdf+紙質書)
譚浩強C語言程序設計習題參考解答
和配套 C程序設計題解與上機指導 答案

都有的 還有其他課程答案 (下載不用積分)

⑧ 跪求c/c 程序設計實驗指導與測試(第三版)實驗指導習題答案

用一維數組編寫程序,用循環實現計算並輸出一個學生某學期的M(M=5)門課程的平均成績(保留兩位小數),並輸出大於平均分的成績。

⑨ c語言程序設計實驗與習題指導顏暉主編第三版答案,有的私信我

1、求1+2+3+……….+100。(循環)答案#includevoidmain(){inti,sum=0;for(i=1;ivoidmain(){inta,b,c,d;scanf("%d,%d,%d",&a,&b,&c);d=max(a,b,c);printf("max=%d",d);getch();/*暫停看運行結果*/}intmax(intx,inty,intz){intu;if(x>=y&&x>=z)u=x;elseif(y>=x&&y>=z)u=y;elseu=z;return(u);4.用起泡法對十個數據排序(數組實現)答案#includemain(){inti,j,t;staticinta[10]={5,7,4,2,3,6,1,0,9,8};for(j=0;ja[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}}}for(i=0;imain(){inta[10],i=0;for(i=0;i=0;i--)printf("%f",a[i]);}6輸入兩個數,交換他們的值並輸出。(元素交換)答案#includeintmain(){intm,n,temp;scanf("%d%d",&m,&n);if(mvoidmain(){inti=1;for(i;i='a')a[i]=a[i]-32;printf("%c",a[i]);}printf("\n小寫為:");for(i=0;i=65&&c=97&&c=48&&c=100&&xvoidmain(){charc;while((c=getchar())!='\n'){c=c+4;if(c>'Z'+4||c>'z')c=c-26;}printf("%c",c);}printf("\n");}12,P1115.55.6(switch)5.5#includemain(){intx,y;printf("輸入x:");scanf("%d",&x);if(xmain(){floatscore;chargrade;case2:printf("請輸入學生成績:");scanf("%f",&score);while(score>100||(scorevoidmain(){intyear,leap;scanf("%d",&year);if(year%4==0){if(year%100==0){if(year%400==0)leap=1;elseleap=0;}elseleap=1;}elseleap=0;if(leap)printf("%dis",year);elseprintf("%disnot",year);printf("aleapyear.\n")}5.614,P31例2.17例2.182.17輸出50個學生中成績高於80分者的學號和成績2.18輸出2000——2500年每一年是否閏年#includevoidmain(){intyear;year=2000;go:if(((year%4==0)&&(year%100!=0))||(year%400==0))printf("%disrunnian",year);if(year2500)gotoend;gotogo;end:getch();}希望對你有所幫助

⑩ 求c語言程序設計第三版和c語言程序設計實驗與習題指導答案

c語言程序設計第三版指導答案

附錄F課後題參考答案
習題1
1.1填空題
1.函數
2.主函數main();主函數main()3.主函數main()4.函數首部;函數體5.{;}
6.順序結構;選擇結構;循環結構7..c;.obj;.exe
1.2思考題
1.答:結構化程序設計是指,為使程序具有一個合理的結構以保證程序正確性而規定的一套如何進行程序設計的原則。順序結構,選擇結構,循環結構
2.答:演算法是對具體問題求解步驟的一種描述。計算機演算法的表達工具通常採用以下幾種方法:①用自然語言表示演算法;②用流程圖表示演算法;③用偽代碼表示演算法;④用程序設計語言表示演算法。
3.略4.略5.略1.3編程題1.答:
#include"stdio.h"main()
{floata=10,b=20,h=5,s;s=(a+b)*h/2;
printf("s=%f",s);}
2.答:
#include"stdio.h"
main()
{printf("******************************");printf("*helloworld*");printf("******************************");}
習題2
2.1單選題
DBDCADCABBCA
2.2填空題
1.2.000000

2.1;0.500000
3.9;24.65.100;d6.(1)20
(2)0

(3)607.(1)10;6;4
(2)6;9;15
(3)3;60;83
8.55或'7'
9.x=4;y=6;z=3;m=463
2.3改錯題(略)
習題3
3.1單選題
BDABCADCACBBA
3.2填空題
1.32.2613.10
4.2,1;互換a,b的值5.6.66.0037.7
8.5.0,4,c=3<Enter>
9.i=10,j=20<Enter>
10.(1)65(2)65,A(3)3.14,123.46
(4)3.141600e+000,1.234560e+002(5)8765.432100(6)8.765432e+003
11.a=2b=5x=8.8y=76.34c1=65c2=9712.%d/%d;%d/%d=%.2f
3.3改錯題(略)3.4編程題
1.答:
#include"stdio.h"main(){
intx,y;
scanf("%d%d",&x,&y);printf(" x y ");
printf("十進制數 %d %d ",x,y);printf("八進制數 %o %o ",x,y);printf("十六進制數 %X %x ",x,y);}
2.答:
#include"stdio.h"main(){
charch;
printf("請輸入一個大寫英文字母");scanf("%c",&ch);
printf("大寫英文字母是%c ",ch);printf("它的前導字元是%c ",ch-1);printf("它的後續字元是%c ",ch+1);}
3.答:
#include"stdio.h"main(){
intx,a,b,c,y;
printf("請輸入一個三位整數 ");scanf("%d",&x);a=x/100;
b=(x-a*100)/10;c=x%10;
y=c*100+b*10+a;
printf("反向輸出該整數:%d ",y);}}
4.答:
#include"stdio.h"main()
{inthour;
doublesalary,salaryday;
scanf("%d,%lf",&hour,&salaryday);
salary=hour*salaryday-hour*salaryday*0.1;
printf("%8.2lf ",salary);}
5.答:
#include"stdio.h"main(){
inta,b,c,t;
printf("請輸入三個整數 ");scanf("%d%d%d",&a,&b,&c);
printf("交換前a=%d,b=%d,c=%d ",a,b,c);t=a;a=c;c=b;b=t;
printf("交換後a=%d,b=%d,c=%d ",a,b,c);}
習題4
4.1單選題
BADDDACBBBBA
4.2填空題
1.1
2.(1)a>0||b>0
(2)x>0&&x<=10(3)a==1.5&&b==1.5&&c==1.5
(4)p<a||p<b||p<c
3.(1)0(2)1(3)1(4)0(5)1
4.c=15.-46.17.5,0,38.59.123
10.(cvb=='y'||cvb=='Y')&&(work>=3||college=='y'||college=='Y')&&age<=35
4.3改錯題(略)4.4編程題
1.答
#include"stdio.h"
#include"math.h"main(){
doublea,b,c,p,area;
scanf("%lf%lf%lf",&a,&b,&c);
printf("三角形的三邊為:%.llf,%.1lf,%.1lf ",a,b,c);if(a+b>c&&a+c>b&&b+c>a){p=(a+b+c)/2;
area=sqrt(p*(p-a)*(p-b)*(p-c));
printf("三角形的面積為%.2lf ",area);}else
printf("不能構成三角形 ");}
2.答:
#include"stdio.h"main()
{intx,y;
scanf("%d,%d",&x,&y);if(x*x+y*y>1000)
printf("%d ",(x*x+y*y)/100);else
printf("%d ",x+y);}
3.答:
#include"stdio.h"#include"math.h"main()
{doublex,y;
scanf("%lf",&x);if(x<-2)y=x*x-sin(x);elseif(x<=2)y=pow(2,x)+x;elsey=sqrt(x*x+x+1);
printf("x=%.2lfy=%.2lf ",x,y);}
4.答:
#include"stdio.h"main()
{longge,shi,qian,wan,x;scanf("%ld",&x);wan=x/10000;
qian=x%10000/1000;shi=x%100/10;
ge=x%10;
if(ge==wan&&shi==qian)/*個位等於萬位並且十位等於千位*/printf("thisnumberisahuiwen ");else
printf("thisnumberisnotahuiwen ");
}
5.答:
#include"stdio.h"main()
{floatp,w,s,d,f;
scanf("%f,%,%f",p,s,w);if(s>3000)d=0.15elseif(s>=2000)d=0.1;elseif(s>=1000)d=0.08;elseif(s>=500)d=0.05;elseif(s>=250)d=0.02;elsed=0f=p*w*s*(1-d);printf("%f",f);}
6.答:
#include"stdio.h"main()
{intyear,money;charx;
printf("是否是本公司產品(y/n):");scanf("%c",&x);
if(x=='y'||x=='Y')
{printf("產品使用的年限:");scanf("%d",&year);
if(year<=1)money=0;
elseif(year<8)money=50;elsemoney=100;

printf("產品保修額是:%d ",money);
}
else
{money=200;
printf("不是本公司產品,產品保修額是:%d ",money);}}
7.答:
#include"stdio.h"main()
{intmoney,num1,num2;
printf("請輸入取款額(≤2000):");scanf("%d",&money);
if(money>2000)printf("請輸入取款額數≤2000! ");elseif(money%50==0){num1=money/100;num2=(money-num1*100)/50;printf("需支付100元:%d張 ",num1);printf("需支付50元:%d張 ",num2);}elseprintf("輸入錢數必須是50的倍數! ");}
習題5
5.1單選題
CDABAABDDBDBCB
5.2填空題
1.202.333
3.(1)i<10或i<=9(2)j%3!=0
4.(1)flag*(float)k/(k+1)或1.0*flag*k/(k+1)(2)flag=-flag5.(1)max=x


(2)x!=-1(3)scanf("%d",&x)
6.(1)x<=9或x<10
(2)y=9-x
5.3改錯題(略)5.4編程題
1.答:
(1)for循環,其他略
#include"stdio.h"
main()
{inti,s=0;
for(i=1;i<=100;i++)s+=i*i;
printf("%d ",s);}
(2)for循環,其他略
#include"stdio.h"main()
{inti=1,p=1;doubles=1;do{
s+=1.0/p;p*=++i;
}while(1.0/p>1e-6);printf("%lf",s);}
2.答:
#include"stdio.h"main()
{intm,n,t,a,b;
scanf("%d,%d",&m,&n)if(m<n)
{t=mm=nn=t}a=m;b=n;t=m%nwhile(t)
{m=nn=tt=m%n;}printf("%d",n);}
3.答:
#include"stdio.h"main()
{intx,y,s=1;
scanf("%d,%d",&x,&y)for(y>0y--)s*=x
printf("%d,%d,%d ",s%10,s/10%10,s/100%10);}
4.答:
#include"stdio.h"main()
{intx,y,z;
for(x=1x<20x++)for(y=1y<33y++){z=100-x-y
if((z%3)==0&&(5*x+3*y+z/3)==100)printf("x=%d,y=%d,z=%d ",x,y,z)}}
5.答:(a)
#include"stdio.h"main()
{intj,k
for(j=1j<=4j++)
{for(k=1;k<=4-j;k++)printf("");printf("****")printf(" ")}}
(b)
#include"stdio.h"main()
{intj,k
for(j=1j<=4j++)
{for(k=1;k<=4-j;k++)printf("");for(k=1k<=2*j-1k++)printf("*")printf(" ")}}
6.答:
程序分析:利用for循環控制在100~999之間,對每個數分解出個位、十位、百位。
#include<stdio.h>main(){inti,j,k,n;printf("waterflower'numberis:");for(n=100;n<1000;n++){i=n/100;/*分解出百位*/j=n/10%10;/*分解出十位*/k=n%10;/*分解出個位*/if(n==i*i*i+j*j*j+k*k*k){printf("%-5d",n);}}printf(" ");}
7.答:
#include<stdio.h>main(){intx;for(x=1000;x>=3;x--)if(x%3==1&&x%5==2&&x%7==3){
printf("該校的學生人數是:%d人 ",x);break;}}
8.答:
#include<stdio.h>main(){intx=12,i=1;while(1)
{if((x+20+i)==2*(x+i))break;i++;}printf("小明母親在%d年後比小明的年齡大一倍 ",i);printf("那時小明年齡是:%d歲,小明母親年齡是:%d歲 ",x+i,x+20+i);}
習題6
6.1單選題
DBCCBBDC
C語言程序設計教程(第3版)
278
6.2填空題
1.c2.603.1000104.16
6.3編程題
1.答:
#include"stdio.h"#include"math.h"
#defineF(a)a*a+sqrt(3*a*a+2*a+1)main()
{floatx,f;
scanf("%f",&x);
f=4.5/F(exp(x))+F(cos(x))+F(sqrt(x))/F(x*x)printf("%f ",f);}
習題7
7.1單選題
BCADACCCDABCBDB
7.2填空題
1.(1)2345(2)10010(3)QuickC

(4)1000001000001000001000001(5)Language
(6)LanguageProgramming2.(1)j+=2(2)a[i]>a[j]3.(1)i=1(2)x[i-1]
7.3改錯題(略)7.4編程題
1.答:
#defineN10
#include"stdio.h"main()
{inta[N]={1,2,3,4,5,6,7,8,9,10,osum=0,qsum=0,j;for(j=0;j<10;j++)
if(j%2)qsum+=a[j];
elseosum+=a[j];
printf("osum=%d,qsum=%d ",osum,qsum);}
2.答:
#defineN10
#include"stdio.h"main()
{inta[N]={10,20,30,40,50,60,70,80,90},j,k,x;scanf("%d",&x);for(j=0;j<N;j++)
if(x<a[j])break;if(j==N)a[N-1]=x;else
{for(k=N-1;k>j;k--)a[k]=a[k-1];a[j]=x;}
for(j=0;j<N;j++)
printf("%d",a[j]);}
3.答:
#defineM3
#include"stdio.h"main()
{inta[M][M]={{1,2,3},{2,4,5},{3,5,6}},j,k,flag=1;;for(j=0;j<M;j++)
for(k=0;k<M;k++)if(a[j][k]!=a[k][j]){flag=0;break;}if(flag)printf("ok");elseprintf("NO");}
4.答:
#include"stdio.h"#include"string.h"main()
{charc1[10],c2[10],j;gets(c1);gets(c2);
for(j=0;(c1[j]==c2[j])&&c1[j]&&c2[j];j++);if(c1[j]>c2[j])printf("%d ",1);if(c1[j]<c2[j])printf("%d ",-1);if(c1[j]==c2[j])printf("%d ",0);}
5.答:
#include"stdio.h"#include"string.h"#defineM3#defineN80main()
{chara[M][N],j,k,n[5]={0};for(j=0;j<M;j++)gets(a[j]);
for(j=0;j<M;j++)
for(k=0;a[j][k];k++)
if(a[j][k]>='A'&&a[j][k]<='Z')n[0]++;
elseif(a[j][k]>='a'&&a[j][k]<='z')n[1]++;elseif(a[j][k]>='0'&&a[j][k]<='9')n[2]++;elseif(a[j][k]=='')n[3]++;elsen[4]++;
for(j=0;j<5;j++)printf("%4d",n[j]);}
習題8
8.1單選題
DBDACBACCC
8.2填空題
1.(1)2,1(2)10#30#(3)FOUR,P(4)60
2.(1)49
(2)2
(3)2

(4)

(5)
8.3改錯題(略)8.4編程題
1.答:
#include"stdio.h"
main()
{intn1,n2,n3,t;int*p1,*p2,*p3;
printf("pleaseinput3number:n1,n2,n3:");scanf("%d,%d,%d",&n1,&n2,&n3);p1=&n1;
p2=&n2;p3=&n3;
if(*p1>*p2){t=*p1;*p1=*p2;*p2=t;}
if(*p1>*p3){t=*p1;*p1=*p3;*p3=t;}if(*p2>*p3){t=*p2;*p2=*p3;*p3=t;}
printf("thesortednumbersare:%d,%d,%d ",n1,n2,n3);}
2.答:
#include"stdio.h"#defineN3main()
{inta[N],*p=a;for(;p-a<N;p++)scanf("%d",p);p=a+N-1;
for(;p-a>=0;p--)printf("%d",*p);}
3.答:
#include"stdio.h"main()
{inta[10];
intj,minl=0,maxl=0;for(j=0;j<10;j++)
scanf("%d",a+j);for(j=0;j<10;j++)
{if(a[maxl]<*(a+j))maxl=j;if(a[minl]>*(a+j))minl=j;}
j=a[0];a[0]=a[minl];a[minl]=j;j=a[9];a[9]=a[maxl];a[maxl]=j;for(j=0;j<10;j++)printf("%d",*(a+j));}
4.答:
輸入陣列如下:123456789101112輸出陣列如下:
121110987654321
#defineM3
#defineN4
#include"stdio.h"main()
{inta[M][N]={1,2,3,4,5,6,7,8,9,10,11,12},k,j,*p=&a[0][0],t;for(k=0,j=M*N-1;k<j;k++,j--)
{t=*(p+k);*(p+k)=*(p+j);*(p+j)=t;}for(k=0k<Mk++){for(j=0j<Nj++)
printf("%4d",a[k][j]);printf(" ");
}}
5.答:
#include"stdio.h"main(){
intlen;
charstr[20],*p=str;
printf("pleaseinputastring: ");scanf("%s",str);len=0;
while(*p!=''){
len++;p++;}
printf("thestringhas%dcharacters. ",len);}
6.答:
#include"string.h"#include"stdio.h"main(){
char*str1[5],ch[5][20],k,t,j,*c;voidsort(char**);for(k=0;k<5;k++){str1[k]=ch[k];gets(str1[k]);}for(k=0;k<7;k++)
{t=k;
for(j=k+1;j<5;j++)if(strcmp(*(str1+t),*(str1+j))>0)t=j;c=*(str1+t);
*(str1+t)=*(str1+k)*(str1+k)=c}
for(k=0;k<5;k++)puts(str1[k]);}
習題9
9.1單選題
CBBADDBCCDDCABCBCCBADCDAB
9.2填空題
1.1202.x3.3,2,2,34.fac/i5.8,176.97.1.0/(i*i)8.
fun-in:30,20,10fun-end:1015,35,105010,20,309.01234510.9363611.(1)r+b[k](2)*x
12.7531913.15
14.(1)*x(2)t15.(1)''(2)n++16.024
9.3改錯題(略)9.4編程題
1.答:
voidzhuan()
{charch;
while((ch=getchar())!=' ')
{if(ch>='a'&&ch<='z')ch=ch-32;putchar(ch);}}
2.答:
doubleexpp(intn){intk,fac=1;doublesum=1;
for(k=1;k<=n;k++){fac*=k;
sum+=1.0/fac}
return(sum);}
3.答:
intxy3(intx,inty)
{intk,num=1;
for(k=1;k<=yk++)num*=x
num=num%1000returnnum}
4.答:
intage(intn){intc;
if(n==1)c=10
elsec=age(n-1)+2returnc}
5.答:
#include"stdio.h"
main()
{inta,b,c,d;
voidfun(inta,intb,int*c,int*d);scanf("%d%d",&a,&b);fun(a,b,&c,&d);
printf("%d%d",c,d);
}
voidfun(inta,intb,int*c,int*d){if(b)
{*c=a/b;*d=a%b;}}
6.答:
#include"stdio.h"
main(intargc,char*argv[]){intk;
printf("argc=%d ",argc);for(k=1;k<argc;k++)printf("%s ",argv[k]);}
習題10
10.1單選題
CDBBBBBBADCCBDC
10.2填空題
1.所有結構體成員所佔存儲空間的總和2.與佔用存儲空間最大的那個成員相等
附錄F課後題參考答案

285
3.(1)structsatype(2)3(3)sa.a(4)9(5)psa=&sa4.805.structnode6.0
10.3編程題
1.答:
#include"stdio.h"
structstudent{
longnum;
charname[20];charsex;floatscore;};main()
{structstudents[20],temp;intj,k,man=0,woman=0;
floatsumman=0,sumwoman=0,aveman,avewoman;for(k=0;k<20;k++)
{scanf("%ld%s%c%f",&s[k].num,s[k].name,&s[k].sex,&s[k].score);if(s[k].sex=='m')
{summan+=s[k].score;man++;}else
{sumwoman+=s[k].score;woman++}}
aveman=summan/man;
avewoman=sumwoman/woman;
printf("%d %f %d %f ",man,aveman,woman,avewoman);for(k=0;k<19;k++)
for(j=0;j<20-k;j++)
if(s[j].score<s[j+1].score)
{temp=s[j];s[j]=s[j+1];s[j+1]=temp;}printf("thesortednumbers: ");for(k=0;k<20;k++)
printf("%ld %s %c %5.1f ",s[k].num,s[k].name,s[k].sex,s[k].score);}
習題11
11.1單選題
BADD
11.2填空題
1.3d3d3302.(1)28
(2)20(3)0(4)--9
3.(1)251
(2)42
(3)209
(4)–295(5)848
習題12
12.1單選題
BCDCAADA
12.2填空題
1.rewind(文件指針)2."d1.dat","rb"3.stdin
4.文本文件;二進制文件5.(1)"w"
(2)str[i]--32

(3)"r"
6.fopen7.Hello8.(1)"r"

(2)fgetc(fp)

(3)time++


C語言程序設計實驗與習題指導課後程序設計答案
P18
(1)
#include<stdio.h>intmain(void){intcelsius,fahr;fahr=150;celsius=5*fahr/9-5*32/9;printf("fahr=%d,celsius=%d ",fahr,celsius);return0;}
(2)
#include<stdio.h>intmain(void){intcelsius,fahr;celsius=26;fahr=9*celsius/5+32;printf("celsius=%d,fahr=%d ",celsius,fahr);return0;}
(3)
#include<stdio.h>intmain(void){intaverage,math,eng,comp;math=87;eng=72;comp=93;average=(math+eng+comp)/3;printf("math=%d,eng=%d,comp=%d,average=%d ",math,eng,comp,average);return0;}
(4)
#include<stdio.h>intmain(void){intn,a,b,c;n=152
c=n%10;
b=(n/10)%10;a=n/100;
printf("整數%d的個位數字是%d,十位數字是%d,百位數字是%d ",n,c,b,a);return0;
}
P27
(1)
#include<stdio.h>#include<math.h>intmain(void){intcelsius,fahr;printf("Entercelsius:");scanf("%d",&celsius);fahr=9*celsius/5+32;printf("fahr%d ",fahr);return0;}
(2)
#include<stdio.h>#include<math.h>intmain(void){intmoney,year;doublerate,interest;printf("Entermoney,year,rate:");scanf("%d%d%lf",&money,&year,&rate);interest=money*pow(1+rate,year)-money;printf("interest=%.2f ",interest);return0;}
(3)
#include<stdio.h>#include<math.h>intmain(void){doublex,y;printf("Enterx:");scanf("%lf",&x);
if(x<0){y=pow(x+1,2)+2*x+1/x;}else{y=sqrt(x);}
printf("y=f(%f)=%.2f ",x,y);return0;
}
(4)
#include<stdio.h>intmain(void){intx,y;printf("Enternum1:");scanf("%d",&x);printf("Enternum2:");scanf("%d",&y);printf("%d+%d=%d ",x,y,x+y);printf("%d-%d=%d ",x,y,x-y);printf("%d*%d=%d ",x,y,x*y);printf("%d/%d=%d ",x,y,x/y);printf("%d%%%d=%d ",x,y,x%y);return0;}
10的階乘
#include<stdio.h>intmain(void){inti,n,proct;printf("Entern:");scanf("%d",&n);proct=1;for(i=1;i<=n;i++){proct=proct*i;}printf("proct=%d ",proct);return0;}