C語言程序設(shè)計試驗指導(dǎo)-上交大-課前練習(xí)-改錯-完善程序-課后練習(xí)參考答案-201810修改_第1頁
C語言程序設(shè)計試驗指導(dǎo)-上交大-課前練習(xí)-改錯-完善程序-課后練習(xí)參考答案-201810修改_第2頁
C語言程序設(shè)計試驗指導(dǎo)-上交大-課前練習(xí)-改錯-完善程序-課后練習(xí)參考答案-201810修改_第3頁
C語言程序設(shè)計試驗指導(dǎo)-上交大-課前練習(xí)-改錯-完善程序-課后練習(xí)參考答案-201810修改_第4頁
C語言程序設(shè)計試驗指導(dǎo)-上交大-課前練習(xí)-改錯-完善程序-課后練習(xí)參考答案-201810修改_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

實驗一VisualC++集成環(huán)境實驗內(nèi)容(一)程序改錯(1)無法運行(2)將第二個C程序重新存放到另一個工程文件中(3)同一個工程文件只能有一個main函數(shù)(1)/*一個簡單的程序*/(2)voidmain()(3))(1)inta,b,c;a=2;c=a*b;(二)完善程序(1)year(2)month(3)day(1)c(2)a*a+b*b(3)c(1)44*a(3)s課后練習(xí)1.D.D.A.C.C.C7.stdio.h8.main函數(shù)實驗二數(shù)據(jù)類型、運算符和表達式課前練習(xí)20 8 70 0Abs3Classelsesummyclass、3blocka+bforfun(4)a-b3.B.D.A.C.D8.B實驗內(nèi)容(一)程序改錯intx1,x2,x3,x4;scanf("%d,%d”,&a,&b);c=x4*1000+x2*100+x3*10+x1;程序1:2 2errorC2065:'al':undeclaredidentifier變量al沒有定義sum=a+b+c③^ errorC2146:syntaxerror:missing';'beforeidentifier'printf'printf語句之前缺少分號sum=a+b+c;④0error(s),0warning(s)⑤a=1 b=3 c=2sum=6⑥語句以分號結(jié)束;變量要先定義后使用 程序2:① 22 ?errorC2065:'sum':undeclaredidentifier變量sum沒有定義intsum=a+b;1errorC2086:'c':redefinition變量c重復(fù)定義c=a+b+sum;③a=1 b=3sum=8④在同一個函數(shù)體內(nèi),變量要先定義后使用,但不能重復(fù)定義程序3:①,errorC2106:'=':leftoperandmustbel-value賦值符號左邊參數(shù)錯誤c=a+b;②c=4③賦值符號左邊只能是變量,不能是常量或表達式t=a;a=b;;printf("a=%d\tb=%d\n”,a,b);(二)完善程序intn(2)"%d”,&n(3)s(1)floats(float)a/b(3)%f#include<math.h>pow(x,y)(3)"%lf”,s課后練習(xí).D.D.A4.B.C.D.D.A.C.A11.A12.B13.B14.C15.B16.A17.C18.819.5和420.2.000000double(刪除最后“語句”兩字)doublea=3(回車)實驗三if選擇結(jié)構(gòu)語句課前練習(xí)1.902.1103.(1)n%2==0(2)n%2!=0(3)a>=’0’&&a<二’9’(4)a>=’a’&&a<二’z’(5)a>=’A’&&a<二’Z’(6)(a>=’a’&&a<二’z’)||(a>=’A’&&a<二’Z)(7)(x<-10)||((x>10)&&(x<=20))a%b!=0a*b>0.-1.D.10 30 40.C.A.D.A實驗內(nèi)容(一)程序改錯scanf("%d",&t);if(t%5==0&&t%7==0)elsechary;if(x==0)printf("%c\n",y);if(x==m){printf("Wrong\n");printf("Toolow\n");}(二)完善程序#include<math.h>(-b+sqrt(d))/(2*a);sqrt(fabs(d))/(2*a);c>='a'&&c<='u'c>='v'&&c<='z'c=c+5-26;c>='a'&&c<='z'c>='A'&&c<='Z'(3)else

