C語言程序設(shè)計(jì)練習(xí)題含程序及參考答案Word版_第1頁
C語言程序設(shè)計(jì)練習(xí)題含程序及參考答案Word版_第2頁
C語言程序設(shè)計(jì)練習(xí)題含程序及參考答案Word版_第3頁
C語言程序設(shè)計(jì)練習(xí)題含程序及參考答案Word版_第4頁
C語言程序設(shè)計(jì)練習(xí)題含程序及參考答案Word版_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、傳播優(yōu)秀word版文檔 ,希望對您有幫助,可雙擊去除!c語言練習(xí)題(所提供的源程序均采用自定義函數(shù)方式解決,如不采用函數(shù)方式,也可直接在main函數(shù)中借鑒該思想編程,因時(shí)間有限,所有程序未能一一驗(yàn)證,僅供參考使用)1、定義一個(gè)函數(shù)int fun(int a,int b,int c),它的功能是:若a,b,c能構(gòu)成等邊三角形函數(shù)返回3,若能構(gòu)成等腰三角形函數(shù)返回2,若能構(gòu)成一般三角形函數(shù)返回1,若不能構(gòu)成三角形函數(shù)返回0。#include <stdio.h>int fun(int a,int b,int c)if(a+b>c && b+c>a &&

2、amp; a+c>b) if(a=b && b=c )return 3; else if(a=b|b=c|a=c) return 2;else return 1; else return 0;void main() int a,b,c,shape; printf("ninput a,b,c: "); scanf("%d%d%d",&a,&b,&c); printf("na=%d, b=%d, c=%dn",a,b,c); shape =fun(a,b,c); printf("nn

3、the shape : %dn",shape);2、編寫一個(gè)程序,將兩個(gè)變量的值交換, 例如變量a中的值原為 3,b中的值原為8,程序運(yùn)行后 a 中的值為8,b中的值為3。#include <stdio.h>void fun(int *x,int *y) int t;t=*x;*x=*y;*y=tvoid main() int a=3,b=8; printf("%d %dn",a,b); fun(&a,b); printf("%d %dn",a,b);3、從鍵盤輸入3個(gè)數(shù),將最大值放在變量a中,最小值放在變量c中。 例如,輸

4、入的數(shù)為:55 12 34,輸出結(jié)果應(yīng)當(dāng)是:a=55.0,b=34.0,c=12.0。#include <stdio.h>void fun(float *p,float *q,float *s) float k; if (*p<*q) k=*p;*p=*q;*q=k;if (*q<*s) k=*s;*s=*p;*p=k;if (*p<*q) k=*p;*p=*q;*q=k;void main() float a,b,c; printf("input a b c: "); scanf("%f%f%f",&a,&

5、b,&c); printf("a=%4.1f,b=%4.1f,c=%4.1fnn",a,b,c); fun(&a,&b,&c); printf("a=%4.1f,b=%4.1f,c=%4.1fnn",a,b,c);4、編寫函數(shù)fun(int n),它的功能是:計(jì)算正整數(shù)n的所有因子(1和n除外)之和作為函數(shù)值返回。例如:n=120時(shí),函數(shù)值為239。#include <stdio.h>#include <stdlib.h>int fun(int n)int i,s=0; for (i=2;i<

