C語言程序改錯題_第1頁
C語言程序改錯題_第2頁
C語言程序改錯題_第3頁
C語言程序改錯題_第4頁
已閱讀5頁,還剩3頁未讀 繼續免費閱讀

付費下載

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、頁眉第 12次上機程序改錯第 1 題【程序改錯】-功能:求二分之一的圓面積,函數通過形參得到圓的半徑,函數返回二分之一的圓面積。例如:輸入圓的半徑值:19.527輸出為: s = 598.950017。-*/#include #include /*FOUND*/double fun( r)double fun(double r)double s;/*FOUND*/s=1/2*3.14159* r * r;s=1.0/2*3.14159*r*r;/*FOUND*/return r;return s;main()float x;printf ( Enter x: );scanf ( %f, &x

2、);printf ( s = %fn , fun ( x ) );第 2 題【程序改錯】功能:先將在字符串s 中的字符按逆序存放到t 串中,然后把s 中的字符按正序連接到t 串的后面。例如:當s 中的字符串為:“ ABCDE”時,則t 中的字符串應為:“EDCBAABCDE”。-*/#include #include #include void fun (char *s, char *t)/*FOUND*/int i;int sl,i;sl = strlen(s);for (i=0; isl; i+)/*FOUND*/1/81頁眉ti = ssl-i;ti=ssl;for (i=0; isl;

3、 i+)tsl+i = si;tsl+i=ssl-i-1;/*FOUND*/t2*sl = 0;t2*sl =;main()char s100, t100;printf(nPlease enter string s:); scanf(%s, s);fun(s, t);printf(The result is: %sn, t);第 3 題【程序改錯】功能:求出以下分數序列的前n 項之和。和值通過函數值返回main函數。2/1+3/2+5/3+8/5+13/8+21/13例如:若n = 5 ,則應輸出:8.391667 。-*/#include #include /*FOUND*/fun ( in

4、t n )double fun(int n)int a, b, c, k; double s;s = 0.0; a = 2; b = 1;for ( k = 1; k = n; k+ )/*FOUND*/s = (double)a / b;s=s+(double)a / b;c = a;a = a + b;b = c;/*FOUND*/return c;return s;main( )int n = 5;printf( nThe value of function is: %lfn, fun ( n ) );第 4 題 【程序改錯】-2/82頁眉功能:以下程序能求出1*1+2*2+.+n*n=

5、1000中滿足條件的最大的 n。-*/#include #include string.hmain()int n,s;/*FOUND*/s=n=0;s=0,n=0;/*FOUND*/while(s1000)while(s=1000)+n;s+=n*n;/*FOUND*/printf(n=%dn,&n-1); printf(n=%dn,n-1);第 5 題【程序改錯】-功能:利用二維數組輸出如圖所示的圖形。*-*/#include #include /*FOUND*/#define N= 7#define N 7main()char aNN;int i,j,z;for(i=0;iN;i+)for

6、(j=0;jN;j+)/*FOUND*/3/83頁眉aij=;aij= ;z=0;for(i=0;i(N+1)/2;i+)for(j=z;jN-z;j+)aij=*;z=z+1;/*FOUND*/z=0;for(i=(N+1)/2;iN;i+)z=z-1;z-;for(j=z;jN-z;j+)aij=*;for(i=0;iN;i+)for(j=0;jN;j+)/*FOUND*/printf(%d,aij);printf(%c,aij);printf(n);第 6 題【程序改錯】-功能:求出a 所指數組中最大數和次最大數( 規定最大數和次最大數不在 a0 和 a1 中 ) ,依次和a0 、 a1

7、 中的數對調。例如:數組中原有的數:7、 10、 12、 0、 3、 6、 9、 11、 5、8,輸出的結果為:12、 11、 7、 0、 3、 6、 9、 10、 5、 8。-*/#include #include #define N 20void fun ( int * a, int n )int k,m1,m2,max1,max2,t;max1=max2= -32768; m1=m2=0;for ( k = 0; k max1 )max2 = max1; m2 = m1;max1 = ak; m1 = k;4/84頁眉/*FOUND*/else if( akmax1 )else if(

8、akmax2)max2 = ak; m2 = k; /*FOUND*/t = a0;am1=a0;a0=am1;am1 = t;/*FOUND*/t = a1;am2=a1;a1=am2am2 = t;main( )int bN=7,10,12,0,3,6,9,11,5,8, n=10, i;for ( i = 0; in; i+)printf(%d ,bi);printf(n);fun (b, n);for ( i=0; in; i+ )printf(%d ,bi);printf(n);第 7 題【程序改錯】-功能:根據以下公式求 值,并作為函數值返回。例如:給指定精度的變量eps 輸入 0

9、.0005 時,應當輸出Pi=3.140578 。1121231234 = 1 + + x + x x + x x x + .23353573579-*/ #include double fun(double eps)double s,t;int n=1;s=0.0;t=1;/*FOUND*/while(t=eps)5/85頁眉s+=t;/*FOUND*/t=n/(2*n+1)*t;n+;/*FOUND*/return s;main()double x;scanf(%lf,&x);printf(neps=%lf,Pi=%lfnn,x,fun(x);第 8 題【程序改錯】-功能:讀入一個整數k(

10、2 k10000) ,打印它的所有質因子(即所有為素數的因子) 。例如:若輸入整數:2310 ,則應輸出:2、 3、5、 7、11 。請改正程序中的語法錯誤,使程序能得出正確的結果。-*/#include conio.h#include /*FOUND*/isPrime(integer n )int isPrime(int n )int i, m;m = 1;for ( i = 2; i n; i+ )/*FOUND*/if ( n%i )if ( !(n%i) )m = 0;break;/*FOUND*/return nreturn n;main( )int j, k;printf( nPl

11、ease enter an integer number between 2 and 10000: ); scanf( %d, &k );printf( nnThe prime factor(s) of %d is( are ):, k );6/86頁眉for( j = 2; j = k; j+ )if(!( k%j)&( IsPrime(j) printf( n %4d, j );printf(n);第 9 題【程序改錯】-功能:從m個學生的成績中統計出高于和等于平均分的學生人數,此人數由函數值返回。平均分通過形參傳回,輸入學生成績時,用 -1 結束輸入,由程序自動統計學生人數。例如:若輸入

12、8名學生的成績,輸入形式如下:80.5 60 72 90.5 98 51.5 88 64 -1結果為:The number of students :4Ave = 75.56。-*/#include #include #define N 20int fun ( float *s, int n, float *aver )float av, t ; int count , i;count = 0; t=0.0;for ( i = 0; i n; i+ ) t += s i ;av = t / n; printf( ave =%fn,av );for ( i = 0; i n; i+ )/*FOU

13、ND*/if ( s i av ) count+;/*FOUND*/aver = av;*aver = av/*FOUND*/return countreturn count;main()float a, s30, aver;int m = 0;printf ( nPlease enter marks ( -1 to end):n );scanf(%f,&a );while( a0 )sm = a;m+;scanf ( %f, &a );7/87頁眉printf( nThe number of students : %dn , fun ( s, m, &aver );printf( Ave = %6.2fn,aver );第 10 題【程序改錯】-功能:實現兩個字符串的連接。例如:輸入dfdfqe和 12345 時,則輸出dfdfqe12345.-*/#include main()char s180,s280;void scat(char s1,char

溫馨提示

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

評論

0/150

提交評論