課后練習(xí)1.D2.C3.A4.A5.B6.C7.C8.C9.B10.D11.A12.D13.D14.A15.2,016.A17.D18.A19.D20.B21.C22.!23.D24.C25.D26.B實驗四switch實驗四switch開關(guān)語句課前練習(xí)課前練習(xí)4 11if((k==1)||(k==2)printf("a\n");elseif((k==3)||(k==4)||(k==5))printf("b\n");elseprintf("c\n");3.switch(x)(case3:printf("x\n");break;rintf("y\n");break;default:printf("z\n");)實驗內(nèi)容(一)程序改錯switch(x)case4:default:a=s/250;case0:d=0;break;default:d=15;elsep=1;a=num/1000;num%10(二)完善程序(1)grade/10(2)breakdefaultx<0a=x/10(3)a(1)monthdays=31(year%4==0&&year%100!=0)||(year%400==0)課后練習(xí).C.D(將程序最后一條語句改為:printf("a=%d,b=%d\n",a,b);).A.B5.pass中及格不及格6.2實驗五while、do…while循環(huán)結(jié)構(gòu)語句課前練習(xí)1.02.10.A.C.A.A.C實驗內(nèi)容(一)程序改錯(1)longk=1;(2)num/=10;(3)while(num);(1)intm=0,mc=0,j;if((k%7==0)||(k%11==0))m=m+kmax=min=grade;while(grade>=0)if(grade<min)(二)完善程序t%2==0m=m*10+t;n=n/10;ch=getchar()ch>='0'&&ch<='9'(ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')fabs(t)s/npi*4課后練習(xí).A.A.D.B.A.C.A8.30實驗六for循環(huán)結(jié)構(gòu)語句課前練習(xí).C.D.C.for(i=100;i!=0;i--)printf("p");.D.C.D.k<=n k++.A.C.C實驗內(nèi)容(一)程序改錯intsum=1,s0=0,s1=0,s2=1,s;for(n=4;n<=10;n++)s2=s;for(i=1;i<=y;i++)t*=x;t=t%1000;(1)inti,count=0;if((i%7==0||i%11==0)&&(i%77!=0))count++;(二)完善程序(1)s=0.0(2)scanf("%d”,&n)s+1.0/s1(1)i%100a+b+c==xt++(1)2(2)n(3)n%i==0課后練習(xí)1.A2.B3.C.A.D.C.A8.B.A.C實驗七循環(huán)控制語句課前習(xí)題.D.循環(huán)語句.break.A5.20.6 67.88.B實驗內(nèi)容(一)程序改錯inti,j,k,sum=0;for(i=1;i<=3;i++)if((k>=1&&k<=6)&&(i!=0)&&(j!=0)||(k==0))2.for(j=2;j<i;j++)if(i%j==0)(3)if(j>=i)(1)m=n;while(m!=0&&m>=c)if(m==0)(二)完善程序i<10j%3!=0continue;total=0;sum=0;total+sum;j=(y%100)/10;i!=j&&i!=k&&k!=jt%5==0課后練習(xí).D.C.D4.B5.C6.B7.A9 110 7 x=16 y=8實驗八函數(shù)的初步應(yīng)用課前練習(xí).voidreturn.C.A.C. 7 3.C.D.D9.A實驗內(nèi)容(一)程序改錯intfun(inta,intb,intc)if(a+b>c&&b+c>a&&a+c>b)elseif(a==b||b==c||a==c)if(n==1)c=age(n-1)+2;(3)printf("%d\n”,age(5))(1)while(n!=i)if(n%i==0)n=n/i;(二)完善程序i*i==xreturn0f(i+100)&&f(i+168)(1)xs1+s2+s3==15t++f<t(2)returnf(3)fun(n)課后練習(xí).C.C.A.D.A6.B7.B.A.A.C.A12.A13.B14.D15,10,2016,13111217,218.3 119.-3120,22121.22.main函數(shù).returnvoid.voidint實驗九函數(shù)的其他應(yīng)用課前練習(xí)1.B2.A3.A4.C5.D6.D7.558.C9.D10.A實驗內(nèi)容(一)程序改錯#defineSWAP(x,y)temp=x;x=y;y=tempinta,b,temp;SWAP(a,b);#defineDIV(m)(m)%3==0scanf("%d",&m);(3)if(DIV(m))switch(n%10)case1:c1++;break;case2:c2++;break;(二)完善程序TOC\o"1-5"\h\z(1)#definef1(x,y) x*y(2)#definef2(a,b) (a)*(b)#include<abc.h>(1)12 48(2)12 12(1)2 313 8 52 315 10 52 3(2)略課后習(xí)題.C.C.A.C.D.A.A. 1 3 9.11010.911. 4 012.1013.2714.auto15.6 72016.4817 1 218.5,2519.620.3實驗十一維數(shù)組課前練習(xí)1-3.BDD248Bintss[s];3715654,321實驗內(nèi)容(一)程序改錯scanf("%f",a);改為scanf("%f",&a);max=min=avg=a[1];改為max=min=avg=a[0];if(min<a[i])改為if(min>a[i])或if(a[i]<min)while(x[++i]!=0);改為while(x[i++]!=0);while(x[i]=0)改為while(x[i]==0)sum\=c;改為sum/=c;s=count=1;改為s=count=0;scanf("%d",a[i]);改為scanf("%d”,&a[i]);break;改為continue;printf("s=%fcount=%f\n",s,count);改為printf("s=%dcount=%d\n",s,count);(二)完善程序k=p#include<math.h>aver=s/Ns=fabs(a[i]-aver)printf("%f”,t)s=i*3+j*5breaka[k]!=0&&s!=0課后練習(xí)1-2.DCI=1、x[I-1]012,20147,1715,126,2234,556023,235,71113實驗十一二維數(shù)組課前練習(xí)A96、83-6,BBDBx<4、y<3、z==30、10、210、3210實驗內(nèi)容(一)程序改錯s1=s2=s3=s4=0改為s1=0,s2=0,s3=0,s4=0s2=s2+a[m][j]改為s2=s2+a[m-1][j]for(i=0;i<m;i++)改為for(i=1;i<m-1;i++)s=s1-s2-s3-s4改為s=s1+s2+s3+s4inta[3][3],sum改為inta[3][3],sum=0scanf("%d",a[i][j])改為scanf("%d",&a[i][j])sum=sum+a[i][j]改為sum=sum+a[i][i]sum=%f\n改為sum=%d\ninti,j,s,a[3][3],sum改為inti,j,s,a[3][3],sum=0for(i=0;i<3;i++)改為for(i=0;i<3;i=i+2)sum=*a[i][j]改為sum*=a[i][j](二)完善程序sum=0(2)a[i][i]i<Mj<N(3)a[i][j]printf("\n")printf("\n")(2)(j+2)%3printf("\n")課后練習(xí)1-3,CDD8sum1=38,sum2=34A16100,120,35811,133113610259487實驗十二數(shù)組與函數(shù)課前練習(xí)1-3.ACB.改變、不改變.D實驗內(nèi)容(一)程序改錯fun(inta[],intn)改為doublefun(inta[],intn)inti,n;改為inti;doubles;改為doubles=0;s=s+a(i);改為s=s+a[i];ave=fun(a[],n);改為ave=fun(a,n);floatj=0;改為floatxa=0;j<=n改為j<nj<=n改為j<nreturnxa改為returncsum=array[0]改為sum=0intscore[10]改為floatscore[10]scanf("%f",score)改為scanf("%f",&score)aver=average(score[10])改為aver=average(score)課后練習(xí)1-2.DC-1、2223、6、9a[i-1][j-1]+a[i-1][j]、j<=i1、121、1331134567、3456、Endofmain()!012、345234、123、234實驗十三字符數(shù)組與字符串課前練習(xí)1-5,BCDBD6.strcmp(s1,s2)==0實驗內(nèi)容(一)程序改錯charp[]改為charp[20]n=1;改為n=0;p[n]=='\0'改為p[n]!='\0'length(s[20])改為length(s)2.max=0改為max=p[0]max>p[i]改為max<p[i]i=k改為k=i(二)完善程序s[i]!='\0's[i]='A's[i]+=1(4)sstrlen(s)s[i]!='\0's[i]>='A'&&s[i]<='Z'fun(s)課后練習(xí)1-5.DAACB7GLdianeFrance>England、China、AustraliaSimon、Niku、Josiah、Georgestrlen(s)、s[i]>=’a’&&s[i]<=’z’、s[i]+32、,\0’、s2[j]!=s2[n2-j-1]、j<n3、f(s)實驗十四指針與一維數(shù)組課前練習(xí)DDDAC5實驗內(nèi)容(一)程序改錯printf("%d",p+i)改為printf("%d",*(p+i))m=0改為m=ik=m改為m=k(二)完善程序(1)math.h&b*pbn*(p+i-1)*3-1課后練習(xí)1.42-11.BBBACDACAA2、23、74、16、6436、21416.26、22、46實驗十五指針與字符串課前練習(xí)1-6,CBAAAA實驗內(nèi)容(一)程序改錯1.int*a=upper改為int*a=&upperint*b=lower改為int*b=&lower;a++改為(*a)++b++改為(*b)++(二)完善程序(1)*p!='\0'(2)*p<='Z'(3)*p+=32(1)s(2)*p!='\0'(3)*p-'0'課后練習(xí)1-9,BDCDDCBADgae65、7、8、76b5、c7、h10432156、432651jih、gfe、dcba實驗十六指針與函數(shù)課前練習(xí)1-2.BB3.100 2004.B實驗內(nèi)容(一)程序改錯scanf("%d",p)改為scanf("%d",p++)*p<*max改為*p>*maxif(max=arr)改為if(max==arr)while(i=0;i<n;i++);改為for(i=0;i<n;i++)2.intnum[]改為intnum[5]num[i]=0改為num[k]=0switch(s)改為switch(*s)num[k]++改為num[i]++(二)完善程序1.(1)int*x(2)x[i]==x[i+1](3)n-1(4)f==1課后練習(xí)1-4,DCCD10,15,15,102143i<n-1、a[i]>a[j]、"%d”,p+i、”%d”,*(p+i)8.4、5、649.36、9410.*p1=15、*p2=011.43210、9876512.10、15、19實驗十七結(jié)構(gòu)體、共同體和枚舉類型課前習(xí)題1.B.D.A4.B.D.A7.B.C.A.A實驗內(nèi)容(一)程序改錯enumday{sun,mon,tue,wed,thu,fri,sat};scanf("%s",s);(3)printf("明天是:%s\n",str[d+1]););structemployeeem[4]={{1,"wang”,25},{2,"li”,38},{3,"zhang”,30},{4,"qian”,45}};(3)if(em[i].age>35)3(1)strcpy(,"Liming");(2)s1.sex='F';(3)printf("%s\n",);(二)完善程序structDate&t,year,&t,month,&t.dayt.year,t.month,t.daystu[i].scorestu[i].score<=stu[j].scoresum/NSx[i].sex=='M'(3)n課后習(xí)題1.B.C.D.D.B6.37.0,6,7,8,158. 64,48 4,39.410. 0 111.712.structstudenta={1021,'M',"zhang"};13.8014.typedefintInteger實驗十八文件操作課前練習(xí)1.FILE*zx2-4.BBC實驗內(nèi)容(一)程序改錯FILEfp改為FILE*fpfopen("stu_list.txt","rb")改為fopen("stu_list.txt","wb")fwrite(stu[i]改為fwrite(&stu[i]fread(stu[i]改為fread(&stu[i](二)完善程序(1)FILENULL"filea.dat","r"!feoffgetc(fp)課后練習(xí)1-9,CDACBBDACfscanfa+12,123,45613.3.3實驗十九指針與二維數(shù)組課前練習(xí)1-3.ADC實驗內(nèi)容(一)程序改錯int*p[3]改為int(*p)[3]p[i][j]=(*(p+i)+j)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論