6、n;i+) if (n%i=0) s=s+i; return s;void main() /*主函數(shù)*/ void nono();printf("%dn",fun(120);nono();void nono( )/* 請?jiān)诖撕瘮?shù)內(nèi)打開文件,輸入測試數(shù)據(jù),調(diào)用 fun 函數(shù), 輸出數(shù)據(jù),關(guān)閉文件。 */ file *wf; wf = fopen("a30.out", "w") ; fprintf(wf,"%dn",fun(120); fclose(wf) ; 5、計(jì)算s,并輸出 1 1 1 s = 1 + + + +

7、 1+2 1+2+3 1+2+3+nn通過鍵盤輸入,例如:若n的值為11時(shí),則函數(shù)值為:1.833333#include <stdio.h>#include <stdlib.h>float fun(int n) int i; float s=1.0,h=1; for (i=2;i<=n;i+) h=h+i; s=s+1.0/h; return s;void main() int n;float s; printf("nplease enter n:");scanf("%d",&n); s=fun(n); printf

8、("the result is:%f",s); 6、將一個(gè)整數(shù)中的每一位上為奇數(shù)的數(shù)依次取出,構(gòu)成一個(gè)新數(shù)放在t中。高位仍在高位,低位仍在低位。例如,當(dāng)s中的數(shù)為:87653142時(shí),t中的數(shù)為:7531。#include <stdio.h>void fun(long s,long *t) int d; long s1=1;*t=0; while (s>0) d=s%10;if(d%2!=0) *t=d*s1+*t; s1=s1*10; s/=10; main() long s,t; printf("nplease enter s:")

9、;scanf("%ld",&s); fun(s,&t); printf("the result is:%ldn",t); 7、計(jì)算并輸出k以內(nèi)最大的10個(gè)能被13或17整除的自然數(shù)之和。k的值從鍵盤傳入,若k的值為500,則輸出4622。#include <stdio.h>int fun(int k)int m=0,mc=0,j; while(k>=1)&&(mc<10) if (k%13 = 0)|(k%17 = 0) m=m+k;mc+; k-; return m;void main() pri

10、ntf("%dn",fun(500); 8、已知一個(gè)數(shù)列的前三項(xiàng)分別為0,0,1, 以后的各項(xiàng)都是其相鄰的前三項(xiàng)之和,計(jì)算并輸出該數(shù)列前n項(xiàng)的平方根之和sum。例如,當(dāng)n10時(shí),程序的輸出結(jié)果應(yīng)為:23.197745。#include <stdio.h>#include <math.h>double fun(n) double sum,s0,s1,s2,s; int k; sum = 1.0; if(n <= 2) sum = 0.0; s0 = 0.0; s1 = 0.0; s2 = 1.0; for (k = 4; k <= n; k

11、+) s = s0 + s1 + s2; sum += sqrt(s); s0 = s1; s1 = s2; s2 = s; return sum;void main ( ) int n; printf("input n="); scanf("%d", &n); printf("%fn", fun(n) );9、編寫一個(gè)程序,從鍵盤輸入m,輸出大于m且緊隨m的素?cái)?shù)。#include <stdio.h>int fun(int m) int i,k; for (i=m+1;i+) for (k=2;k<i;k+)

12、 if(i%k=0) break;if (k>=i) return(i); void main()int n; printf("nplease enter n:"); scanf("%d",&n); printf("%dn",fun(n);10、判斷兩個(gè)整數(shù)m和n是否互質(zhì)(即是否有公共的因子)(m1,n1)。方法是: 用2到t(t取m和n中較小的那個(gè)數(shù))之間的數(shù)分別去除m和n,若m和n能同時(shí)被某個(gè)數(shù)除盡,則m和n不互質(zhì);否則它們互質(zhì)。 例如,若輸入187和85,則應(yīng)輸出no(表示它們不互質(zhì),它們有公因子17)。若輸入89

13、和187,則應(yīng)輸出yes(表示它們互質(zhì))。#include <stdio.h>int isthat( int m, int n ) int k, t, mk=1; t=m; if (m>n) t=n;for(k=2;k<=t;k+) if( m%k=0 && n%k=0 ) mk=0; break; return mk;void main( ) int m, n; printf( "nplease enter 2 numbers:n" );scanf("%d %d", &m, &n); if( is

14、that( m, n ) ) printf( "yesn" ); else printf( "non" );11、將十進(jìn)制正整數(shù)m轉(zhuǎn)換成k進(jìn)制數(shù)(2k9)并輸出(m,k從鍵盤輸入)。例如,若輸入8和2,則應(yīng)輸出1000(即十進(jìn)制數(shù)8轉(zhuǎn)換成二進(jìn)制表示是1000)。#include <stdio.h>void trans( int m, int k ) int aa20, i,j; for( i = 0; m; i+ ) aai = m%k; m /= k; for( j=i-1; j>=0; j- )printf("%d&quo

15、t;, aaj);void main() int b, n; printf( "nplease enter a number and a base:n" );scanf("%d %d", &n, &b ); trans( n, b );12、統(tǒng)計(jì)從鍵盤輸入的50個(gè)實(shí)數(shù)中有多少個(gè)正數(shù)、多少個(gè)負(fù)數(shù)、多少個(gè)零#include <stdio.h>void fun(int *zs,int *fs,int *l,float aa)int i;for(i=0;i<50;i+)if(aai>0)(*zs)+;if(aai<0

16、)(*fs)+;if(aai=0)(*l)+;void main()float num50;int i,czs,cfs,cl;czs=cfs=cl=0;printf( "nplease enter 50 float numbers :n" );for(i=0;i<50;i+)scanf(“%f”,&numi);fun(&czs,&cfs,&cl,num);printf("n正數(shù):%d ,負(fù)數(shù):%d ,零:%d n",czs,cfs,cl);13、計(jì)算并輸出方程x2+y2=1989的所有整數(shù)解#include <

