版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1 (1)r*r (2)&x (3)x錯誤:f(doublex) 正確:doublef(doublex)(2)錯誤:returns 正確:returns;【參考答案】floatfun(intn){inti,s1=0; /*定義整型變量s1,表示分母*/floats=0.0; /*定義單精度變量s,表示每一項*/for(i=1;i<=n;i++) {s1=s1+i; /*求每一項的分母*/s=s+1.0/s1; /*求多項式的值*/}returns;}2 (1)sum=0 (2)sum+=n (3)ld(1)錯誤:t+=1.0/k; 正確:t+=1.0/I;錯誤:returnI; 正確:returnt;【參考答案】voidfun(char*tt,intpp[]){inti;for(i=0;i<26;i++)pp[i]=0;/*初始化pp數(shù)組各元素為0*/for(;*tt!=”\0”;tt++)if(*tt>=”a”&&*tt<=”z”)pp[*tt-”a”]++;/*將tt字符串中”a”到”z”26個字母各自消滅的次數(shù),依次放在pp數(shù)組中,任一個小寫字母減去”a”后所得結(jié)果正好是它對應(yīng)的下標*/}3 (1)!=(2)str[1]或*(str+1)s,c(1)錯誤:voidfun(char*s,inta,intb)正確:voidfun(char*s,int*a,int*b)(2)錯誤:a++; 正確:(*a)++;(3)錯誤:b++; 正確:(*b)++;【參考答案】intfun(char*ss,charc){inti=0;for(;*ss!=”\0”;ss++)if(*ss==c)i++;/*求出ss所指字符串中指定字符的個數(shù)*/returni;}【考點分析】此題考察:字符串完畢標識”\0”;for循環(huán)語句,如何遍歷字符串;通過if條件語句,推斷是否一樣?!窘忸}思路】ss中找出子字符串的方法是:1個字符開頭,對字符串進展遍歷;ss串的當前字符等于t1個字符,兩字符串的指針自動加1,連續(xù)比較下一個字符;假設(shè)比較至字符串的結(jié)尾,則跳出循環(huán);假設(shè)ss串的字符和c串的字符不對應(yīng)一樣,則連續(xù)對ss串的下一個字符進展處,if()的作用是進展推斷是否一樣,假設(shè)與c一樣,則表示又消滅一次。4 (1)voidfun(chars[],intn)(2)j=0(3)s[j]=”\0”錯誤:longk; 正確:longk=1;(2)錯誤:num\=10; 正確:num/=10;【參考答案】voidfun(intm,int*a,int*n){inti,j=0;for(i=1;i<=m;i++)if(i%7==0||i%11==0)/*求出1到m(含m)之內(nèi)能被7或11整除的全部整數(shù)放在數(shù)組a中*/a[j++]=i;*n=j; /*返回這些數(shù)的個數(shù)*/}【考點分析】此題考察:整除的推斷方法,用%對除數(shù)求余,假設(shè)余數(shù)為0,表示能被整除。if語句條件表達式,留意“規(guī)律與“和“規(guī)律或“的區(qū)分。for循環(huán)語句,留意循環(huán)變量的取值范圍。一維數(shù)組的定義與引用。【解題思路】此題要找出能被7或11整除的全部整數(shù),留意數(shù)學(xué)中的“或“和C語言中的“或“的區(qū)分,在此處,if條件語句中用“||“運算符,假設(shè)要找能同時被7和11整除的全部整數(shù),則在if()中,應(yīng)用“&&“運算符。5 (1)n%100!=0或n%100(2)n%400==0 (3)flag錯誤:ifn==0 正確:if(n==0)(2)錯誤:result=n--;正確:result*=n--;【參考答案】voidfun(inta,intb,long*c){*c=(a%10)*1000+(b%10)*100+(a/10)*10+b/10;}【考點分析】此題考察:如何取出數(shù)值n的各個位,主要是考察”%”和”/”的交換使用。兩個整型數(shù)相除,”/”用來求得數(shù)的整數(shù)局部,”%”用來求余數(shù)?!窘忸}思路】此題中主要的問題是怎么取出ab的個位數(shù)和十位數(shù),取出后怎么表示成c中相應(yīng)的位數(shù)。由于a和b都是只有兩位的整數(shù),所以分別對它們除10可得到它們的十位數(shù),10對它們求余可得到它們的個位數(shù)。得到后對應(yīng)乘以1000、100、10、1就可得到c的千位數(shù)、百位數(shù)、十位數(shù)和個位數(shù)。留意:使用c時要進展指針運算。6【(1)n>1或1<n (2)n-1 (3)1(1)錯誤:if((k%13=0)||(k%17=0))正確:if((k%13==0)||(k%17==0))錯誤:缺少【參考答案】doublefun(intm){inti;doubles=0.0;for(i=1;i<=m;i++)s=s+log(i);returnsqrt(s);/*計算s=ln(1)+ln(2)+ln(3)+…+ln(m)*//*對s求平方根并返回*/}【考點分析】計算表達式的值,一般都要定義一個變量sum作為累加(乘器),加法運算時賦初值為0,乘法運算時,賦初值為1,然后利用循環(huán)語句,使sum進展累加或累乘。【解題思路】題目要求計算從1到m的對數(shù)的和,可用從1到m的循環(huán),處是,log()函數(shù)的形式參數(shù)應(yīng)當為double型變量,而用于循環(huán)的基數(shù)變量為整數(shù),需要進展強制轉(zhuǎn)換,在返回的時候求出平方根。大括號正確:加}7 (1)i<=n (2)|| (3)1.0或(double)1(1)錯誤:intsum=0.0; 正確:doublesum=0.0;錯誤:sum\=c; 正確:sum/=c;【參考答案】voidfun(intm,int*k,intxx[]){inti,j,n=0;for(i=4;i<m;i++)/*找出大于1小于整數(shù)m的非素數(shù)*/{for(j=2;j<i;j++)if(i%j==0)break;if(j<i)xx[n++]=i;}*k=n; /*返回非素數(shù)的個數(shù)*/}【考點分析】此題考察:素數(shù)的推斷,是對整除算法和循環(huán)推斷構(gòu)造的考察?!窘忸}思路】這道題是考察一個數(shù)是否為素數(shù)的簡潔延長,只要把握了推斷素數(shù)的方法,問題便能順當解決,請學(xué)習者以此題為例,搞清楚推斷素數(shù)的方法。8 (1)i<=n (2)|| (3)1.0或(double)1(1)錯誤:intsum=0.0; 正確:doublesum=0.0;(2)錯誤:sum\=c; 正確:sum/=c;【參考答案】voidfun(intm,int*k,intxx[]){inti,j,n=0;for(i=4;i<m;i++)/*找出大于1小于整數(shù)m的非素數(shù)*/{for(j=2;j<i;j++)if(i%j==0)break;if(j<i)xx[n++]=i;}*k=n; /*返回非素數(shù)的個數(shù)*/}【考點分析】此題考察:素數(shù)的推斷,是對整除算法和循環(huán)推斷構(gòu)造的考察?!窘忸}思路】這道題是考察一個數(shù)是否為素數(shù)的簡潔延長,只要把握了推斷素數(shù)的方法,問題便能順當解決,請學(xué)習者以此題為例,搞清楚推斷素數(shù)的方法。9 (1)bb[i]=0 (2)bb[i]+=score[i][j]錯誤:k++錯誤:if(m=k)
正確:k++;正確:if(m==k)【參考答案】floatfun(intm,intn){inti;doublep=1.0;for(i=1;i<=m;i++)p=p*i;/*求m!*/for(i=1;i<=n;i++)p=p/i;/*求m!/n!*/for(i=1;i<=m-n;i++)p=p/i;/*求m!/(n!(m-n)!)*/returnp;}【考點分析】此題考察:for循環(huán)語句,return語句,返回函數(shù)的值,留意返回變量的類型。【解題思路】此題中,欲求P的值,需要先求m、n和m-n的階乘值,可用循環(huán)語句實現(xiàn)。留意:階乘值應(yīng)當是double類型,假設(shè)定義x、y、z為整型變量,則p=x/(y*z)中的除法為整數(shù)除法。10 (1)n--或--n或n-=1或n=n-1(2)s[i]=s[N]或*(s+i)=*(s+n)(3)s[N]=t或*(s+n)=t錯誤:intfun(n)錯誤:if(n=1)
正確:if(n==1)
正確:intfun(intn)【參考答案】floatfun(floath){longt;t=(h*1000+5)/10;/*單精度數(shù)h乘以1000后再加5,相當于對h中的第三位小數(shù)進展四舍五入,除以10后將其賦給一個長整型數(shù)時,把第三位小數(shù)后的數(shù)全部截去*/return(float)t/100;/*除以100,保存2位小數(shù)*/}【考點分析】此題考察:四舍五入方法的考察;數(shù)據(jù)類型強制轉(zhuǎn)換?!窘忸}思路】留意:此題要求h的值真正發(fā)生了四舍五入,而不是為了輸出,即不能用printf(“%7.2f“,h)直接得到結(jié)果。由于單精度數(shù)h乘以1000后再加5,此時相當于對h中的第三位小數(shù)進展四舍五入,在將其賦給一個長整型數(shù)時,把第三位小數(shù)后的數(shù)全部截去return中要將其中一個數(shù)轉(zhuǎn)成浮點型數(shù)。11 (1)i==0||i==n-1||j==0||j==n-1(2)bb[i][j]=0【考點分析】(1)錯誤:switch(g); 正確:去掉分號(2)錯誤:case1;case2:return1;正確:case1:case2:return1;【參考答案】intfun(inta[M][N]){inti,j,sum=0;for(i=0;i<M;i++)for(j=0;j<N;j++)if(i==0||i==M-1||j==0||j==N-1)/*只要下標中有一個為0或M-1或N-1,則它肯定是周邊元素*/returnsum;}【考點分析】
sum=sum+a[i][j];/*將周邊元素相加*/此題考察:二維數(shù)組,其元素也稱為雙下標變量;for循環(huán)語句依據(jù)數(shù)組元素的下標進展循環(huán)操作;if語句確定周邊元素是否符合題目要求。【解題思路】此題承受逐一推斷的方式,周邊元素的下標肯定有一個是0或M-1或N-1,且只要下標中有一個為0或M-1或N-1,則它肯定是周邊元素。(1)break;(2)i++或++i或i+=1或i=i+1(3)”\0”錯誤:voidfun(int*a,intn);正確:voidfun(int*a,intn)(2)錯誤:m=0; 正確:m=i;【參考答案】floatfun(){floatx1=0.0,x0;do{x0=x1;x1=cos(x0);}while(fabs(x0-x1)>=1e-6);returnx1;}【考點分析】do……while循環(huán)語句,其形式為:do{語句}while(表達式);這個循環(huán)與while循環(huán)的不同在于:它先執(zhí)行循環(huán)中的語句,然后再推斷表達式是否為真。假設(shè)為真則連續(xù)循環(huán),假設(shè)為假,則終止循環(huán)。因此,do-while循環(huán)至少要執(zhí)行一次循環(huán)語句?!窘忸}思路】函數(shù)fun的功能是用迭代方法求方程的一個實根,,只要依據(jù)算法用適宜的程序表達,就可以解題了。(1)max=a (2)max=b (3)max=c錯誤:voidfun(intm,intk); 正確:voidfun(intm,intk)(2)錯誤:aa[i]=m/k;正確:aa[i]=m%k;(3)錯誤:printf(“%d“,aa[i]);正確:printf(“%d“,aa[i-1]);【參考答案】voidfun(char*a){char*p=a;while(*p==”*”)p++;/*指針p指向字符串第一個字母*/for(;*p!=”\0”;p++,a++)*a=*p;/*從第一個字母開頭,其后的字符都放入指針a所指的字符串中*/*a=”\0”;/*在字符串最終加上完畢標記符*/}【考點分析】此題考察:將字符串的前導(dǎo)*號刪除,即可以通過while循環(huán)語句、for循環(huán)語句進展循環(huán)操作,將前導(dǎo)*號后面字符重儲存。字符串完畢標識”\0”。【解題思路】依據(jù)題意需刪除給定字符串中的前導(dǎo)*號,那么需要使用指針型變量來完成該操作,當指針指向第一個非*號,即可把后面的全部字符都存到一個串中。我們在此供給另一種解答方法。#include<string.h>voidfun(char*a){char*p=a;while(*p==”*”)p++;strcpy(a,p);}14 (1)a (2)a (3)b錯誤:#defineFU(m,n)(m/n)正確:#defineFU(m,n)(m)/(n)(2)錯誤:return(Value);正確:return(value);【參考答案】intfun(char*str){inti,n=0,fg=1;char*p=str;while(*p)/*將指針p置位到字符串末尾,并統(tǒng)計字符數(shù)*/{n++;p++;}for(i=0;i<n/2;i++)/*循環(huán)比較字符*/if(str[i]==str[n-1-i]);/*一樣,什么都不作*/else/*不同,直接跳出循環(huán)*/{fg=0;break;}returnfg;}【考點分析】此題考察:推斷回文算法,針對于遍歷字符串的操作,需要循環(huán)語句的操作,指針型變量的幫助,同時假設(shè)有推斷,則應(yīng)當有if語句的協(xié)作?!窘忸}思路】推斷回文數(shù)就是將第一個字符與最終一個字符比較,其次個字符與倒數(shù)其次個字符進展比較,依此類推,直到中間的字符,假設(shè)比較的結(jié)果都一樣,那么這個字符串就是回文,否則不是。15 (1)n%10 (2)break (3)break(1)錯誤:t[i]=s[s1-1];正確:t[i]=s[s1-1-i];【參考答案】voidfun(char*s){charch;inti,m,n;i=0;m=n=strlen(s)-1;while(i<(n+1)/2){ch=s[i];s[i]=s[m];s[m]=ch;i++;m--;}}【考點分析】此題考察:變量交換,需借助第三方變量來完成。While循環(huán)語句,一般需依據(jù)題意確定循環(huán)條件?!窘忸}思路】將字符串中的內(nèi)容逆置,實際上就是將第一個字符和最終一個字符交換,再將其次個字符與倒數(shù)其次個字符交換,依此類推,直到中間的字符為止。所以,長度為n的字符串需要交換的次數(shù)為n/2。16 (1)i%10 (2)g*g*g==i(1)錯誤:j=1; 正確:j=0;(2)錯誤:while(t!=0&&m!=0&&n!=0)正確:while(t!=0||m!=0||n!=0)【參考答案】longfun(char*p){longn=0;intflag=1;if(*p==”-”) /*負數(shù)時置flag為-1*/{p++;flag=-1;}elseif(*p==”+”) /*正數(shù)時置flag為1*/p++;while(*p!=”\0”{ n=n*10+*p-”0”;/*將字符串轉(zhuǎn)成相應(yīng)的整數(shù)*/p++;}returnn*flag;}【考點分析】此題考察:字符串轉(zhuǎn)整數(shù)算法?!窘忸}思路】if()的作用是推斷它是正數(shù)還是負數(shù)。while()循環(huán)的作用是將字符串轉(zhuǎn)成相應(yīng)的整數(shù)。留意:*p是一個字符(如”9”、”4”),并不是一個數(shù),要將其轉(zhuǎn)成相應(yīng)的數(shù)字必需令其減去”0”(不是”\0”),即*p-”0” 就得到*p這個字符的相應(yīng)數(shù)字,如”0”-”0”=0、”8”-”0”=8等。在程序的前面加#include<stdlib.h>,函數(shù)atol()的作用是將字符串p轉(zhuǎn)成長整型數(shù),它是一個庫函數(shù)。17 (1)g==s&&s==b或者g==b&&s==b或者g==s&&g==b(2)g+s*10+b*100(1)錯誤:t=s[k]; 正確:t+=s[k];(2)錯誤:*aver=&ave; 正確:*aver=ave;【參考答案】voidfun(char*ss){inti,n=0;char*p=ss;while(*p){n++;p++;}for(i=0;i<n;i++)if((ss[i]>=”a”&&ss[i]<=”z”)&&i%2!=0)/*將下標為奇數(shù)位置的字母轉(zhuǎn)換成大寫*/ss[i]=ss[i]-32;ss[i]=”\0”;}【考點分析】此題考察:奇數(shù)位的判定方法,通過對2求余推斷;小寫字母轉(zhuǎn)大寫字母,依據(jù)ASCⅡ碼,小寫字母減去32得到其對應(yīng)的大寫字母?!窘忸}思路】首先得到字符串的長度,然后利用循環(huán)構(gòu)造,推斷每一位是否為偶數(shù)位,字符是否為小寫,假設(shè)滿足條件,則將其輕換為大寫字母。18 (1)j%i==0 (2)flag==1 (3)aver/n(1)錯誤:s=p; 正確:p=s;(2)應(yīng)填p++;或++p;或p+=1;或p=p+1;(3)錯誤:a[i]=”0”;正確:a[i]=”\0”;或a[i]=0【參考答案】intfun(char*str,char*substr){inti,j=0;for(i=0;str[i+1]!=”\0”;i++)/*假設(shè)一個長度為2的子字符串在主字符串中消滅一次,則j+1,如此循環(huán)*/if(str[i]==substr[0]&&str[i+1]==substr[1])j++;returnj;/*返回子字符串在主字符串中消滅的次數(shù)*/}【考點分析】此題考察:遍歷字符串實現(xiàn)字符串比較運算。【解題思路】該題中substr只有兩個字符,所以可以用if語句直接進展推斷。留意if()中str數(shù)組的下標為i和i+1,即比較當前字符及其后面的一個字符是否分別與substr中的字符對應(yīng)一樣,假設(shè)都一樣則表示消滅了一次。19 (1)sum+=x[i] (2)avg*1000 (3)(avg+5)/10(1)錯誤:c[t]=“\0“; 正確:c[t]=”\0”;【參考答案】char*fun(char(*a)[81],intnum,char*max){inti=0;max=a[0];/*找出最長的一個字符串*/for(i=0;i<num;i++)if(strlen(max)<strlen(a[i]))max=a[i];returnmax; /*傳回最長字符串的地址*/}【考點分析】此題考察:指針型變量,明確指向數(shù)組的指針變量和指向指針的指針變量;假設(shè)一個指針變量存放的是另一個指針變量的地址,則稱這個指針變量為指向指針的指針變量。數(shù)組定義及引用?!窘忸}思路】解答此題之前,我們應(yīng)領(lǐng)先明白ss是一個指向一維數(shù)組的指針變量,max是指向指針變量的指針變量,所以引用時要留意加上*。我們不行能只用max,由于ss[0]是一個數(shù)組地址而不是一個指針的地址。20 (1)n>0 (2)n%10+”0” (3)str[i]=”\0”錯誤:sum=1; 正確:sum=0;(2)錯誤:scanf(“%d“,a[i][j]);正確:scanf(“%d“,&a[i][j]);【參考答案】voidfun(charp1[],charp2[]){inti,j;for(i=0;p1[i]!=”\0”;i++);/*救出的i為p1字符串的總長度,包括完畢標記位*/for(j=0;p2[j]!=”\0”;j++)p1[i++]=p2[j];/*將p2字符串連在p1字符串后面*/p1[i]=”\0”;/*在字符串最終加上完畢標記符*/}【考點分析】此題考察:不使用字符串函數(shù)實現(xiàn)字符串連接操作,通過for循環(huán)語句來完成,不要忘了最終需要加上字符串完畢標識”\0”?!窘忸}思路】此題用兩個循環(huán),第1個循環(huán)的作用是將i連到第1個字符串的末尾。第2個循環(huán)的作用是將第2個字符串的字符連到第1個字符串的末尾。21 (1)tt[i]<=”Z” (2)tt[i]+=32 (3)tt錯誤:a=Null; 正確:a=NULL;(2)錯誤:if(r==p){r++;p++;} 正確:if(*r==*p){r++;p++;}【參考答案】intfun(char*s,intnum){chart;inti,j;for(i=1;i<num-2;i++)/*下標值從1開頭,用循環(huán)依次取得字符串中的字符*/for(j=i+1;j<num-1;j++)/*將字符與其后的每個字符比較*/if(s[i]>s[j])/*假設(shè)后面字符的ASCII碼值小于該字符的ASCII碼值*/{t=s[i];/*則交換這兩個字符*/s[i]=s[j];s[j]=t;}}【考點分析】此題考察:if語句,主要是依據(jù)題意確定條件表達式;for循環(huán)語句,完成取得字符串中的字符;通過交換運算,對兩個字符進展交換操作,需要借助第三變量。22 (1)“%ld“,&n (2)n=-n; (3)“%ld“,n(1)錯誤:|| 正確:&&(2)錯誤:tt[i]+=32 正確:tt[i]-=32;【參考答案】voidfun(int*a,int*b){inti,j;for(j=0;j<M;j++)b[j]=0; /*數(shù)組b初始化為0*/for(i=0;i<N;i++)if(a[i]>=100)b[10]++;/*假設(shè)年齡大于等于100,b[10]自增1*/elseb[a[i]/10]++;/*假設(shè)年齡小于100,則將其分別統(tǒng)計到b[a[i]/10]中*/}【考點分析】此題考察:數(shù)組元素賦初值;if……else句。【解題思路】此題是一個分段函數(shù)的問題,用兩個循環(huán)來完成。第1個循環(huán)的作用是使b中的全部元素值都為0,這個循環(huán)不能省略,由于假設(shè)未對b中的元素賦初值,則它們的值是不行推測的。第2個循環(huán)的作用是分別統(tǒng)計a中各年齡段的人數(shù)當a[i] 100時,按題意要將其統(tǒng)計到b[10]中else的作用是假設(shè)年齡小于100,則將其分別統(tǒng)計到b[a[i]/10]中由運算優(yōu)先級可知,先進展a[i]/10的運算,所得結(jié)果作為b的下標假設(shè)a[i]為0至9時,a[i]/10的值為0,且0至9歲的人數(shù)正好要存入b[0]中。假設(shè)a[i]為10至19歲時,a[i]/10的值為1,且10至19歲的人數(shù)正好要存入b[1]中,依此類推。23 (1)break (2)”\0” (3)*p++錯誤:*r=t; 正確:r=t;(2)應(yīng)填:r=t;或r=&t[0];【參考答案】voidfun(char(*s)[N],char*b){inti,j,k=0;for(i=0;i<N;i++)/*按列的挨次依次放到一個字符串中*/for(j=0;j<M;j++)b[k++]=s[j][i];b[k]=”\0”;}【考點分析】此題考察:二維數(shù)組,定義及引用?!窘忸}思路】看到程序后,我們很簡潔便能想到用循環(huán)嵌套的方法,此題中按列的挨次依次放到一個字符串中,所以列標變化慢,行標變化快。留意,其中第1個循環(huán)條件為i<N(即列),第2個循環(huán)的條件為j<M(即行),這是由于在循環(huán)的嵌套中越在內(nèi)層,循環(huán)變化越快。另外,在編寫程序時留意是s[j][i]而非s[i][j]。24 (1)disc<0 (2)(-b+sqrt(disc))/(2*a) (3)(-b-sqrt(disc))/(2*a)(1)錯誤:t=0; 正確:*t=0; (2)錯誤:if(d%2==0) 正確:if(d%2!=0)【參考答案】fun(inta[][M]){inti,j,max=a[0][0];for(i=0;i<2;i++)for(j=0;j<M;j++)if(max<a[i][j])max=a[i][j];/*求出二維數(shù)組的最大值*/returnmax;}【考點分析】此題考察:二維數(shù)組,定義及引用,逐行查找方法。【解題思路】對于此類求最大值或最小值的問題,我們可以承受逐個比較的方式。要求對數(shù)組中的全部元素進展遍歷,并從中找出最大值或最小值,要留意一開頭應(yīng)使max存放數(shù)組中的第一個元素的值,可按逐行查找也可按逐列查找的方式,此題承受的是逐行查找的方式,即行下標在外層循環(huán),列下標在內(nèi)層循環(huán),由于在循環(huán)的嵌套中越在內(nèi)層循環(huán),循環(huán)變化就越快。 (1)strlen(str1)<strlen(str2) (2)*p2 (3)str1(1)錯誤:voidfun(inta,b) 正確:voidfun(int*a,int*b)(2)錯誤:t=b;b=a;a=t; 正確:t=*b;*b=*a;*a=t;【參考答案】intfun(inta[][N]){inti,j;for(i=0;i<N;i++)for(j=0;j<=i;j++)a[i][j]=0;/*將數(shù)組左下半三角元素中的值全部置成0*/}【考點分析】此題考察:for循環(huán)嵌套語句和二維數(shù)組元素的引用?!窘忸}思路】此題旨在考察掌握數(shù)組中左下半三角元素的算法,也就是兩個千篇一律的循環(huán)語句,期望學(xué)習者能夠把握消化 (1)std[3]、std[]或*std (2)PERSON (3)std(1)錯誤:n=*p-”o” 正確:n=*p-”0”(2)錯誤:n=n*7+*p-”o” 正確:n=n*8+*p-”0”【參考答案】doublefun(doublex[10]){doublex1=0.0,s=0.0;inti;for(i=0;i<10;i++)x1=x1+x[i];x1=x1/10; /*求10個數(shù)的平均值*/for(i=0;i<10;i++)s=s+(x[i]-x1)*(x[i]-x1);returnsqrt(s/10);/*求10個數(shù)的方差*/}【考點分析】此題考察:變量定義數(shù)據(jù)類型及初始化;return語句實現(xiàn)函數(shù)值返回;sqrt應(yīng)用?!窘忸}思路】這是一道算式表達題,程序中用第1個循環(huán)來完成求10個數(shù)的總和,接著再用x1=x1/10來求出平均值。27 (1)1 (2)s[k]或*(s+k) (3)c錯誤:fun(char*pstr[6]) 正確:voidfun(char*pstr[6])錯誤:if(strcmp(*(pstr+i),pstr+j)>0) 正確:if(strcmp(*(pstr+i),*(pstr+j))>0)(3)錯誤:*(pstr+i)=pstr+j; 正確:*(pstr+i)=*(pstr+j);【參考答案】fun(STUa[],STU*s){inti;*s=a[0];for(i=0;i<N;i++)/*找出成績最高的學(xué)生記錄*/if(s->s<a[i].s)*s=a[i];}【考點分析】此題考察:構(gòu)造體類型;指針型變量的應(yīng)用;for循環(huán)語句和if條件語句協(xié)作完成找出最大值?!窘忸}思路】此題的流程是這樣的,先使s指向第1個學(xué)生,我們的目的是找出分數(shù)最高的學(xué)生,所以if語句的條件是s->s<a[i].s。此外,做此題時,應(yīng)當嫻熟把握“指向運算符“和“成員運算符“的相關(guān)學(xué)問,題中“s->s“等價于“(*s).28 (1)(*a)++或++(*a)或*a+=1或*a=*a+1(2)(*b)++或++(*b)或*b+=1或*b=*b+1upper,lower(1)錯誤:p=j 正確:p=j; (2)錯誤:p=j; 正確:p=i;【參考答案】doublefun(STREC*h){doublemax=h->s;while(h!=NULL)/*通過循環(huán)找到最高分數(shù)*/{if(max<h->s)max=h->s;h=h->next;}returnmax;}【考點分析】此題考察:構(gòu)造體類型;指針型變量;鏈表學(xué)問,把握結(jié)點的表示方法?!窘忸}思路
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度專業(yè)職業(yè)測評與居間合同3篇
- 二零二五年度P2P出借平臺投資者教育與服務(wù)合同3篇
- 二零二五年度企業(yè)破產(chǎn)財產(chǎn)清算協(xié)議2篇
- 個性化條款:20249A文離婚合同案例分析版
- 二零二五版房屋征收拆遷補償協(xié)議書3篇
- 二零二五年度建筑工程招投標與合同質(zhì)量保證金管理協(xié)議書3篇
- 物業(yè)管理處與2025年度收費員服務(wù)協(xié)議3篇
- 2025年度門衛(wèi)人員崗位職責優(yōu)化聘用協(xié)議3篇
- 2025年度內(nèi)蒙古自治區(qū)農(nóng)業(yè)廢棄物資源化利用承包合同3篇
- 二零二五年度城鄉(xiāng)汽車租賃及售后服務(wù)合同4篇
- 2025年山東華魯海運有限公司招聘筆試參考題庫含答案解析
- 人教版物理八年級下冊 專項訓(xùn)練卷 (一)力、運動和力(含答案)
- 山東省房屋市政工程安全監(jiān)督機構(gòu)人員業(yè)務(wù)能力考試題庫-中(多選題)
- 《七律二首 送瘟神》教案- 2023-2024學(xué)年高教版(2023)中職語文職業(yè)模塊
- 2024年中考語文滿分作文6篇(含題目)
- 北師大版 2024-2025學(xué)年四年級數(shù)學(xué)上冊典型例題系列第三單元:行程問題“拓展型”專項練習(原卷版+解析)
- 2023年譯林版英語五年級下冊Units-1-2單元測試卷-含答案
- 施工管理中的文檔管理方法與要求
- DL∕T 547-2020 電力系統(tǒng)光纖通信運行管理規(guī)程
- 種子輪投資協(xié)議
- 執(zhí)行依據(jù)主文范文(通用4篇)
評論
0/150
提交評論