




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、計算機二級C語言上機(南開大學)100題程序填空題1 補充fun函數,fun函數的功能是求10的階乘。 n1 n-1 n=12 在函數fun的橫線上填寫若干表達式,使從鍵盤上輸入一個整數n,輸出數列是一種整數數列,其中每數等于前面兩數之和 n=o n=1 fun(n-1)+fun(n-2)3 補充函數fun(char*s),該函數的功能是把字符串中的內容逆置 s+is+n-1-i *(s+i)=(s+n-1-i) *(s+n-1-i)=t4 補充函數fun,他的功能是計算并輸出n(包括n)以內能被3或7整除的所有自然數的倒數之和 i=n i%3=0|i%7=0 1.0/i5 功能是求1/2的圓
2、面積,函數通過形參得到圓的半徑,函數返回1/2的圓面積 r r*r &x6 功能是計算并輸出下列級數的前N項合Sn,直到Sn大于q為止,q的值通過形參傳入 = n+ return s7 函數fun的功能是統計長整數n的各個位上出現數字1.2.3的次數,并通過外部(全局)變量c1.c2.c3返回主函數 n%10 break break8 補充main函數,功能是從鍵盤輸入一組整數,使用條件表達式找出最大的整數,當輸入的整數為0時結束 &numi maxnumi? numi!=09 給定程序的功能是分別統計字符串中大寫字母和小寫字母的個數 (*a)+ (*b)+ upper,lower10 補充m
3、ain函數,功能是從鍵盤輸入3個整數,然后找出最大的數并輸出。 max=a max=b max=c11 函數fun的功能是把形參s所指字符串中下標為奇數的字符右移到下一個奇數位置,最右邊被移出字符串的字符繞回放到第一個奇數位置,下標為偶數的字符不動 1 sk c12 補充fun函數,功能是字符串tt中的大寫字母都改為對應的小寫字母,其他的字符不變。 tti2)的素數的個數,素數的個數作為函數值返回 j=2 i j28 程序的功能是計算s= 1 s*i 0 s+fun(k)29 補充fun函數,該函數的功能是求不超過給定自然數的各偶數之和 0 i=2;i=x;i+=230 補充fun函數,功能是
4、把從主函數中輸入的由數字字符組成的字符串轉換成一個無符號長整數,并且倒序輸出。結果由主函數返回 -i si -o t*10+k31 補充fun函數,該函數的功能是把從主函數中輸入的字符串str2節(jié)在字符串str1后面 *(p1+i) *p2 *p2+32 補充fun函數,該函數的功能是求一維數組xN的平均值,并對所得結果進行四舍五入保留兩位小數。 sum+=xi avg*1000 (avg+5)/1033 函數fun的功能是將形參a所指數組中的前半部分元素中的值和后半部分元素中的值對換。形參n中存放數組中數據的個數,若n為奇數,則中間的元素不動 1 i ap+i34 補充fun函數,功能是分類
5、統計一個字符串中元音字母和其他字符的個數(不區(qū)分大小寫) bbi=0 bb5+ p+;35 str是全部由小寫字母字符和空格字符組成的字符串,由num傳入字符串的長度,請補充fun函數,功能是統計字符串str中的單詞數,結果由變量num傳回。每個單詞之間都由空格隔開,并且字符串str開始不存在空格 i=0&simax 147 補充fun函數,功能是從數組xx中找出個位和百位數字相等的所有無符號整數,結果保存在數組yy中,其個數由fun函數返回 xxi%10 bbn+=xxi n48 補充fun函數,功能勢必哈一個整數轉換成字符串,并倒序保存在字符數組str中 n0 n%10+0 stri=04
6、9 補充main函數,功能是求方程ax(平方)+bx+c=0的兩個實數根。方程的系數a,b,c從鍵盤輸入,如果判別式小于0,則要求從新輸入a,b,c的值 discy xz yz52.請補充main函數,該函數的功能是:先以只寫方式打開文件“out52.dat,再把字符串str中的字符保存到這個磁盤文件中. out52.dat,w fputc(ch,fp) fclose(fp)53.請補充函數fun,該函數的功能是求出以下分數序列的前n項和。和值通過函數值返回到main函數。 double double double54.請補充函數fun,該函數的功能是比較字符串str1和str2的大小,并返回
7、比較的結果。 *p1*p2 055.請補充fun函數,該函數的功能是:尋找兩個整數之間的所有素數(包括這兩個整數)把結果保存在數組bb中,函數返回素數的個數。 flag=1 j%i=0 flag=156.請補充main函數,該函數的功能是把文本文件B中的內容追加到文本文件A的內容之后。 & fputc(ch,fp1) fclose(fp)57.請補充main函數,該函數的功能是:計算并輸出下列多項式的值。 double j 1.0/t58.請補充main函數,該函數的功能是,將保存在磁盤文件中的10個學生的數據中的第1 3 5 7 9個學生的數據輸入計算機,并在屏幕上顯示出來。 2 i &st
8、udi59.請補充main函數,該函數的功能是,計算兩個自然數n和m(m10000)之間所有數的和。n和m從鍵盤輸入。 sum=0 sum+=n ld60.請補充fun函數,該函數的功能是把數組bb中的數按從大到小排列。數組的值及元素個數從主函數中輸入。 in ji bbj=bbj-1 break67 補充main函數,功能是把一個2維字符數組沒行字符串最大的字符拷貝到字符數組s中 p=str pi+ si=068 補充main函數,功能是從鍵盤輸入若干個字符放到一個字符數組中,當按回車鍵時結束輸入,最后輸出這個字符數組中的所有字符 break 0 *p+69 補充main函數,功能是從鍵盤輸
9、入兩個字符串分別保存在字符數組str1和str2種,用字符串str2替換字符串str1前面的所有字符 strlen(str1)strlen(str2) *p2 str170 給定程序功能是用冒泡法對6個字符串進行排序 *(pstr+j) pstrj p71 函數fun的功能是將形參指針所指結構體數組中的三個元素按num成員進行升序排列 std3 PERSON std72 補充main函數,功能是計算三個學生各科的平均分 N M bbi/N73 補充main函數,功能是輸出一個NXN矩陣,要求非對角線上的元素賦值0,對角線元素賦值1 bbij=0 1 j=n-1-i74 函數fun的功能是將形參
10、std所指結構體數組中年齡最大者的數據作為函數值返回,并在main函數中輸出 *std stdi.age 75 補充main函數,該函數的功能是求1到N的階乘的合 &n t*i s+t76 補充fun函數,功能是把字符串str中的字符按字符的ASCII碼降序排列,處理后的字符串仍然保存在原串中,字符串及其長度作為函數參數傳入 i sj=si77 補充main函數,功能是如果數組aa的前一個元素比后一個元素小,則把它保存在數組bb中并輸出 N-1 bbn+=aai i,bbi78 補充fun函數,功能是把字符的ASCII碼為偶數的字符從字符串str中刪除,結果仍然保存在字符串st
11、r中,字符串str從鍵盤輸入,頎長的作為參數傳入fun函數 void fun(char s,int n) j=0 sj=079 補充fun函數,功能是把數組aa中的偶數元素按原來的先后順序放在原數組后面 aai%2=0 ik80 補充main函數,功能是把一維數組中的元素逆置,結果仍然保存在原數組中 j=0,-i j+,i-81 函數fun的功能,計算N*N矩陣的主對角線元素和反向對角線元素之和,并返回值 sum=0 tii 182 補充main函數,打印出1到1000中滿足個位數字的立方等于其本身的所有數 i%10 g*g*g=i83 補充main函數,從鍵盤輸入一個字符串及一個指定字符,把
12、這個字符及其后面的所有字符全部刪除,結果仍保存在原串中 break; i+ 084 補充main函數,輸出方程組A+B=52,A+2B=60 的一組正整數解 i+j=52&i+2j=60 i,j85 函數fun功能,有N*N陣,以主對角線為對稱線,對稱元素相加并將結果存放在左下三角元素中,右上三角元素置為0 N tij tji86 函數fun功能,將N*N陣中元素的值按列右移一個位置,右邊被移出陣的元素繞回左邊 N N-1 087 補充main函數,打印出滿足個位上的數字,十位上的數字的百位上的數字都相同的所有三位數 g=s&s=b g+s*10+b*10088 補充fun函數,返回字符數組中
13、指定字符的個數,指定字符從鍵盤輸入 si si=ch return n89 從鍵盤輸入一組小寫字母,保存在字符數組str中。補充fun函數,把字符數組str中字符下標為奇數的小寫字母轉換成對應的大寫字母,結果留在原數組中 si!=0 32 i+90 人員的記錄由編號和出生年,月,日組成,N名人員的數據已在主函數中存入結構體數組std中且編號唯一。找出指定編號人員的數據,若不存在,返回空串 STU stdi.num stdi91 補充fun函數,求100(不包含100)以內能被2或3整除,但不能同時被2和3整除的自然數,存在bb中,返回bb元素的個數 i=1,j=0 bbj+=i return
14、j92 補充main函數,把字符串str中的字符向前移動一位,原來的第一個字符移到串尾,結果仍存在原串中 stri+1 stri=ch 93 補充fun函數,交換數組aa中最大和最小兩元素的位置,結果存在原數組中,其他元素位置不變,aa中沒有相同元素 aamaxaai aamax=aamin94 補充fun函數,刪除字符數組中比指定字符小的字符,指定字符從鍵盤輸入,結果存在原數組中 i+ sj+=si sj=095 給定程序的功能是計算S=f(-n)+f(-n+1)+f(0)+f(1)+f(2)+f(n)的值 0.0 n s 96 補充fun函數,從鍵盤中輸入一個下標n,把數組aa中比元素aa
15、n小的元素放在左邊,比他大的放在右邊,仍存在原數組中 aak+=t ij 97 給定程序的功能是將未在字符串s中出現,而在t中出現的字符,形成一個新的字符串放在u中,按原順序排序,去掉重復字符 break ti uu198 補充fun函數,把str中的字母轉換成緊接著的下一個字母,如果原來的字母為z或Z則相應轉換成aA結果仍存在原數組中 si!=0 25 1 99 補充main函數,求1到100(不包括100)以內所有素數的平均值 j%i=0 flag=1 aver/n100 補充fun函數,把字符下標能被2或3整除的字符從字符串str中刪除,把剩余的字符重新保存在字符串str中,串從鍵盤輸入
16、 k=0 (i%2=0)|(i%3=0) sk=0改錯題第一題: 下列給定程序的功能是:讀入一個整數k(2k10000),打印它的所有質因子(即所有為素數的因子)。例如,若輸入整數2310,則應輸出:2、3、5、7、11。 第1處:IsPrime(int n);應改為IsPrime(int n)第2處:if!(n%i)應改為if(!(n%i)第二題 下列給定程序中,函數fun的功能是:逐個比較a、b兩個字符串對應位置中的字符,把ASCII值大或相等的字符依次存放在到c數組中,形成一個新的字符串。例如,若a中的字符串為aBCDeFgH,b中的字符串為:ABcd,則c中的字符串應為:aBcdeFg
17、H。 第1處:int k=1;應改為int k=0;第2處:while(*p!=*q)應改為while(*p|*q)第三題 下列給定程序中,函數fun的功能是:依次取出字符串中所有數字字符,形成新的字符串,并取代原字符串。 第1處:sj=si;應改為sj+=si;第2處:sj=0;應改為sj=0;第四題 下列給定程序中,fun函數的功能是:分別統計字符串中大寫字母和小寫字母的個數。例如,給字符串s輸入:AaaaBBb123CCccccd,則應輸出結果:upper = 5,lower = 9。 第1處:void fun(char*s,int a,int b)應改為void fun(char*s,
18、int*a,int*b)第2處:a+;應改為(*a)+;第3處:b+;應改為(*b)+;第五題 假定整數數列中的數不重復,并存放在數組中。下列給定程序中,函數fun的功能是:刪除數列中值為x的元素,同時將其他元素前移。n中存放的是數列中元素的個數。 第1處:ai+1=ai;應改為ai=ai+1;第六題下列給定程序中,函數fun的功能是:根據整型形參m的值,計算如下公式的值。 1 1 1t=1- - - - 22 3 3 mm例如,若m中的值為5,則應輸出:0.536389。第1處:for(i=2;im;i+)應改為for(i=2;i=m;i+)第2處:y-=1/(i*i);應改為y-=1.0/
19、(i*i);第七題 下列給定程序中函數fun的功能是:用選擇法對數組中的n個元素按從小到大的順序進行排序。 第1處:p=j應改為p=j;第2處:p=i;應改為p=j;第八題 下列給定程序中,函數fun的功能是:在字符串str中找出ASCII碼值最大的字符,將其放在第一個位置上;并將該字符前的原字符向后順序移動。例如,調用fun函數之前給字符串輸入:ABCDeFGH,調用后字符串中的內容為eABCDFGH。 第1處:void fun(char*p);應改為void fun(char*p)第2處:p=q+i;應改為q=p+i;第九題 下列給定程序中,函數fun的功能是:從n個學生的成績中統計出低于
20、平均分的學生人數,此人數由函數值返回,平均分存放在形參aver所指的存儲單元中。例如,若輸入8名學生的成績: 80.5 60 72 90.5 98 51.5 88 64 則低于平均分的學生人數為4(平均分為:75.562500)。 第1處:t=sk;應改為t+=sk;第2處:*aver=&ave;應改為*aver=ave;第十題 下列給定程序中,函數fun的功能是:將s所指字符串中出現的t1所指子串全部替換成t2所指子字符串,所形成的新串放在w所指的數組中。在此處,要求t1和t2所指字符串的長度相同。例如,當s所指字符串中的內容為abcdabfab,t1所指子串中的內容為ab,t2所指子串中的
21、內容為99時,結果,在w所指的數組中的內容應為99cd99f99。 第1處:void fun(char*s,*t1,*t2,*w)應改為void fun(char*s,char*t1,char*t2,char*w)第2處:while(r)應改為while(*r)第十一題 下列給定程序中,函數fun的功能是:將一個由八進制數字字符組成的字符串轉換為與其面值相等的十進制整數。規(guī)定輸入的字符串最多只能包含5位8進制數字。例如,若輸入77777,則輸出將是32767。 第1處:n=*p-o;應改為n=*p-0;第2處:n=n*7+*p-o;應改為n=n*8+*p-0;第十二題 下列給定程序中函數fun
22、的功能是:求出在字符串中最后一次出現的子字符串的地址,通過函數值返回,在主函數中輸出從此地址開始的字符串;若未找到,則函數值為NULL。 例如,當字符串中的內容為abcdabfabcdx,t中的內容為ab時,輸出結果應是:abcdx.。當字符串中的內容為abcdabfabcdx,t中的內容為abd時,則程序輸出未找到信息:not be found!。 第1處:a=NuLL;應改為a=NULL;第2處:if(r=p)應改為if(*r=*p)第十三題 下列給定程序中,fun函數的功能是:根據形參m,計算如下公式的值。 1 1 1 1 t=1+ + + 2 3 4 m 例如,若輸入5,則應輸出2.2
23、83333。 第1處:t+=1.0/k;應改為t+=1.0/i;第2處:應填return t;第十四題 下列給定程序中,函數fun和funx的功能是:用二分法求方程2x3-4x2+3x-6=0的一個根,并要求絕對誤差不超過0.001。例如,若給m輸入-100,給n輸入90,則函數求得的一個根值為2.000。 第1處:int r;應改為double r;第2處:while(fabs(n-m)0.001)第十五題 下列給定程序中,函數fun的功能是:判斷字符ch是否與str所指串中的某個字符相同;若相同,則什么也不做,若不同,則將其插在串的最后。 第1處:void fun(char str,cha
24、r ch)應改為void fun(char*str,char ch)第2處:if(*str=ch)應改為if(*str=0)第3處:str1=0;應改為str1=0;或str1=0;第十六題 下列給定程序中的函數Creatlink的功能是:創(chuàng)建帶頭結點的單向鏈表,并為各結點數據域賦0到m-1的值。 第1處:p-next=NULL;應改為p=s;第2處:s-data=rand()%m;應改為s-data=rand()%(m-1);第3處:return p;應改為return h;第17題 下列給定程序中,函數fun的功能是:計算并輸出k以內最大的10個能被13或17整除的自然數之和。k的值由主函
25、數傳入,若k的值為500,則函數值為4622。 第1處:if(k%13=0)|(k%17=0)應改為if(k%13=0)|(k%17=0)第2處:應填弟十八題 下列給定程序中,函數fun的功能是:實現兩個整數的交換。例如給a和b分別輸入60和65,輸出為:a=65 b=60 第1處:void fun(int a,int b)應改為void fun(int*a,int*b)第2處:t=b;b=a;a=t;應改為t=*b;*b=*a;*a=t;第十九題 下列給定程序中函數fun的功能是:從低位開始取出長整型變量s中偶數位上的數,依次構成一個新數放在t中。例如,當s中的數為7654321時,t中的數
26、為642。 第1處:void fun(long s,long t)應改為void fun(long s,long*t)第2處:while(s0)第二十題 N個有序整數數列已放在一維數組中,給定下列程序中,函數fun的功能是:利用折半查找算法查找整數m在數組中的位置。若找到,則返回其下標值;反之,則返回-1。 折半查找的基本算法是:每次查找前先確定數組中待查的范圍:low和high(lowhigh,查找結束。 第1處:void fun(int a,int m)應改為int fun(int a,int m)第2處:if(m=amid)應改為if(mamid)第21題 下列給定程序是建立一個帶頭結點
27、的單向鏈表,并用隨機函數為各結點數據域賦值。函數fun的作用是求出單向鏈表結點(不包括頭結點)數據域中的最大值,并且作為函數值返回。 第1處:p=h;應改為p=h-next;第2處:p=h-next;應改為p=p-next;第22題下列給定程序中,函數fun的功能是:根據整型形參m,計算如下公式的值。 1 1 1 1y=1+ + + + + 2233 44mm例如,若m中的值為5,則應輸出:1.463611。第1處:for(i=2;im;i+)應改為for(i=2;i1)例如,當給n輸入5時,函數值為18;當給n輸入3時,函數值為14。第1處:int fun(n)應改為int fun(int
28、n)第2處:if(n=1)應改為if(n=1)第24題 下列給定程序中,函數fun的功能是:從s所指字符串中,找出t所指子串的個數作為函數值返回。例如,當s所指字符串中的內容為abcdabfab,t所指字符串的內容為ab,則函數返回整數3。 第1處:if(r=p)應改為if(*r=*p)第2處:if(r=0)應改為if(*r=0)第25題下列給定程序中函數fun的功能是:計算n!。例如,給n輸入5,則輸出120.000000。第1處:if n=0應改為if(n=0)第2處:result=n-;應改為result*=n-;第26題 下列給定程序中,函數fun的功能是:先從鍵盤上輸入一個3行3列矩
29、陣的各個元素的值,然后輸出主對角線元素之和。 第1處:應填sum=0;第2處:scanf(%d,aij);應改為scanf(%d,&aij);第27題下列給定程序中,函數fun的功能是:根據以下公式求值,并作為函數值返回。 p 1 1 21 2 3 1 324 =1+ + + + 2 3 3 53 5 7 3 579例如,給指定精度的變量eps輸入0.0005時,應當輸出Pi=3.140578。第1處:t=0;應改為t=1.0;第2處:while(t=eps)第28題 下列給定程序中,函數fun的功能是:在字符串的最前端加入n個*號,形成新串,并且覆蓋原串。注意:字符串的長度最長允許為79。
30、第1處:s=p;應改為p=s;第2處:應填p+;或+p;或p+=1;或p=p+1第3處:ai=0;應改為ai=0;或ai=0;第29題 下列給定程序中,函數fun的功能是:求出兩個非零正整數的最大公約數,并作為函數值返回。例如,若給num1和num2分別輸入49和21,則輸出的最大公約數為7;若給num1和num2分別輸入27和81,則輸出的最大公約數為27。 第1處:b=a;應改為a=b;第2處:return(a);應改為return(b);第30題 下列給定程序中函數fun的功能是:計算正整數num的各位上的數字之積。例如,若輸入252,則輸出應該是20。若輸入202,則輸出應該是0。 第
31、1處:long k;應改為long k=1;第2處:num=10;應改為num/=10;第31題 下列給定程序中,函數fun的功能是:將字符串tt中的小寫字母都改為對應的大寫字母,其他字符不變。例如,若輸入“Ab,cD”則輸出“AB,CD”。 第1處:if(tti=a)|(tti=a)&(tti=z)第2處:tti+=32;應改為tti-=32;第32題 下列給定程序中,函數fun的功能是:按順序給s所指數組中的元素賦予從2開始的偶數,然后再按順序對每五個元素求一個平均值,并將這些值依次存放在w所指的數組中。若s所指數組中元素的個數不是5的倍數,多余部分忽略不計。例如,s所指數組有14個元素,
32、則只對前10個元素進行處理,不對最后的4個元素求平均值。 第1處:if(i+1%5=0)應改為if(i+1)%5=0)第33題 下列給定程序中,函數fun的功能是:將s所指字符串中的字母轉換為按字母序列的后續(xù)字母(但Z轉換A,z轉換為a),其他字符不變。 第1處:while(*s!=)應改為while(*s)或while(*s!=0)或while(*s!=0)第2處:(*s)+;應改為s+;第34題 下列給定程序中函數fun的功能是:將長整型數中每一位上為奇數的數依次取出,構成一個新數放在t中。高位仍在高位,低位仍在低位。例如,當s中的數為87653142時,t中的數為7531。 第1處:t=
33、0;應改為*t=0;第2處:if(d%2=0)應改為if(d%2!=0)第35題 下列給定程序中,fun函數的功能是:將p所指字符串中每個單詞的最后一個字母改成大寫(這里的“單詞”是指由空格隔開的字符串)。 例如,若輸入:I am a student to take the examination. 則應輸出:I aM A studenT tO takE thE examination. 第1處:if(p=)應改為if(*p=)第2處:*p=toupper(*(p-1);應改為*(p-1)=toupper(*(p-1);第36題 下列給定程序中,函數fun的功能是:求三個數的最小公倍數。例如,
34、給變量x1、x2、x3別輸入15 11 2,則輸出結果應當是330。第1處:j=1;應改為j=0;第2處:while(t!=0&m!=0&n!=0)應改為while(t!=0|m!=0|n!=0)第37題 下列給定程序中,函數fun的功能是:計算s所指字符串中含有t所指字符串的數目,并作為函數值返回。第1處:*r=t;應改為r=t;或r=&t0;第2處:應填r=t;或r=&t0;第38題 下列給定程序中,函數fun的功能是:通過某種方式實現兩個變量值的交換,規(guī)定不允許增加語句和表達式。例如變量a中的值原為8,b中的值原為3,程序運行后a中的值為3,b中的值為8。第1處:t=x;x=y;應改為t
35、=*x;*x=y;第2處:return(y);應改為return(t);或return t;第39題 下列給定程序中,函數fun的功能是:將s所指字符串的正序和反序進行連接,形成一個新串放在t所指的數組中。例如,當s所指字符串為ABCD時,則t所指字符串中的內容應為ABCDDCBA。第1處:void fun(char s,char t)應改為void fun(char*s,char*t)第2處:t2*d-1=0;應改為t2*d=0;或td+i=0;或t2*d=0;或td+i=0;第40題下列給定程序中fun函數的功能是:將n個無序整數從小到大排序。第1處:for(i=j+1;in-1;i+)應
36、改為for(i=j+1;inext)應改為while(p!=NULL)第2處:p=h-next;應改為p=p-next;第42題 下列給定程序中,函數fun的功能是:將字符串s中位于奇數位置的字符或ASCII碼為偶數的字符依次放入字符串t中。例如,字符串中的數據為AABBCCDDEEFF,則輸出應當是ABBCDDEFF。第1處:if(i%2&si%2=0)應改為if(i%2|si%2=0)或if(i%2!=0|si%2=0)第2處:ti=0;應改為tj=0;或tj=0;第43題 下列給定程序中,函數fun的功能是:找出100至n(不大于1000)之間三個位上的數字都相等的所有整數,把這些整數放
37、在s所指數組中,個數作為函數值返回。第1處:k=n;應改為k=i;第2處:b=k/10;應改為b=k%10;第44題 下列給出程序中,函數fun的功能是:根據形參m的值(2m9),在m行m列的二維數中存放如下所示的數據,由main()函數輸出。 例如,若輸入2 |若輸入4 則輸出: |則輸出: 1 2 | 1 2 43 2 4 | 2 4 68 | 3 6 912 | 4 8 1216第1處:fun(int*a,int m)應改為void fun(int(*a)M,int m)第2處:ajk=k*j;應改為ajk=(k+1)*(j+1);第45題 下列給定程序中,函數fun的功能是:將s所指字
38、符串中最后一次出現的t1所指子串替換成t2所指子串,所形成的新串放在w所指的數據中。在此處,要求t1和t2所指字符串的長度相同。例如,當s所指字符串中的內容為abcdabfabc,t1所指子串中的內容為ab,t2所指子串中的內容為99時,結果,在w所指的數組中的內容為abcdabf99c。 第1處:void fun(char*s,t1,t2,w)應改為void fun(char*s,char*t1,char*t2,char*w)第2處:while(w)應改為while(*w)第46題 已知一個數列從第0項開始的前三項分別為0、0、1,以后的各項都是其相鄰的前三項之和。下列給定程序中,函數fun
39、的功能是:計算并輸出該數列前n項的平方根之和sum。n的值通過形參傳入。例如,當n=10時,程序輸出結果應為23.197745。第1處:fun(int n)應改為double fun(int n)第2處:return sum應改為return sum;第47題 下列給定程序中,函數fun的功能是:求出數組中最大數和次最大數,并把最大數和a0中的數對調、次最大數和a1中的數對調第1處:void fun(int*a,int n);應改為void fun(int*a,int n)第2處:m=0;應改為m=i;第48題 下列給定程序中,函數fun的功能是:從N個字符串中找出最長的那個串,并將其地址作為
40、函數值返回。各字符串在主函數中輸入,并放入一個字符串數組中第1處:fun(char(*sq)N)應改為char*fun(char(*sq)M)第2處:return sq;應改為return sp;第49題 下列給定程序中,函數fun的功能是:對N名學生的學習成績,按從高到低的順序找出前m(m10)名學生來,并將這些學生數據存放在一個動態(tài)分配的連續(xù)存儲區(qū)中,此存儲區(qū)的首 址作為函數值返回。第1處:*t=malloc(sizeof(STU);應改為t=(STU*)malloc(sizeof(STU)*m);第2處:tk.num=bj.num;應改為strcpy(tk.num,bj.num);第50
41、題 下列給定程序中函數fun的功能是:先將在字符串中s中的字符按逆序存放到t串中,然后把s中的字符按正序連接到t串的后面。例如:s中的字符串為ABCDE時,則t中的字符串應為EDCBAABCDE。第1處:ti=ss1-i;應改為ti=ss1-i-1;或ti=ss1-1-i;51題目: 下列給定程序中,函數fun的功能是:將m(1=m 0)修改為if(strcmp(*(pstr + i), *(pstr + j) 0) 程序第三處改錯處將*(pstr + i) = pstr + j;修改為*(pstr + i) = *(pstr + j);57題目: 下列給定程序中,函數fun的功能是:首先把b
42、所指字符串中的字符按逆序存放,然后將a所指字符串中的字符和b所指的字符串中的字符,按排列的順序交叉合并到c所指數組中,過長的剩余字符接在c所指數組的尾部。例如,當a所指字符串中的內容為abcdefg,b所指字符串中的內容為1234時,c所指數組中內容應該為a4b3c2d1efg;而當a所指字符串中的內容為1234,b所指字符串中的內容為abcdefg時,c所指數組中的內容應該為1g2f3e4dcba。第一處改錯處將while ( i j )修改為while ( i j ) 第二處改錯處將c= 0;修改為*c= 0;58題目: 下列給定程序中,函數fun的功能是:先將在字符串s中的字符按正序存放
43、到t串中,然后把s中的字符按逆序連接到t串的后面。例如:當s中的字符串為ABCDE時,則t中的字符串應為ABCDEEDCBA。第一處改錯處將for( i=0; i=s1; i +)修改為for( i=0; is1; i +) 第二處改錯處將ts1=0;修改為t2*s1=0; 59題目: 下列給定程序中,函數fun的功能是:統計字符串中各元音字母(即:A、E、I、O、U)的個數。注意:字母不分大、小寫。例如:若輸入THIs is a boot,則輸出應該是1、0、2、2、0。第一處改錯處將fun ( char *s, int num5 )修改為void fun ( char *s, int nu
44、m5 )第二處改錯處將numi=0;修改為numk=0;第三處改錯處將switch ( s )修改為switch ( *s )60題目: 下列給定程序中,函數fun的功能是:找出一個大于給定整數m且緊跟m的素數,并作為函數值返回。第一處改錯處將if (i % k !=0)修改為if (i % k =0)第二處改錯處將if (k = i)61題目: 下列給定程序中,函數fun的功能是:根據整型形參m,計算如下公式的值。 y=1/(100*100) + 1/(200*200) + 1/(300*300) + + 1/(m*m) 例如,若m=2000,則應輸出:0.000160。 第一處改錯處將fu
45、n ( int m )修改為double fun ( int m )第二處改錯處將for(i = 100,i= m,i += 100)修改為for( i = 100;i = m;i += 100 ) 62題目: 下列給定程序中,函數fun的功能是:計算并輸出high以內最大的10個素數之和。High由主函數傳給fun函數。若high的值為100,則函數的值為732。將break修改為break; 63題目: 下列給定程序中,函數fun的功能是:將字符串p中的所有字符復制到字符串b中,要求每復制三個字符之后插入一個空格。例如,在調用fun函數之前給字符串a輸入ABCDEFGHIJK,調用函數之后
46、,字符串b中的內容則為ABC DEF GHI JK。第一處改錯處將i=1;修改為i=0; 第二處改錯處將while( i3|*p )修改為while( i0.00001)修改為if(fabs(x1-x0)=0.00001 )68題目: 下列給定程序中,函數fun的功能是:根據輸入的三個邊長(整型值),判斷能否構成三角形;構成的是等邊三角形,還是等腰三角形。若能構成等邊三角形函數返回3,若能構成等腰三角形函數返回2,若能構成三角形函數返回1,若不能構成三角形函數返回0。第一處改錯處將return 1;修改為return 3; 第二處改錯處將return 3; 修改為return 1; 69題目:
47、 下列給定程序的功能是:讀入一個英文文本行,將其中每個單詞的第一個字母改成大寫,然后輸出此文本行(這里的單詞是指由空格隔開的字符串)。例如,若輸入I am a student to take the examination,則應輸出I Am A Student To Take The Examination。唯一一處改錯處將upfst ( char p )修改為void upfst ( char *p ) 70題目: 下列給定程序中,函數fun的功能是:從整數1至55之間,選出能被3整除、且有一位上的數是5的那些數,并把這些數放在b所指的數組中,這些數的個數作為函數值返回。規(guī)定,函數中a1放個
48、位數,a2放十位數。程序第一處改錯處將fun( int *b )修改為int fun( int *b )程序第二處改錯處將for(k=10; k=55; k+)修改為for(k=1; k55; k+)程序第三處改錯處將return k;修改為return i;71題目: 下列給定程序中,函數fun的功能是:求k!(k 0修改為if (k 0)程序第二處改錯處將if ( k=0 )修改為if ( k=0 ) 72題目: 下列給定程序中,函數fun的功能是:統計子字符串substr在字符串str中出現的次數。例如,若字符串為啊aaslkaaas,子字符串為as,則應輸出2。程序第一處改錯處將fun
49、(char *str,char *substr)修改為int fun(char *str,char *substr)程序第二處改錯處將for(i = 0, stri, i+)修改為for(i = 0; stri; i+) 73題目: 下列給定程序中,函數fun的功能是:傳入一個整數m,計算如下公式的值。 t = 1 - 1/2 - 1/3 - - 1/m 例如,若輸入5,則應輸出-0.283333。 改錯處將t=1.0-1/i;修改為t-=1.0/i; 填寫return t;74題目: 下列給定程序中,函數fun的功能是:利用插入排序法對字符串中的字符按從小大到大的順序進行排序。插入法的基本算
50、法是:先對字符串中的頭兩個元素進行排序。然后把第三個字符插入到前兩個字符中,插入后前三個字符依然有序;再把第四個字符插入到第三個字符中,。待排序的字符串已在主函數中賦予。唯一一處改錯處將c=aai;修改為ch=aai; 75題目: 下列給定程序中,函數fun的功能是:輸出M行M列正方陣,然后求兩條對角線上各元素之和,返回此和數。 程序第一處改錯處將int fun(int m, int xx)修改為int fun(int m, int xxM)第二處改錯處將printf(%4f,xxij);修改為printf(%4d,xxij); 76題目: 下列給定程序中,函數fun的功能是:將長整型數中的每
51、一位上為偶數的數依次取出,構成一個新數放在t中。高位仍在高位,低位仍在低位。例如,當s中的數為87653142時,t中的數為8642。第一處改錯處將int d;修改為long d; 第二處改錯處將s =10;修改為s/=10;77題目: 下列給定程序中,函數fun的功能是:將字符串中的內容按逆序輸出,但不改變字符串中的內容。例如,若字符串為abcd,則應輸出dcba。 唯一的改錯處將fun(char a) 修改為void fun(char *a) 78題目: 下列給定程序中,函數fun的功能是:判斷一個整數m是否為素數,若是返回1,否則返回0。在main()函數中,若fun返回1,則輸出YES
52、,若fun返回0,則輸出NO!。 程序第一處改錯處將k+修改為k+; 程序第二處改錯處將if(m=k)修改為if(m=k) 79題目: 下列給定程序中,函數fun的功能是:刪除字符串s中的所有空白字符(包括Tab字符、回車符及換行符)。輸入字符串時用#結束輸入。 唯一一處改錯處將ct=0;修改為ct=0; 80題目: 下列給定程序中,函數fun的功能是:求出以下分數列的前n項之和。 2/1,3/2,5/3,8/5,13/8,21/13, 和值通過函數值返回main函數。例如,若n=5,則應輸出8.391667。 程序第一處改錯處將fun (int n )修改為double fun (int n
53、 ) 程序第二處改錯處將s=s+(Double)a/b;修改為s=s+(double)a/b; 81題目: 下列給定程序中,函數fun的功能是:根據整型參數n,計算如下公式的值。 A(1)1=1,A(2)=1/(1+A(1),A(3)=1/(1+A(2),A(n)=1/(1+A(n-1) 例如,若n=10,則應輸出0.617977。程序第一處改錯處將int fun(int n)修改為float fun(int n) 第二處改錯處將for(i=2;in;i+)修改為for(i=2;i=n;i+) 82題目: 下列給定程序中,函數fun的功能是:計算整數n的階乘。 請改正modi.c程序函數fun
54、中的錯誤或在橫線處填上適當的內容并把橫線刪除,使它能得出正確的結果。 程序第一處改錯處將result *=-n; 修改為result *=n-; 程序第二處是填空處,填寫result83題目: 下列給定程序中,函數fun的功能是:交換主函數中兩個變量的值。例如:若變量a中的值原為8,b中的值為3,則程序運行后a中的值為3,b中的值為8。 序第一處改錯處將int fun(int x,int y)修改為int fun(int *x,int *y) 第二處改錯處將t=x; x=y; y=t;修改為t=*x; *x=*y; *y=t;84題目: 下列給定程序中,函數fun的功能是:將十進制正整數m轉換
55、為k(2=k=9)進制數,并按位輸出。例如,若輸入8和2,則應輸出1000(即十進制數8轉換成二進制表示是1000)。 程序第一處改錯處將fun(int m,int k)修改為void fun(int m,int k) 程序第二處改錯處將aai=m/k;修改為aai=m%k;序第三處改錯處將printf(%d, aai );修改為printf(%d, aai-1 );85題目: 下列給定程序中,函數fun的功能是:從字符串s中刪除所有小寫字母c。 序第一處改錯處將sj=si;修改為sj+=si; 第二處改錯處將si=0;修改為sj=0;86題目: 下列給定程序中,函數fun的功能是:把主函數中
56、輸入的3個數,最大的放在a中,最小的放在c中。例如,輸入的數為:55 12 34,輸出結果應當是:a=55.0,b=34.0,c=12.0。 第一處改錯處將k=*p;*p=*q;*q=k;修改為*k=*p; *p=*q; *q=*k; 第二處改錯處將if ( *s *p) 87題目: 下列給定程序中,函數fun的功能是:給一維數組a輸入任意4個整數,并按如下的規(guī)律輸出。例如輸入1、2、3、4,程序運行后將輸出以下方陣: 4 1 2 3 3 4 1 2 2 3 4 1 1 2 3 4第一處改錯處將int fun(int a)修改為void fun(int aM) 第二處改錯處將aj=aj+1;修
57、改為aj=aj-1;88題目: 下列給定程序中,函數fun的功能是:從3個紅球,5個白球,6個黑球中任意取出8個作為一組,進行輸出。在每一組中,可以沒有黑球,但必須要有紅球和白球。組合數作為函數值返回。正確的組合數應該是15。程序中i的值代表紅球數,j的值代表白球數,k的值代表黑球數。 第一處改錯處將for(i=0; i=3; i+)修改為for(i=1; i=1 & k=1 & k=6)&(i!=0&j!=0)|k=0)89題目: 下列給定程序中,函數fun的功能是:求整數x的y次方的低3位值。例如,整數5 的6次方為15625,此數的低3位值為625。 程序第一處改錯處將for(i=1;
58、iy; i+)修改為for(i=1; i=y; i+) 程序第二處改錯處將t=t/1000;修改為t=t%1000;90題目: 下列給定程序中,函數fun的功能是:計算n的5次方的值(規(guī)定n的值大于2、小于8),通過形參指針傳回主函數;并計算該值的個位、十位、百位上數字之和作為函數值返回。例如,7的5次方是16807,其低3位數的和值是15。 程序第一處改錯處將d=0;修改為d=1; 程序第二處改錯處將s=1;修改為s=0;91題目: 下列給定程序中,函數fun的功能是:讀入一個字符串(長度20),將該字符串中的所有字符按ASCII碼升序排序后輸出。例如,若輸入edcba,則應輸出abcde。
59、 第一處改錯處將for(i=strlen(t); i; i- )修改為for( i=0;itj+1)修改為if(tjtj+1) 92題目: 下列給定程序中,函數fun的功能是:求s=aaaa - aa aa a(此處aaaa表示n個a,a和n的值在1至9之間)。例如a=3,n=6,則以上表達式為: s=333333-33333-3333-333-33-3 其值是296298。a和n是fun函數的形參,表達式的值作為函數值傳回main函數。 程序第一處改錯處將long s=0,t=1;修改為long s=0,t=0; 程序第二處改錯處將for(j=0 ; j=n ; j+)修改為for(j=0
60、; j=num)修改為while (fabs(t)=num)第二處改錯處將t=s%n;修改為t=s/n; 94題目: 在主函數中從鍵盤輸入若干個數放入數組中,用0結束輸入并放在最后一個元素中。下列給定程序中,函數fun的功能是:計算數組元素中值為正數的平均值(不包括0)。例如:數組中元素的值依次為39、-47、21、2、-8、15、0,則程序的運行結果為19.250000。 第一處改錯處將int sum=0.0;修改為double sum=0.0;第二處改錯處將sum =c;修改為sum /=c;95題目: 下列給定程序中,函數fun的功能是:計算并輸出下列數的前n項之和Sn,直到Sa大于q為
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 影視創(chuàng)作部管理制度
- 心電圖使用管理制度
- 快遞柜客戶管理制度
- 總店與分店管理制度
- 總降站運行管理制度
- 成品不良品管理制度
- 成本無發(fā)票管理制度
- 房地產商業(yè)管理制度
- 排練廳手機管理制度
- 推拿科感染管理制度
- 2025年4月自考00186國際商務談判試題及答案含評分標準
- 警務技能抓捕課件
- 2025年教育管理專業(yè)考研試題及答案
- 廣東省廣州市南沙區(qū)2025屆七下生物期末教學質量檢測試題含解析
- DB13T 2700-2018 水工柔性生態(tài)防護結構設計規(guī)范
- 2025天津中考:語文必背知識點
- 2025汾西礦業(yè)井下操作技能人員招聘300人(山西)筆試參考題庫附帶答案詳解
- 《骨關節(jié)炎與藥物治療》課件
- 珠海醫(yī)保考試試題及答案
- 醫(yī)療機構重大事故隱患判定清單解讀課件
- 初中地理核心考點速記(中國地理一)-2025年中考地理復習知識清單(題綱)
評論
0/150
提交評論