17、stdio.h>void fun()int x,y;for(x=1;x<=44;x+)for(y=1;y<=44;y+) if(x*x+y*y=1989)printf(“x=%d ,y=%d n”,x,y);void main()printf(“方程x2+y2=1989的整數(shù)解為:n”);fun();14、從鍵盤輸入10個(gè)整數(shù),求出其中的最大值。#include <stdio.h>int fun(int aa)int m,i;m=aa0;for(i=1;i<10;i+)if(aai>m)m=aai;return m;void main()int num

18、10,i;printf(“請從鍵盤輸入10個(gè)整數(shù):n”);for(i=0;i<10;i+)scanf(“%d”,&numi);printf(“n最大的數(shù)是:%dn”,fun(num);1 2 3 4 51 1 2 3 41 1 1 2 31 1 1 1 21 1 1 1 115、從鍵盤輸入n值,輸出如右圖形。(例如n=5時(shí))#include <stdio.h>void fun(int n)int i,j;for(i=1;i<=n;i+)for(j=1;j<=i;j+)printf(“%3d”,1);for(j=2;j<=n+1-i;j+)printf

19、(“%3d”,j);printf(“n”);void main()int n;printf(“n請輸入圖形的行數(shù):”);scanf(“%d”,&n);fun(n);16、使用函數(shù)的方式,計(jì)算如下公式的值。 1 1 1 a1=1,a2=,a3=,an= 1+a1 1+a2 1+a(n-1) 例如:若n=10,則應(yīng)輸出: 0.617977。#include <stdio.h>float fun ( int n ) float a=1; int i; for (i=1; i<=n; i+) a = 1.0/(1+a); return a ;void main( ) int

20、n ; printf("nplease enter n: ") ; scanf("%d", &n ) ; printf("a%d=%fn", n, fun(n) ) ;* 17、使用函數(shù)的方式,按下面的公式計(jì)算并輸出數(shù)列的第m項(xiàng)。 2, m = 1; 3, m = 2; fff( m ) = 5, m = 3; fff(m - 3) + fff(m - 1), m > 3;例如,若輸入整數(shù) 9,則應(yīng)輸出:47。(不用做)* 18、使用函數(shù)的方式,按以下遞歸公式求函數(shù)值 10 (n=1) fun(n)= fun(n-1)+

21、2 (n>1) 例如,當(dāng)給n輸入5時(shí),函數(shù)值為18;當(dāng)給n輸入3時(shí),函數(shù)值為14。(不用做)19、計(jì)算并輸出當(dāng)0<x<0.97時(shí)下列多項(xiàng)式的值, 直到|s(n)-s(n-1)|<0.000001為止。 例如,在主函數(shù)中從鍵盤給x輸入0.21后,輸出為:s=1.100000。#include <stdio.h>#include <math.h>double fun(double x) int n=1;/* 循環(huán)計(jì)數(shù)*/ double sn=1;/* 累計(jì)數(shù)*/ double xn=1,xn1=0;/*x的n值,以及x的n-1值;*/ while(f

22、abs(xn-xn1)>=0.000001)/*絕對值是否合格*/ xn=xn*x*(0.5-n+1)/n; /*表達(dá)式分解以后xn=(xn-1)*x*(0.5-n+1)/n*/n+=1;sn+=xn; /*sn累加上xn*/ return sn;void main() double x,s; printf("input x: "); scanf("%lf",&x); s=fun(x); printf("s=%fn",s);20、計(jì)算并輸出s。 x2 x3 xn s = 1 + x + + + + 2! 3! n!n,x

23、從鍵盤輸入,例如,當(dāng)n=10,x=0.3時(shí),函數(shù)值為1.349859。#include <stdio.h>double fun(double x,int n) int i; double f=1.0,h=x; double s=1; s=s+h/f; for (i=2;i<=n;i+) f=f*i;h=h*x; s=s+h/f; return s;void main() printf("%fn",fun(0.3,10); 21、從鍵盤輸入high,計(jì)算并輸出high以內(nèi)最大的10個(gè)素?cái)?shù)之和。例如,輸入high的值為100,則輸出732。#include &

