版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、-WORD格式-專業(yè)資料-可編輯-導(dǎo)讀:在程序填空題中,已經(jīng)給出了程序的主干, 讀者首先要理解程序的思路,再選擇正確的內(nèi)容填 入空白處,使程序完成既定的功能。這類習(xí)題的設(shè) 計(jì)就是要引導(dǎo)讀者逐步掌握編程的方法。本節(jié)習(xí)題的難度適中,可能有些典型的程序在課堂上已經(jīng)有 所接觸,讀者一定要獨(dú)立完成它,這樣就可以逐步 提高自己的編程能力。在程序設(shè)計(jì)語(yǔ)言學(xué)習(xí)的中 期,讀者對(duì)程序設(shè)計(jì)已經(jīng)有了初步的了解,而自己編寫程序又不知從何處入手,此時(shí)解答此類題目可 以避免盲目性,從而提高學(xué)習(xí)的效率?!?.1】下面程序的功能是不用第三個(gè)變量,實(shí)現(xiàn) 兩個(gè)數(shù)的對(duì)調(diào)操作。#in elude mai n() int a,b ; s
2、ca nf(%d%d,&a,&b);printf(a=%d,b=%dn,a,b);a=;b=;a=;printf(a=%d,b=%dn,a,b);【3.2】下面程序的功能是根據(jù)近似公式:n21/12+1/22+1/32+ +1/ n2n 值求#in elude double pi(l ong n) double s=0.0;long i;for(i=1 ; i=n ; i+)s=s+ ;return();【3.3】下面的程序的功能是求一維數(shù)組中的最小元素。findmin (i nt *s,i nt t,i nt *k) int p ;for(p=0,*k=p ; pt; p+)if(sps*k
3、) ;mai n() int a10,i,*k=&i ;for(i=0 ; i10 ; i+)sea nf(%d, &ai);fin dmi n(a,1O,k;printf(%d,%dn,*k,a*k);【3.4】下面程序的功能是計(jì)算1-3+5-7+ -99+101 的值。mai n() int i,t=1,s=0 ;for(i=1 ; i=101 ; i+=2);s=s+t ; ;printf(%dn,s);【3.5】有以下程序段:s=1.0;for(k=1 ; kamax) amax=x;if()amin=x;sca nf(%f, &x);printf(namax=%fnamin=%fn,
4、amax,amin);【3.7】下面程序的功能是將形參x的值轉(zhuǎn)換為二進(jìn) 制數(shù),所得的二進(jìn)制數(shù)放在一個(gè)一維數(shù)組中返回, 二進(jìn)制數(shù)的最低位放在下標(biāo)為 0的元素中。fun(int x,i nt b) int k=0,r;do r=x% ; bk+=r ;x/=;while(x);【3.8】下面程序的功能是輸出1到100之間每位數(shù) 的乘積大于每位數(shù)的和的數(shù)。例如數(shù)字 26,數(shù)位 上數(shù)字的乘積12大于數(shù)字之和 &main () int n,k=1,s=0,m ;for(n=1 ; ns)printf(%d,n);【3.9】下面程序的功能是統(tǒng)計(jì)用0至9之間的不同 的數(shù)字組成的三位數(shù)的個(gè)數(shù)。mai n()
5、int i,j,k,count=0 ;for(i=1 ; i=9 ; i+)for(j=0 ; j=9 ; j+)if()continue;else for(k=0; k=9 ; k+)if()cou nt+ ;prin tf(%d,cou nt);【3.10】下面程序的功能是輸出100以內(nèi)的個(gè)位數(shù)為6、且能被3整除的所有數(shù)。main () int i,j ;for(i=0 ;i+) j=i*10+6 ;if( )countinue;printf(%d,j);【3.11】下面程序的功能是用輾轉(zhuǎn)相除法求兩個(gè)正 整數(shù)m和n的最大公約數(shù)。hcf(i nt m,i nt n) int r ;main
6、()if(mn); r=m ;int i,j ;prin tf(I nput 10 nu mbers pleasen);n=r ;for(i=0 ;i+ )sea nf(%f, & ai);r=m%n;printf(n);while()for(i=2 ;i+ ) m=n ;for(j=0 ;j+ )n=r ;if()r=m%n; x=aj;aj+1=x ;3.12下面程序的功能是使用冒泡法對(duì)輸入的10 printf(The sorted 10 numbers n);個(gè)浮點(diǎn)數(shù)從小到大進(jìn)行排序。排好序的10個(gè)數(shù)分for(i=0 ;i+ )兩行輸出。程序如下: if()#inelude printf
7、(n);printf(%ft,ai);printf(n);【3.13】下面程序的功能是讀入20個(gè)整數(shù),統(tǒng)計(jì)非 負(fù)數(shù)個(gè)數(shù),并計(jì)算非負(fù)數(shù)之和。#i nclude stdio.hmai n() int i,a20,s,co un;s=co un t=0;for(i=0 ; i20 ; i+ )scanf(%d,);for(i=0 ; i20 ; i+) if(ai0) ;s+=ai;coun t+ ;printf(s=%dt count=%dn,s,count);【3.14】下面程序的功能是刪除字符串s中的空格。#in clude main () char *s=Beiji ng ligo ng d
8、axue;int i,j ;for(i=j=0 ; si!=0 ; i+)if(si!=);else ;sj= 0;prin tf(%s,s);【3.15】下面程序的功能是將字符串s中所有的字 符c刪除。請(qǐng)選擇填空。#in cludemai n() char s80;int i,j;gets(s)for(i=j=0 ; si!= 0 ; i+ )if(si!= c);sj= 0;puts(s;【3.16】下面程序的功能是輸出兩個(gè)字符串中對(duì)應(yīng) 相等的字符。請(qǐng)選擇填空。#in elude char x=program min g;char y=Fortra n;mai n() int i=0 ;w
9、hile(xi!= 0 & yi!= 0)if(xi=yi)printf(%c,);elsei+ ;【3.17】下面程序的功能是將字符串s中的每個(gè)字 符按升序的規(guī)則插到數(shù)組a中,字符串a(chǎn)已排好序。 #i nclude main () char a20=cehik nqtw;char s=fbla;int i,k,j;for(k=0 ; sk!= 0 ; k+ ) j=0 ;while(sk=aj & aj!= 0)j+ ;for();aj=sk;puts(a;【3.18】下面程序的功能是對(duì)鍵盤輸入的兩個(gè)字符 串進(jìn)行比較,然后輸出兩個(gè)字符串中第一個(gè)不相同 字符的ASCII碼之差。例如:輸入的兩個(gè)
10、字符串分 別為abcdefg和abceef則輸出為-1。#in clude mai n() char str1100,str2100,cint i,s;prin tf(E nter stri ng 1: ); gets(str1)prin tf(E nter stri ng 2: ); gets(str2) i=0 ;while(str1i = str2i & str1i!= ) i+ ; s=;printf(%dn, s);【3.19下面的函數(shù)expand在將字符串s復(fù)制到字 符串t時(shí),將其中的換行符和制表符轉(zhuǎn)換為可見(jiàn) 的轉(zhuǎn)義字符表示,即用n表示換行符,用t表示 制表符。expa nd(ch
11、ar s,char t) int i,j ;for(i=j=0 ; si!= 0 ; i+ )switch (si) case n: t=;tj+ = n;break;case t: t=; tj+ = t; break; default: t=si; break;tj二;【3.20下面的函數(shù)index(char s, char t檢查字符 串s中是否包含字符串t,若包含,則返回t在s 中的開(kāi)始位置(下標(biāo)值),否則送回-1。in dex(char s, char t) int i,j,k;for(i=0 ; si!= 0 ; i+ ) for(j=i,k=0 ; & sj=tk ; j+,k+
12、);if() return (i);return(-1);n【3.21】下面程序的功能是計(jì)算 S= k!。k=0long fun (i nt n) int i ;long s;for(i=1 ; i ;i+)s*=i ;return();main () int k,n ;long s;sca nf(%d,&n);s=;for(k=0 ; k=n ; k+)s+=;printf(%ldn,s);【3.22】下面程序的功能是顯示具有n個(gè)元素的數(shù)組s中的最大元素。#defi ne N 20main () int i,aN;for(i=0 ; isk);return(k);【3.23】下面程序的功能是
13、由鍵盤輸入n,求滿足下述條件的x、y:nx和ny的末3位數(shù)字相同,且x工y ,x、y、n均 為自然數(shù),并使x+y為最小。#in clude pow3(i nt n ,i nt x) int i, last;for(last=1,i=1; i=x ; i+ ) last=;return(last)main () int x,n,min ,flag=1;sca nf(%d, &n);for(min=2 ; flag ; min+)for(x=1 ; xmin & flag ; x+ )if( & pow3(n,x)=pow3(n,min-x) printf(x=%d,y=%dn, x, min-x
14、 ); ;【3.24】下面的程序是用遞歸算法求a的平方根 求平方根的迭代公式如下:#in clude double mysqrt( double a, double x0 ) double x1, y;x1 =;if( fabs(x1-x0)0.00001 ) y = mysqrt();else y = x1;return( y );mai n() double x;prin tf(E nter x:);scan f(%lf, & x);printf(The sqrt of %lf=%lfn, x, mysqrt( x, 1.0);【3.251以下程序是計(jì)算學(xué)生的年齡。已知第一位 最小的學(xué)生年
15、齡為10歲,其余學(xué)生的年齡一個(gè)比 一個(gè)大2歲,求第5個(gè)學(xué)生的年齡。#in elude age( int n ) int c;if( n=1 ) c=10 ;else c=;return(c);main () int n=5 ;printf(age:%dn,);【3.26】下面的函數(shù)sum(int n完成計(jì)算1 加和。sum(i nt n) if(n=0)printf(data errorn);n的累if(n=1);else ;【3.27】下面的函數(shù)是一個(gè)求階乘的遞歸調(diào)用函數(shù)。facto(i nt n) if( n = 1 );else return();【3.28】組合問(wèn)題,由組合的基本性質(zhì)可
16、知:(1) C(m, n)=C( n-m, n)(2) C(m, n+1)=C(m, n)+C(m-1, n)公式(2)是 一個(gè)遞歸公式,一直到滿足 C(1,n)=n為 止。當(dāng)n2*m時(shí),可先用公式(1)進(jìn)行簡(jiǎn)化,填寫 程序中的空白,使程序可以正確運(yùn)行。#in cludestdio.hmai n() int m,n ;printf(Input m,n=);sca nf(%d%d, &m, &n);prin tf(The comb in ati on nu mbeers is %dn, comb in (m, n);comb in( int m, int n) int com ;if( n2*m
17、 ) m=n-m ;if( m=0 ) com=1 ;else if(m=1);else ;return(com);【3.29】下列函數(shù)是求一個(gè)字符串str的長(zhǎng)度。? int strle n( char *str )? if( )return (0);? ? else return ();【3.30】用遞歸實(shí)現(xiàn)將輸入小于32768的整數(shù)按逆 序輸出。如輸入12345則輸出54321。#in cludestdio.hmai n() int n ;printf(Input n :); scanf(%d,); r(n);printf(n);r( int m ) printf(%d,); m =; i
18、f();*#in clude void prt( char c, i nt n ) if( n0 ) printf( %c, c ); ;main () int i, n ;sca nf(%d, &n);for( i=1 ; i=n ;i+ )【3.31】輸入n值,輸出高度為n的等邊三角形 例如當(dāng)n=4時(shí)的圖形如下:;printf(n);【3.32】下面的函數(shù)實(shí)現(xiàn)N層嵌套平方根的計(jì)算。double y(double x, i nt n) if( n=0 )return(O);else return ( sqrt(x+( );【3.33函數(shù)revstr(s將字符串s置逆,如輸入的實(shí)參s為字符串a(chǎn)
19、bcde 則返回時(shí)s為字符串edcba。遞歸程序如下:revstr( char *s ) char *p=s, c;while(*p) p+ ; ;if(sp) c=*s ;*s=*p; ;revstr(s+1); ;如下是由非遞歸實(shí)現(xiàn)的revstr(s)函數(shù):revstr (s)char *s; char *p=s, c;while( *p ) p+ ; ;while( s2 ) invent (,n-2);else ;【3.35】從鍵盤上輸入10個(gè)整數(shù),程序按降序完成 從大到小的排序。#in elude int array1O;sort( int *p, i nt *q ) int *ma
20、x, *s ;if()return;max=p; for( s=p+1 ; s *max ) ;swap();sort();swap( int *x, i nt *y ) int temp; temp=*x ;*x=*y ;*y=temp ;main () int i ; printf(Enter data :n) ; for( i=0 ;i10 ;i+)seanf(%d, &arrayi);sort();printf(Output:);for( i=0 ;i10 ;i+)prin tf(%d , arrayi);【3.36】下面函數(shù)的功能是將一個(gè)整數(shù)存放到一個(gè) 數(shù)組中。存放時(shí)按逆序存放。例如
21、:483存放成 384。#in elude void con vert(char *a, i nt n) int i ;if(i=n/10) !=0 )convert(,i );*a =;char str1O=;mai n() int nu mber;sca nf(%d, &n umber);con vert( str, nu mber )puts(str);【3.37】下面程序的功能是實(shí)現(xiàn)數(shù)組元素中值的逆 轉(zhuǎn)。#in clude mai n() int i,n=10,a10=123,4,5,6,7,8,9,10in vert(a, n-1;for(i=0 ; i10 ; i+)prin tf
22、(%4d,ai);printf(n);in vert(i nt *s,i nt num) int *t,k ;t=s+num ; while() k=*s ; *s=*t ;*t=k ; ;【3.38】下面程序通過(guò)指向整型的指針將數(shù)組a34的內(nèi)容按3行X4列的格式輸出,請(qǐng)給 printf()填入適當(dāng)?shù)膮?shù),使之通過(guò)指針P將數(shù)組元素按要求 輸出。#in elude int a34=1,2,3,4,5,6,7,8,9,10,11,12, *p=a ; mai n() int i,j ;for(i=0 ; i3 ; i+ ) for(j=0 ; j4 ; j+ )printf(%4d ,);【3.3
23、9】下面程序的功能是:從鍵盤上輸入一行字 符,存入一個(gè)字符數(shù)組中,然后輸出該字符串。#in elude mai n () char str81, *sptr;int i ;for(i=0 ; iwp);for(i=*n ; i=p ; i-);wp=x ;+* n ;【3.41】下面程序的功能是從鍵盤上輸入兩個(gè)字符 串,對(duì)兩個(gè)字符串分別排序;然后將它們合并,合 并后的字符串按ASCII碼值從小到大排序,并刪去 相同的字符。#in elude strmerge(a b,c) /*將已排好序的字符串 a、b合 并到c */char *a *b,*c; char t,*w;w=c ;while( *
24、a!= 0 *b!=0) t= ?*a+:*bv*a ? *b+ :();/* 將*a、*b的小者存入t */if( *w 0 ) *w=t ;else if( t *w) *+w=t ;/* 將與 *w 不相同的 t存入w */while( *a != 0 ) /*以下將a或b中剩下的字符存 入w */if( *a != *w ) *+w=*a+ ;else a+;while( *b != 0)if( *b != *w ) *+w=*b+;else b+;*+w =;strsort( char *s ) /*將字符串s中的字符排序 */ int i,j,n;char t, *w ;for(
25、n=0 ; *w != 0;)w+ ;for( i=0 ; isj)mai n() char s1100, s2100, s3200;prin tf(nPlease In put First Stri ng:);scanf(%s s1);prin tf(nPlease In put Second Stri ng:)scanf(%s: s2);strsort(s1;strsort(s2;=0;strmerge(s1 s2, s3);printf(nResult:%s, s3);【3.42】已知某數(shù)列前兩項(xiàng)為2和3,其后繼項(xiàng)根 據(jù)前面最后兩項(xiàng)的乘積,按下列規(guī)則生成: 若乘積為一位數(shù),則該乘積即為數(shù)
26、列的后繼項(xiàng); 若乘積為二位數(shù),則該乘積的十位上的數(shù)字和 個(gè)位上的數(shù)字依次作為數(shù)列的兩個(gè)后繼項(xiàng)。下面的程序輸出該數(shù)列的前N項(xiàng)及它們的和,其 中,函數(shù)sum(n,pa)返回?cái)?shù)列的前N項(xiàng)和,并將生 成的前N項(xiàng)存入首指針為pa的數(shù)組中,程序中規(guī) 定輸入的N值必須大于2,且不超過(guò)給定的常數(shù)值 MAXNUM 。例如:若輸入N的值為10,則程序輸出如下 內(nèi)容:sum(10)=442 3 6 1 8 8 6 4 2 4#i nclude stdio.h#defi ne MAXNUM 100int sum(n, pa)int n, *pa; int count, total, temp;*pa = 2; =3;
27、total=5;coun t=2;while( coun t+n ) temp = *(pa-1) * *pa; if( temp10 ) total += temp ;*(+pa) = temp ;else=temp/10 ;total += *pa;if( countvn ) count + ; pa+ ; =temp%10;total += *pa; ;mai n() int n, *p, *q, numMAXNUM;do prin tf(I nput N=? (2N%d):, MAXNUM+1); sca nf(%d, &n);while();printf(nsum(%d)=%dn,
28、n, sum(n, num);for( p=num, q 二; pq ;p+ )printf(%4d, *p);printf(n);【3.43】下面程序的功能是輸入學(xué)生的姓名和成績(jī), 然后輸出。#in clude struct stu inf char name20/* 學(xué)生姓名 */int score;/* 學(xué)生成績(jī) */ stu, *p;mai n () p=&Stu ;prin tf(E nter n ame:);gets();prin tf(E nter score:);scanf(%d,);printf(Output: %s, %dn,,);【3.44】下面程序的功能是按學(xué)生的姓名查
29、詢其成 績(jī)排名和平均成績(jī)。查詢時(shí)可連續(xù)進(jìn)行,直到輸入 0時(shí)才結(jié)束。? #i nclude #in clude #defi ne NUM 4? struct stude nt? int rank ;char *n amefloat score? ;? 4? 1? 2;?mai n()stu = 3,liming,89.3, Zhanghua: 782anli,95.1,Wangqi, 90.6? char str10;? int i ;? do prin tf(E nter a n ame);? scanf(%s,str);? for( i=0; ivNUM ; i+ )? if( )? pri
30、ntf(Name :%8sn,)? printf(Rank :%3dn,stui.rank);? prin tf(Average :%5.1fn stui.score)? ;? ? if( i=NUM ) pri ntf(Not foun dn) ? while( strcmp(str , 0)!=0 ); ?【3.45】下面程序的功能是從終端上 輸入5個(gè)人的年齡、性別和姓名,然 后輸出。#i nclude stdio.hstruct man char n ame20un sig ned agechar sex7;mai n () struct man pers on5;da
31、tan (perso n,5;)data_out(pers on,5)data_i n( struct man *p, i nt n ) struct man *q 二;for( ; page, p-sex) ;data_out( struct man *p, i nt n ) struct man *q = _ _;for( ; pname, p-age, p-sex)【3.46】輸入N個(gè)整數(shù),儲(chǔ)存輸入的數(shù)及對(duì)應(yīng)的序 號(hào),并將輸入的數(shù)按從小到大的順序進(jìn)行排列。要求:當(dāng)兩個(gè)整數(shù)相等時(shí),整數(shù)的排列順序由輸入的 先后次序決定。例如:輸入的第3個(gè)整數(shù)為5,第7個(gè)整數(shù)也為5,則將先輸入的整數(shù)5排在后輸
32、入 的整數(shù)5的前面。程序如下:#i nclude stdio.h#defi ne N 10struct int no ;int num; arrayN;mai n() int i,j, num;for( i=0 ; i=0&arrayj.num num;)arrayj+1=arrayj;array.num=num;array.no=i;for( i=0 ; iN ; i+ )printf(%d=%d,%dn,i,arrayi.num, arrayi.no; 【3.47】以下程序的功能是:讀入一行字符(如: a、y、z),按輸入時(shí)的逆序建立一個(gè)鏈接式的結(jié) 點(diǎn)序列,即先輸入的位于鏈表尾(如下圖),
33、然后 再按輸入的相反順序輸出,并釋放全部結(jié)點(diǎn)。zy片.*.A#i nclude mai n() struct node char info; struct node *li nk; *top , *p ;char ctop=NULL ;while(c= getchar() ) p=(struct node *)malloc(sizeof(struct node; p-info=c ;p-link=top ;top=p ;while( top );top=top-link ;putchar(p-info);free(p);【3.48】下面函數(shù)將指針p2所指向的線性鏈表,串 接到p1所指向的鏈表的
34、末端。假定p1所指向的鏈 表非空。#defi ne NULL 0struct link float a ;struct link *n ext;con cate nate ( p1 p2 )struct list *p1,*p2; if( p1- n ext=NULL )p1- n ext=p2 ; elsecon cate nate(,p2);【3.49】下面程序的功能是從鍵盤輸入一個(gè)字符串, 然后反序輸出輸入的字符串。#in elude struct node char data;struct node *li nk;*head;mai n() char ch;struct node *p
35、;head = NULL;while( ch=getchar()!=n) p = (struct node *)malloc(sizeof(struct node) p-data = ch;p-link =;head =; ;while( p!=NULL ) printf(%c , p-data);p = p-link ;【3.50下面程序的功能是從鍵盤上順序輸入整數(shù), 直到輸入的整數(shù)小于0時(shí)才停止輸入。然后反序輸 出這些整數(shù)。#in clude struct data int x ;struct data *li nk;*p;in put() int num;struct data *qpr
36、in tf(E nter data:);sca nf(%d, &num);if( numx = num; q-link = p ; p=q ;mai n() printf(Enter data until datax);【3.51】下面函數(shù)的功能是創(chuàng)建一個(gè)帶有頭結(jié)點(diǎn)的 鏈表,將頭結(jié)點(diǎn)返回給主調(diào)函數(shù)。鏈表用于儲(chǔ)存學(xué) 生的學(xué)號(hào)和成績(jī)。新產(chǎn)生的結(jié)點(diǎn)總是位于鏈表的尾 部。struct stude nt long num;int score;struct stude nt *n ext;struct stude nt *creat() struct stude nt *head=NULL,*tail;l
37、ong num; int a;tail= malloc(LEN);do sca nf(%ld,%d,&n um, &a);if(n um!=0) if(head=NULL) head=tail ;else ;tail-num=num ; tail-score=a;tail-n ext=(struct stude nt *)malloc(LEN); else tail- next=NULL;while( nu m!=O);return();【3.52下面create函數(shù)的功能是建立一個(gè)帶頭結(jié) 點(diǎn)的單向鏈表,新產(chǎn)生的結(jié)點(diǎn)總是插入在鏈表的末 尾。單向鏈表的頭指針作為函數(shù)值返回#in clude #d
38、efi ne LEN sizeof(struct stude nt) struct stude nt long num;int score;struct stude nt *n ext;struct stude nt *creat() struct stude nt *head=NULL,*tail; long num;int a;tail=()malloc(LEN);do sca nf(%ld,%d,&n um, &a);if(n um!=0) if(head=NULL) head=tail ; else tail=tail-n ex; tail-num=num;tail-score=a;t
39、ail-next=()malloc(LEN);else tail- next=NULL;while( nu m!=0);;【3.53】下面程序的功能是統(tǒng)計(jì)文件中的字符的個(gè) 數(shù)。#in elude mai n() long num=0; *fp ;if(fp=fope n( fname.dat, r)=NULL) prin tf(Ca nt ope n the file!); exit(O); while() fgetc(fp); nu m+ ;printf(num=%dn,num); fclose(fp);【3.54】下面程序的功能是把從鍵盤輸入的文件(用 作為文件結(jié)束標(biāo)志)復(fù)制到一個(gè)名為 s
40、eco nd.txt 的新文件中。#in clude FILE *fp ;main () char ch;if(fp=fopen()=NULL) exit(O);while(ch=getchar()!=)fputc(ch,fp); ;【3.5日下面程序的功能是將磁盤上的一個(gè)文件復(fù) 制到另一個(gè)文件中,兩個(gè)文件名在命令行中給出(假定給定的文件名無(wú)誤)。#in clude main (i nt argc,char *argv)實(shí)現(xiàn)求10的階乘。 FILE &f1,*f2 ;#i nclude if(argc )#i nclude prin tf(The comma nd line error!);m
41、ain (int argc,char *argv)exit(O); int n ;void sum(),mult(;f1=fope n(argv1, r);void (*fun cp)();f2=fope n(arhv2, w);n=atoi(argv2);while()if(argc!=3 | n=0)fputs(fgetc(f1),);dispform();;switch (); case +: fun cp=sum;break;【3.5 &下面程序的功能是根據(jù)命令行參數(shù)分別實(shí) 現(xiàn)一個(gè)正整數(shù)的累加或階乘。例如:如果可執(zhí)行文 件的文件名是sm,則執(zhí)行該程序時(shí)輸入:sm + 10,可以實(shí)現(xiàn)10
42、的累加;輸入:sm - 10,可以case -: fun cp=mult break;default: dispform(; ;void sum(i nt m) int i,s=0;for(i=1 ; im ; i+ ) ;printf(sum=%dn,s);void mult(i nt m) long int i, s=1;for(i=1 ; i0)n); exit (0);【3.57】下面程序的功能是鍵盤上輸入一個(gè)字符串, 把該字符串中的小寫字母轉(zhuǎn)換為大寫字母,輸出到文件test.txt中,然后從該文件讀出字符串并顯示出 來(lái)。#in elude main () char str100;in
43、t i=0;FILE *fp ;if(fp=fopen(test.txt,)=NULL) printf(Cant open the file.n);exit(0);printf(Input a string:n);gets(str) while(stri) if(stri= a&stri= z) stri=;fputc(stri,fp);i+ ;fclose(fp);fp=fopen(test.txt,);fgets(str,strle n(str)+1,fp)printf(%sn,str);fclose(fp);【3.58】下面程序的功能是將從終端上讀入的 10 個(gè)整數(shù)以二進(jìn)制方式寫入名為b
44、i.dat的新文件中。 #in clude FILE *fp ;mai n() int i, j ;if( fp=fopen(,wb ) = NULL )exit (0);for( i=0 ; i10 ; i+ ) sca nf(%d, &j );fwrite(,sizeof(int), 1,);fclose( fp);【3.59】以字符流形式讀入一個(gè)文件,從文件中檢 索出六種C語(yǔ)言的關(guān)鍵字,并統(tǒng)計(jì)、輸出每種關(guān)鍵字在文件中出現(xiàn)的次數(shù)。本程序中規(guī)定:?jiǎn)卧~是 一個(gè)以空格或t、n結(jié)束的字符串。#in clude #i nclude FILE *cp ;char fname20, buf10Qint num;struct key char word10;int count
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)保公司解除租賃協(xié)議
- 污水處理招投標(biāo)委托書范例
- 農(nóng)業(yè)物流服務(wù)合同管理指南
- 文化產(chǎn)業(yè)嚴(yán)禁參與盜版侵權(quán)承諾書
- 公共廣場(chǎng)地磚鋪設(shè)合同
- 建筑加固改造升級(jí)勞務(wù)協(xié)議
- 上海市工業(yè)園區(qū)基礎(chǔ)設(shè)施施工合同
- 醫(yī)療機(jī)構(gòu)用工規(guī)范承諾書
- 石油開(kāi)采設(shè)備日常養(yǎng)護(hù)管理辦法
- 漁業(yè)捕撈與加工合同
- 《高一學(xué)期期中考試動(dòng)員》主題班會(huì)課件
- 水災(zāi)期間的食品安全措施
- JTG F90-2015 公路工程施工安全技術(shù)規(guī)范
- 醫(yī)院人才梯隊(duì)建設(shè)與培養(yǎng)方案
- 上下班安全交通培訓(xùn)
- 股骨頭置換術(shù)后護(hù)理查房
- 五谷知識(shí)課件
- 在線網(wǎng)課知慧《亞健康學(xué)(亞健康學(xué))》單元測(cè)試考核答案
- 《招商招租方案》課件
- 第六單元中國(guó)特色社會(huì)主義生態(tài)文明建設(shè)及結(jié)語(yǔ)練習(xí)-2023-2024學(xué)年中職高教版(2023)中國(guó)特色社會(huì)主義
- 平面直角坐標(biāo)系(單元教學(xué)設(shè)計(jì))大單元教學(xué)人教版七年級(jí)數(shù)學(xué)下冊(cè)
評(píng)論
0/150
提交評(píng)論