24、lt;stdio.h>int fun( int high ) int sum = 0, n=0, j, yes; while (high >= 2) && (n < 10) yes = 1; for (j=2; j<=high/2; j+ ) if (high % j =0 ) yes=0; break; if (yes=1) sum +=high; n+; high-; return sum ;void main ( ) printf("%dn", fun (100);22、請編寫函數(shù)float fun(int n),它的功能是:返

25、回n(包括n)以內(nèi)能被5或9整除的所有自然數(shù)的倒數(shù)之和。例如,n=20,返回0.583333。注意:要求n的值不大于100。#include <stdio.h>double fun(int n)int i;double sum=0.0;if(n>0&&n<=100)for (i=1;i<=n;i+) if(i%5=0|i%9=0) sum+=1.0/i;return sum;void main() int n; double s; printf("ninput n: "); scanf("%d",&n

26、); s=fun(n); printf("nns=%fn",s);23、請編一個(gè)函數(shù)fun(int *a, int n, int *odd, int *even),函數(shù)的功能是分別求出數(shù)組中所有奇數(shù)之和以及所有偶數(shù)之和。形參n給出數(shù)組a中數(shù)據(jù)的個(gè)數(shù);利用指針odd返回奇數(shù)之和,利用指針even返回偶數(shù)之和。例如:數(shù)組中的值依次為: 1,9,2,3,11,6;則利用指針odd返回奇數(shù)之和24;利用指針even 返回偶數(shù)之和8。#include <stdio.h>#define n 20fun ( int *a, int n, int *odd, int *even

27、 ) int i,sum_odd=0,sum_even=0; for(i=0;i<n;i+) if(ai%2=0) sum_even+=ai; else sum_odd+=ai; *odd=sum_odd; *even=sum_even;void main( ) int an=1,9,2,3,11,6, i, n=6, odd, even; printf ( "the original data is : n" ); for ( i = 0; i < n; i + ) printf ( "%5d", *(a+i) ); printf(&quo

28、t;nn"); fun ( a, n, &odd, &even ); printf ( "the sum of odd numbers: %dn", odd ); printf ( "the sum of even numbers: %dn", even ); 24、編寫計(jì)算三角形面積的程序,注意:將計(jì)算面積定義成函數(shù)float fun(int a,int b,int c)(a,b,c為三角形的三條邊,返回三角形的面積),在主函數(shù)中調(diào)用fun#include <stdio.h>#include <math.h&

29、gt;float fun(int a,int b,int c)float p;p=(a+b+c)/2;return sqrt(p*(p-a)*(p-b)*(p-c);void main()int a,b,c;printf(“請輸入三角形三條邊:n”);scanf(“%d%d%d”,&a,&b,&d);if(a+b>c && b+c>a && a+c>b) printf(“三角形面積為:%.2f”,fun(a,b,c);elseprintf(“無法構(gòu)成三角形”);25、編寫程序,求e=1+1/1!+1/2!+1/n!,要求

30、最后一項(xiàng)的值小于10-4#include <stdio.h>double fun(int n)double m=1.0; int i=1; double p=1.0; do m=m+1.0/p;i+; p=p*i; while(1.0/p>=1e-4); return m;void main() int n; double s; printf("input n: "); scanf("%d",&n); s=fun(n); printf("s=%fn",s);26、計(jì)算并輸出給定數(shù)組(長度為9)中每相鄰兩個(gè)元素

31、之平均值的平方根之和。例如,給定數(shù)組中的9個(gè)元素依次為12.0、34.0、4.0、23.0、34.0、45.0、18.0、3.0、11.0,輸出應(yīng)為:s=35.951014。#include <stdio.h>#include <math.h>double fun(double x9)int i ;double avg=0.0,sum=0.0;for (i=0;i<8;i+)avg=(xi+xi+1)/2;sum+=sqrt(avg);return sum;void main() double s,a9=12.0,34.0,4.0,23.0,34.0,45.0,1

32、8.0,3.0,11.0; int i; printf("nthe original data is :n"); for(i=0;i<9;i+)printf("%6.1f",ai); printf("nn"); s=fun(a); printf("s=%fnn",s);27、將1到m之內(nèi)(含m)能被7或11整除的所有整數(shù)放在數(shù)組a中。 例如,若輸入m的值為50,則在數(shù)組a中的值為:7 11 14 21 22 28 33 35 42 44 49#include <stdio.h>#define m

33、100void fun ( int m, int *a , int *n ) int i,count=0; for(i=1;i<=m;i+) if(i%7=0 | i%11=0) acount+=i; *n=count; void main( ) int aam, n, k; fun ( 50, aa, &n ); for ( k = 0; k < n; k+ ) if(k+1)%20=0) printf("n"); else printf( "%4d", aak ); printf("n") ; 28、請編寫函數(shù)

34、int fun(int m,int score,int below),它的功能是:將低于平均分的人數(shù)作為函數(shù)值返回,并將低于平均分的成績放在below數(shù)組中(m表示score的長度,score表示成績)。例如,當(dāng)score數(shù)組中的數(shù)據(jù)為:10、20、30、40、50、60、70、80、90時(shí),函數(shù)返回4,below中的數(shù)據(jù)應(yīng)為:10、20、30、40。#include <stdio.h>#include <stdlib.h>int fun(int score, int m, int below)int total=0;int average=0;int *p_below

35、=below;int i=0;int j=0;for(i=0;i<m;i+)total=total+scorei;average=total/m;for(i=0;i<m;i+)if(scorei<average) *p_below=scorei; p_below+; j+; *p_below=null;return(j);main( ) int i, n, below9 ; int score9 = 10, 20, 30, 40, 50, 60, 70, 80, 90 ; n = fun(score, 9, below) ; printf( "nbelow the

36、average score are: " ) ; for (i = 0 ; i < n ; i+) printf("%d ", belowi) ; 29、用插入排序法將n個(gè)字符進(jìn)行排序(降序)。(提示:插入法排序的思路是:先對數(shù)組的頭兩個(gè)元素進(jìn)行排序,然后根據(jù)前兩個(gè)元素的情況插入第三個(gè)元素,再插入第四個(gè)元素)。#define n 80#include "stdio.h"#include "string.h" void insert(char *aa)int i,j,n; char ch;n=strlen(aa); fo

37、r(i=1;i<n;i+)ch=aai; j=i-1; while (j>=0)&&(ch<aaj) aaj+1=aaj; j-; aaj+1=ch; void main() char an="qwertyuiopasdfghjklmnbvcxz" int i; printf("the original string : %sn",a); insert(a); printf("the string after sorting:%snn",a);30、假定整數(shù)數(shù)組a中元素的值不重復(fù)。刪除a中值為x的元素

38、(x從鍵盤輸入)。#include <stdio.h>#define n 20fun(int *a,int n,int x) int p=0,i; an=x; while(x!=ap) p=p+1;if(p=n) return -1; else for(i=p;i<n;i+)ai=ai+1; return n-1; void main() int wn=-3,0,1,5,7,99,10,15,30,90,x,n,i; n=10; printf("the original data :n"); for(i=0;i<n;i+) printf("

39、%5d",wi); printf("ninput x (to delete):");scanf("%d",&x); printf("delete : %dn",x); n=fun(w,n,x); if (n=-1) printf("*not be found!*nn"); else printf("the data after deleted:n"); for(i=0;i<n;i+) printf("%5d",wi);printf("nn&q

40、uot;); 31、一個(gè)已按從小到大的順序排好的數(shù)組a,編寫程序,從鍵盤輸入一個(gè)數(shù)x按原來排序的規(guī)律將它插入數(shù)組a中。#include <stdio.h>#define m 20void insort( int *n, int vv, int k ) int i=0 , j; while ( k > vvi && i < *n ) i+; if ( i<*n ) for ( j=*n; j>i; j- ) vvj = vvj-1; vvi = k;+*n;void main() int aam, i, k, m; system("c

41、ls"); printf( "nplease enter a number:n" ); scanf( "%d", &m ); printf( "nplease enter %d numbers:n", m ); for( i = 0; i < m; i+ ) scanf( "%d", &aai ); printf( "nplease enter another number:n" ); scanf( "%d", &k ); insort

42、( &m, aa, k );for(k=0; k < m;k+) printf( " %d", aak );32、使用數(shù)組的方法篩選出1-100中的素?cái)?shù)#include <stdio.h>void fun ( int *pt ) int i,j,flag; *pt=2;*pt+; for(i=3;i<100;i+) flag = 1; for(j=2;j<i;j+) if(i % j = 0) flag = 0; if( flag ) *pt = i;*pt+; *pt=0;void main( ) int *pointer,a30;

43、pointer=a; fun(pointer); printf("the result is :n"); while(*pointer) printf ( "%d ",*pointer+ ); 33、已知一個(gè)數(shù)組a中包括10個(gè)整數(shù)元素,從a中第二個(gè)元素起,分別將后項(xiàng)減前項(xiàng)之差存入數(shù)組b,并按每行3個(gè)元素輸出數(shù)組b。#include <stdio.h>void fun(int a,int b)int i;for(i=1;i<10;i+) bi-1=ai-ai-1;for(i=0;i<9;i+)printf(“%3d”,bi);if(

44、i+1)%3=0)printf(“n”);void main()int a10=1,2,3,4,5,6,7,8,9,10;int b9;fun(a,b);34、請編寫函數(shù)fun,函數(shù)的功能是:將m行n列的二維數(shù)組中的字符數(shù)據(jù)按列的順序依次放到一個(gè)字符串中。 例如,二維數(shù)組中的數(shù)據(jù)為: w w w w s s s s h h h h則字符串中的內(nèi)容應(yīng)是:wshwshwsh。#include <stdio.h>void fun(int (*s)10, int *b, int *n, int mm, int nn)int x,y; for(x=0;x<nn;x+) for(y=0;

45、y<mm;y+) bx*mm+y=*(sy+x); (*n)+; void main() int w1010=33,33,33,33,44,44,44,44,55,55,55,55,i,j; int a100=0, n=0; printf("the matrix:n"); for(i=0; i<3; i+) for(j=0;j<4; j+)printf("%3d",wij); printf("n"); fun(w,a,&n,3,4); printf("the a array:n"); fo

46、r(i=0;i<n;i+)printf("%3d",ai);printf("nn");35、求出n×n的二維數(shù)組周邊元素的平均值 |0 1 2 7 9| |1 9 7 4 5| a = |2 3 8 3 1| |4 5 6 8 2| |5 9 1 4 1|則返回主程序后s的值應(yīng)為: 3.375。#include <stdio.h>#define m 4#define n 5int fun ( int amn ) int i, j, sum = 0; for (i = 0; i < m; i+) for (j = 0; j

47、 < n; j+) if (i = 0)|(i = m - 1)|(j = 0)|(j = n - 1) ) sum += aij; return sum;void main( ) int aamn=1,3,5,7,9, 2,9,9,9,4, 6,9,9,9,8, 1,3,5,7,0; int i, j, y; system("cls"); printf ( "the original data is : n" ); for ( i=0; i<m; i+ ) for ( j =0; j<n; j+ ) printf( "%6d

48、", aaij ); printf ("n"); y = fun ( aa ); printf( "nthe sum: %dn" , y ); printf("n");36、求出m 行 n 列的二維數(shù)組tt里每列中的最小元素,并依次放入 pp 數(shù)組中。#include <stdio.h>#define m 3#define n 4void fun ( int ttmn, int ppn ) int i, j, min; for(i = 0; i < n; i+) min = tt0i; for(j = 0;

49、 j < m; j+) if (min > ttji) min = ttji; ppi = min; void main( ) int t m n =22,45, 56,30, 19,33, 45,38, 20,22, 66,40; int p n , i, j, k; system("cls"); printf ( "the original data is : n" ); for( i=0; i<m; i+ ) for( j=0; j<n; j+ ) printf ( "%6d", tij ); print

50、f("n"); fun ( t, p ); printf( "nthe result is:n" ); for ( k = 0; k < n; k+ ) printf ( " %4d ", p k ); printf("n"); 37、請編寫程序,實(shí)現(xiàn)b=a+a',即把矩陣a加上a的轉(zhuǎn)置,存放在矩陣b中。計(jì)算結(jié)果在main函數(shù)中輸出。 例如,輸入下面的矩陣: 其轉(zhuǎn)置矩陣為: |1 2 3| |1 4 7| |4 5 6| |2 5 8| |7 8 9| |3 6 9|程序輸出: |2 6 10| |6

51、 10 14| |10 14 18|#include <stdio.h>void fun(int a33,int b33)int i,j; for(i=0;i<3;i+) for (j=0;j<3;j+) bij=aij+aji;void main() int a33=1,2,3,4,5,6,7,8,9,t33; int i,j; fun(a,t); for(i=0;i<3;i+) for(j=0;j<3;j+) printf("%7d",tij); printf("n"); 38、編寫程序刪除字符串s中從下標(biāo)k開始的n個(gè)字符(n和k從鍵盤輸入)。例如,字符串內(nèi)容為:hellollo world!,k中的值為:5,n中的值為:3,結(jié)果為:hello world!。#include <stdio.h>#define n 80void fun(char *a,int k,int n)int i;i=k; whi

溫馨提示

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

評(píng)論

0/150

提交評(píng)論