版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、導讀:在程序填空題中,已經給出了程序的主干,讀者首先要理解程序的思路,再選擇正確的內容填入空白處,使程序 完成既定的功能。這類習題的設計就是要引導讀者逐步掌握編程的方法。本節(jié)習題的難度適中,可能有些典型的程序在 課堂上已經有所接觸,讀者一定要獨立完成它,這樣就可以逐步提高自己的編程能力。在程序設計語言學習的中期,讀 者對程序設計已經有了初步的了解,而自己編寫程序又不知從何處入手,此時解答此類題目可以避免盲目性,從而提高 學習的效率。3.1 1下面程序的功能是不用第三個變量,實現(xiàn)兩個數(shù)的對調操作。#include <stdio.h>main()int a,b ;scanf("
2、;%d%d",&a,&b);p rintf("a=%d,b=%dn",a,b);a=;b=;a=;p rintf("a=%d,b=%dn",a,b);+1/n2,求3.2】下面程序的功能是根據近似公式:7t 2/61/12+1/22+1/32+7t值。#inelude <math.h>double pi(long n)double s=0.0;long i ;for(i=1 ; i<=n ; i+)s=s+ ;return();3.31下面的程序的功能是求一維數(shù)組中的最小元素。 findmin(int *s,i
3、 nt t,int *k)intp ;for(p=0,*k =p; p<t; p+)if(sp<s*k) ; main()int a10,i,*k=&;for(i=0 ; i<10 ; i+) scanf("%d",&ai);findmin(a,10,k) ;p rintf("%d,%dn",*k,a*k)3.41下面程序的功能是計算1-3+5-7+-99+101 的值。main()int i,t=1,s=0;for(i=1 ; i<=101 ; i+=2);s=s+t ; ; p rintf("%dn&
4、quot;,s)3.5 1有以下程序段:8=1.0 ;for(k=1 ; k<=n; k+)s=s+1.0/(k*(k+1);p rintf("%fn",s);填空完成下述程序,使之與上述程序的功能完全相同。8=0.0 ;;k=0;dos=s+d ;;d=1.0/(k*(k+1);while();p rintf("%fn",s);統(tǒng)計并輸出最高成績和3.6 1下面程序的功能是從鍵盤上輸入若干學生的學習成績, 最低成績,當輸入為負數(shù)時結束輸入。main()float x,amax,ami n;scan f("%f',&x);
5、amax=x;amin=x;while()if(x>amax) amax=x ;if( )amin=x ;scan f("%f',&x);printf("n amax=%fnamin=%frr,amax,amin)3.7 1下面程序的功能是將形參X的值轉換為二進制數(shù),所得的二進制數(shù)放在一個一維數(shù)組中返回,二進制數(shù)的最低位放在下標為0的元素中。fun(int x,int b)int k=O,r dor=x% ; bk+=r ;x/=;while(x);3.81下面程序的功能是輸出1到100之間每位數(shù)的乘積大于每位數(shù)的和的數(shù)。例如數(shù)字26,數(shù)位上數(shù)字的乘積
6、12大于數(shù)字之和8omain()intn ,k=1 ,s=0,m;for(n=1 ; n<=100; n+)k=1 ;s=0; ;while() k*=m%10;s+=m%19 ;3.9 1下面程序的功能是統(tǒng)計用0至9之間的不同的數(shù)字組成的三位數(shù)的個數(shù)。main()int ij,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( )count+ ;p rintf("%d", count) ;3.10】下面程序的功能是輸出
7、100以內的個位數(shù)為 6、且能被3整除的所有數(shù)。main()int ij ;for(i=0 ;;i+)j=i*10+6;if( )countinue ;printf("%d"j) ;m和n的最大公約數(shù)。3.11 1下面程序的功能是用輾轉相除法求兩個正整數(shù) hcf(int m,int n)intr ;if(m<n)r=m ;;n=r;r=m%n while() m=n ;n=r;r=m%n3.12 1下面程序的功能是使用冒泡法對輸入的10個浮點數(shù)從小到大進行排序。排好序的10個數(shù)分兩行輸出。程序如下:#inelude <stdio.h>main();int
8、ij ;printf("lriput 10 numbers pleasen");for(i=0 ;;i+)scanf("%f', &ai);printf("n") ;for(i=2 ;;i+)forG=0 ;;j+)if()x=aD;aj+1=x ;;n”);printf("The sorted 10 numbers for(i=0 ;;i+)if()printf("n") ; printf("%ft",ai);printf("n")3.131下面程序的功能是
9、讀入20個整數(shù),統(tǒng)計非負數(shù)個數(shù),并計算非負數(shù)之和。#include "stdio.h"main()int i,a20,s,count;s=count=0 ;for(i=0 ; i<20 ; i+ )scanf("%d",);for(i=0 ; i<20 ; i+)if(ai<0) ;s+=ai;count+ ;printf("s=%dt count=%dn",s,count)3.14 1下面程序的功能是刪除字符串S中的空格。#include <stdio.h>main() char *s="Be
10、ijing ligong daxue"int ij ;for(i=j=0 ; si!='0' i+)if(si!=");else ;sD= '0';printf("%s",s) ;3.151下面程序的功能是將字符串s中所有的字符'C刪除。請選擇填空。#include<stdio.h>main()char s80;int ij ;gets(s);for(i=j=0 ; si!= '0' i+)if(si!= 'c');sD= '0'Puts(s);3.161
11、下面程序的功能是輸出兩個字符串中對應相等的字符。請選擇填空。#inelude <stdio.h>char x=" programmi ng"char y="Fortran" ;main()int i=0;while(xi!= '0' && yi!= '0')if(xi=yi)printf("%c", );elsei+ ;3.171下面程序的功能是將字符串S中的每個字符按升序的規(guī)則插到數(shù)組a中,字符串a已排好序。#inelude <string.h>main()ch
12、ar a20="cehiknqtw" ;char s="fbla" ;int i,kj ;for(k=0 ; sk!= '0' k+)j=0 ;while(sk>=aj && aj!= '0')j+ ;for();aj=sk;puts(a);3.181下面程序的功能是對鍵盤輸入的兩個字符串進行比較,然后輸出兩個字符串中第一個不相同字符的ASCII碼之差。例如:輸入的兩個字符串分別為"abedefg"和"abceef ,則輸出為-1 o#inelude <stdio.
13、h>main()charstr1100,str2100,cint i,s ;gets(str1);gets(str2)printfC'Enter string 1:")printfC'Enter string 2:") i=0 ;)while(str1i = str2i && str1i!=i+ ;S=;Printf("%dn", s)3.19 1下面的函數(shù)expand在將字符串s復制到字符串t時, 表符轉換為可見的轉義字符表示,即用 'n'表示換行符,用't' expan d(cha
14、r s,char t)int ij ;for(i=j=0 ; si!= '0' i+)switch (si) case 'n': t tj+ = 'n' break ; case 't': t tj+ = 't' break ; default: t break ;二;=sitD=;3.20】下面的函數(shù)index(char s, char t)檢查字符串s若包含,則返回t在s中的開始位置(下標值),否則送回 index(char s, char t)int ij,k ;for(i=0 ; si!= '0
15、39; i+)forG=i,k=0 ; && sj=tk; j+,k+);if() return (i);return(-1)n3.21】下面程序的功能是計算S= k! ok=0long fun(int n)inti ;long s ;for(i=1 ; i ;i+)s*=i ;return();將其中的換行符和制表7F制表符O中是否包含字符串t,main()int k,n;long s ;scanf("%d",&n);s=;for(k=0 ; k<=n; k+) s+=; printf("%ldn",s) ;3.22】下面
16、程序的功能是顯示具有n個元素的數(shù)組S中的最大元素。#define N 20main()inti,aN ;for(i=0 ; i<N ; i+) scanf("%d",&ai);printf("%dn", );fmax(int s,int n)intk,p ;for(p=0,k=p ; p<n; p+) if(sp>sk);return (k);3.23 1下面程序的功能是由鍵盤輸入n,求滿足下述條件的 X、y:nx和ny的末3位數(shù)字相同,且xy, x、y、n均為自然數(shù),并使 x+y為最小。#inelude <stdio.h
17、>pow3(int n,int x)int i, last ;for(last=1 ,i=1; i<=x ; i+ )last=;return(last) ;main()intx,n,min,flag=1 ;scanf("%d", &n);for(min=2 ; flag ; min+) for(x=1 ; x<min && flag ; x+ ) if( && pow3(n,x)=pow3(n,min-x) printf("x=%d,y=%dn", x, min-x) ;3.24 1下面的程序是
18、用遞歸算法求a的平方根。求平方根的迭代公式如下:#inelude <math.h>double mysqrt( double a, double xO ) double x1, y ;=;if(fabs(x1-x0)>0.00001 ) y = mysqrt( ); else y = x1;return(y );main()double X ;printfC'Enterx: ”);scanf("%lf', &x);printf("The sqrt of %lf=%lfn", x, mysqrt( x, 1.0)已知第一位最
19、小的學生年齡為 10歲,其余學生 2歲,求第5個學生的年齡。3.25 1以下程序是計算學生的年齡。 的年齡一個比一個大#include <stdio.h> age( int n) int c ; if(n=1 )c=10;else c=; return (c);main()int n=5;p rintf("age:%dn",sum(int n)完成計算1n的累加和。3.26 1下面的函數(shù) sum(int n)if(n<=0)printf("data errorn") if(n=1); else ;3.27 1下面的函數(shù)是一個求階乘的遞歸
20、調用函數(shù)。;);facto(int n) if( n = = 1 ) else return(【3.28】組合問題,由組合的基本性質可知:(1) C(m,n)=C(n-m,n) C(m,n+1)=C(m,n)+C(m-1,n)公式(2)是一個遞歸公式,一直到滿足C(1,n)=n為止。當*2*01時,可先用公式(1)進 行簡化,填寫程序中的空白,使程序可以正確運行。#include"stdio.h"main()int m,n ;printf("lriput m,n=");scanf("%d%d", &m, &n);pri
21、ntf("The bination numbeers is %dn", bin(m,n);bin( int m, int n)int ;if( n<2*m ) m=n-m ;if( m=0 ) =1;else if(m=1);else ;return 0;3.29】下列函數(shù)是求一個字符串str的長度。? int strlen( char *str)?if( )return (0);? ? ? ? ? else return ();3.30 1用遞歸實現(xiàn)將輸入小于32768的整數(shù)按逆序輸出。如輸入12345,則輸出54321 o#include"stdio.h
22、"main()int n ;printfC'Input n : ”);scanf("%d",);r(n);printf("n") ;r( int m );printf("%d", m =;if();3.31 輸入n值,輸出高度為 n的等邊三角形。例如當 4時的圖形如下:*#include <stdio.h> void prt( char c, int n ) if( n>0) printf( "%c", c);main()int i, n ;scanf("%d"
23、;, &n);for( i=1; iv=n ; i+);p rintf("n") ;3.32 1下面的函數(shù)實現(xiàn)double y(double x, int n)if( n=0)return (0);else return (sqrt(x+(N層嵌套平方根的計算。)【3.33】函數(shù) revstr(s)回時s為字符串"edcba”。遞歸程序如下:revstr( char *s) char *p=s, c ;while(*p) P+;;if(s<p)c=*s ;*s=*p;將字符串s置逆,如輸入的實參 S為字符串”abode",則返revstr(
24、s+1);如下是由非遞歸實現(xiàn)的revstr(s) 函數(shù):revstr (s)char*s ; char *p=s, c ;while( *p ) P+; ;while( s<p)c=*s ; =*p ;*P- = c ;3.34】下面函數(shù)用遞歸調用的方法,將 str中存放的長度為n的字符串反轉過來, 例如原來是"ABCDE",反序為"EDCBA”。void invent(char *strchart ;t=*str ; *str=*(str+n-1) else ;,int n);*(str+ rM)=t; if( n>2 ) invent (,n-2)
25、3.35 1從鍵盤上輸入#inelude <stdio.h> int array10 ; sort( int *p, int *q ) int *max, *s ; if() return ; max=p; for( s=p+1 if( *s > *max) ;swap(); sort(); swap( int *x, int *y ) int ternp terrip=*x ;*x=*y ;*y=te mp ;10個整數(shù),程序按降序完成從大到小的排序。s<=q ; S+)main()int i ; printf("Enter data :n");f
26、or( i=0; i<10 ; i+);sort();scanf("%d", &arrayi) printfC'Output:") ; for( i=0; i<10 ; i+)printf("%d ", arrayi)存放時按逆序存放。例如:3.36 1下面函數(shù)的功能是將一個整數(shù)存放到一個數(shù)組中。483存放成"384" O#include <stdio.h>void convert(char *a, int n)inti ;if(i=n/10) !=0)convert( ,i);*a
27、=;char str10=""main()int number ;scanf("%d", &number) convert( str, number) puts (str) ;3.37 1下面程序的功能是實現(xiàn)數(shù)組元素中值的逆轉。#inelude <string.h>main()int i,n=10,a10=1,2,3,4,5,6,7,8,9,10;invert(a,n-1) ;for(i=0 ; i<10 ; i+)p rintf("%4d",ai);p rintf("n") ;inver
28、t(int *s,int num) int *t,k ;t=s+num;while()k=*s ;*s=*t ;*t=k ;3.38 下面程序通過指向整型的指針將數(shù)組a34 的內容按3行X 4列的格式輸出,請給Printf()填入適當?shù)膮?shù),使之通過指針P將數(shù)組元素按要求輸出。#inelude <stdio.h>int a34=1,2,3,4,5,6,7,8,9,10,11,12, *p=a;main()int ij;for(i=0;i<3 ;i+ )forG=0; j<4; j+)printf("%4d",);3.39 1下面程序的功能是:從鍵盤上
29、輸入一行字符,存入一個字符數(shù)組中,然后輸 出該字符串。#inelude <stdio.h>main () char str81, *sptr;int i ;for(i=0 ; i<80 ; i+ )stri=getchar();if(stri= 'n') break;stri=; sptr=str ;while( *sptr)putchar( *sptr )ASCII碼值從小到大排好序的3.40 1下面函數(shù)的功能是將字符變量的值插入已經按 字符串中。void fun (char *w,char x,int *n)inti,p=O ; while(x>wp
30、) ; for(i=*n ; i>=p ; i-);wp=x ;+*n ;3.41 1下面程序的功能是從鍵盤上輸入兩個字符串,對兩個字符串分別排序;然后 將它們合并,合并后的字符串按ASCII碼值從小到大排序,并刪去相同的字符。#inelude <stdio.h>strmerge(a , b, c) /*將已排好序的字符串a、b合并到c */char *a , *b , *c ; char t , *w;w=c;while( *a!= '0' *b!='0')t=?*a+:*b<*a?*b+ :(if( *w '0') *
31、w=t ;else if( t *w) *+w=t ; /*);/* 將*a、*b的小者存入t*/將與*w不相同的t存入W */while( *a != '0')/*if( *a != *w ) *+w=*a+ else a+ ;while( *b != '0')if( *b != *w ) *+w=*b+ else b+ ;*+w =;以下將a或b中剩下的字符存入W */strsort( char *s ) /* inti chart ,; for( n=0W+; for( i=0 for(j=i+1J , n;*w;*w != '0'i<
32、;n-1 ; i+);j<n ; j+ )將字符串S中的字符排序*/if( si>sj) main() char s1 100, s2100 , s3200;printf("nPlease Input First String:") scanf("%s" , s1);printf("nPlease Input Second String:") scanf("%s" , s2);strsort(sl) ;strsort(s2) ;='0'strmerge(s1 , s2, s3);prin
33、tf("nResult:%s" , s3);13.42 1已知某數(shù)列前兩項為 2和3,其后繼項根據前面最后兩項的乘積,按下列規(guī) 則生成: 若乘積為一位數(shù),則該乘積即為數(shù)列的后繼項; 若乘積為二位數(shù),則該乘積的十位上的數(shù)字和個位上的數(shù)字依次作為數(shù)列的兩個后繼項。下面的程序輸出該數(shù)列的前N項及它們的和,其中,函數(shù)sum(n,pa)返回數(shù)列的前N項和,并將生成的前N項存入首指針為pa的數(shù)組中,程序中規(guī)定輸入的 N值必須大于 2,且不超過給定的常數(shù)值MAXNUM例如:若輸入N的值為 10,則程序輸出如下內容:sum(10)=442361886424#include "st
34、dio.h"#define MAXNUM 100int sum(n, pa)int n, *pa ;int count, total, ternp;*pa = 2 ;=3 ;total=5 ;count=2 ;while( count+<n)temp = *(pa-1)*pa;if( temp<10)total += temp ;*(+pa) = tern p ; else=temp/10 ; total += *pa ;if( countvn) count +; pa+ ;=temp%10 ;total += *pa ;main()intn, *p, *q, numMA
35、XNUM ;do printfC'Input N=? (2<N<%d):", MAXNUM+1) scanf("%d", &n);while();printf("nsum(%d)=%dn", n, sum(n, num)for( p=num, q =; p<q ; p+ )printf("%4d", *p);p rintf("n") ;3.43 1下面程序的功能是輸入學生的姓名和成績,然后輸出。#include <stdio.h>struct Stu infc
36、har name20 ; /*學生姓名 */int score ; /* 學生成績 */,) Stu, *p ; main () p=&stu ; printfC'Enter name:") gets(); printfC'Enter score:") scanf("%d",); printfC'Output: %s, %dn"3.44 1下面程序的功能是按學生的姓名查詢其成績排名和平均成績。查詢時可連續(xù) 進行,直到輸入0時才結束。? ? #include <stdio.h>#inelude <
37、string.h>#define NUM 4? struct student? int rank ;char * name ;?; ?1?float score : stu = 3, "liming" , 89.3 ,4 , "zhanghua" , 78.2 ,1 , "anii" , 95.1 ,2 , "wangqi" , 90.6 main() char str10;int i ;? printfC'Enter a name");doscanf("%s" , st
38、r);for( i=0; i<NUM i+ )if()?printfC'Name :%8sn" printfC'Rank :%3dn" printfC'Average :%5.1fn";,),stui.rank);,stui.score)if( i>=NUM ) printfC'Not foundn") while( strcmp(str, "0")!=0)3.45 1下面程序的功能是從終端上輸入5個人的年齡、性別 和姓名,然后輸出。#include "stdio
39、.h"struct man char name20; unsigned age ;char sex7 ;main () struct man person5 data_i n(person,5) data_ out(person,5) data_in(stnjct man *p, int n ) struct man *q =;for( ; p<q; P+) printf( "age:sex:name") scanf("%u%s", &p->age, p->sex);data_out( struct man *p, i
40、nt n ) struct man *q =_;P+)%i4 %sn", p->name, p->age, p->sex)for( ; p<q; printf("%s ;3.46 1輸入N個整數(shù),儲存輸入的數(shù)及對應的序號,并將輸入的數(shù)按從小到大的順 序進行排列。要求:當兩個整數(shù)相等時,整數(shù)的排列順序由輸入的先后次序決定。例 如:輸入的第3個整數(shù)為5,第7個整數(shù)也為5,則將先輸入的整數(shù) 5排在后輸入的整 數(shù)5的前面。程序如下:#include "stdio.h"#defi ne N 10struct int no ;int num
41、; arrayN;mai n() int i ,j, numfor( i=0; i<N ; i+ ) prin tf("e nter No. %d:"scanf("%d" ,&num);,i);for(;j>=0&&arrayj.num num ;arrayj+1=arrayj ;arrayarrayfor( i=0 .num=num ; .no=i ;i<N ; i+ )printf("%d=%d , %dn",i, arrayi.num ,arrayi.no)【3.47】以下程序的功能是:
42、讀入一行字符一個鏈接式的結點序列,即先輸入的位于鏈表尾(如下圖),然后再按輸入的相反順 序輸出,并釋放全部結點。(如:a、y、z),按輸入時的逆序建立while( top );top=top->li nk pu tchar( p->info) free( p);【3.48】下面函數(shù)將指針 p2所指向的線性鏈表,串接到 p1所指向的鏈表的末端。假 定p1所指向的鏈表非空。#defi ne NULL 0struct link float a ;struct link *next ;;con cate nate ( p1, p2 )struct list *p1, *p2 ; if( p
43、1-> next=NULL )p1->next=p2 ;elsecon cate nate(,p2);#i nclude <stdio.h>mai n() struct node char info ;struct node *li nk; *top , *p ;char c ;top=NULL;while(c= getchar() p=(struct node *)malloc(sizeof(struct no de) p->info=c ;p->li nk=t op;to p=p ;【3.49】下面程序的功能是從鍵盤輸入一個字符串,然后反序輸出輸入的字符
44、串。#in clude <stdio.h>struct node char data ;struct node *li nk;*head ;main () char ch ;struct node *p ;head = NULL ;while( ch=getchar()!='n') p = (struct node *)malloc(sizeof(struct no de);p->data = ch ;p->link =;head =;while( p !=NULL ) Printf("%c", p->data) p = p-&
45、gt;link;0時才停止3.50 1下面程序的功能是從鍵盤上順序輸入整數(shù),直到輸入的整數(shù)小于 輸入。然后反序輸出這些整數(shù)。#include <stdio.h>struct dataintx ;struct data *link ;*P ; inputO int num ;struct data *q ;p rintfC'E nter data:”) ; scanf("%d", &num);if( num<0);q =;q->x = num ;q->li nk = p ;p=q; ;main() printf("Ent
46、er data until data<0:n") p=N U inputO ;printfC'Output:") ;while() printf("%dn", p->x);;3.51 1下面函數(shù)的功能是創(chuàng)建一個帶有頭結點的鏈表,將頭結點返回給主調函數(shù)。 鏈表用于儲存學生的學號和成績。新產生的結點總是位于鏈表的尾部。struct stude ntlong num ;int score :struct stude nt *next struct stude nt *creat()struct student *head=NULL,*tai
47、l long num ; int a ;tail= malloc(LEN);doscanf("%ld,%d",&num,&a) ; if(num!=0)if(head=NULL) head=tail ;else ;tail->num=num ; tail->score=a ; tail->next=(struct student *)malloc(LEN) else tail->next=NULL while(num!=O); return();新產生的結點總是【3.52】下面create函數(shù)的功能是建立一個帶頭結點的單向鏈表, 插入
48、在鏈表的末尾。單向鏈表的頭指針作為函數(shù)值返回。#inelude <stdio.h>#define LEN sizeof(struct student)struct stude ntlong num ;int score ;struct stude nt *next: struct stude nt *creat()struct student *head=NULL,*tail long num ;int a ;tail=()malloc(LEN); doscanf("%ld,%d",&num,&a) ; if(num!=0)if(head=NUL
49、L) head=tail else tail=tail->next;tail->num=num ;tail->score=a ;tail->next=( )malloc(LEN) else tail->next=NULLwhile(num!=O);;3.53 1下面程序的功能是統(tǒng)計文件中的字符的個數(shù)。#include <stdio.h>main()long num=0 ; *fp ;if(fp=fopen("fname.dat", "r")=NULL) printfC'Can't open the
50、 file!");exit(O);while() fgetc(fp) nu m+ p rintf("num=%dn",num) fclose(fp) ;【3.54】下面程序的功能是把從鍵盤輸入的文件(用作為文件結束標志)復制到一個名為second.txt的新文件中。#include <stdio.h>FILE *fp ;main()char ch ;if(fp=fopen( )=NULL)exit(O);while(ch=getchar()!='')fputc(ch,fp) ; ;3.55 1下面程序的功能是將磁盤上的一個文件復制到另一
51、個文件中,兩個文件名在 命令行中給出(假定給定的文件名無誤)。#include <stdio.h>main(int argc,char *argv)FILE &f1,*f2;if(argc< ) printfC'The mand line error!") exit(O);f1 =fopen(argv1, "r") f2=fopen(arhv2, "w") while() fputs(fgetc(f1), ( ; ;【3.56 1下面程序的功能是根據命令行參數(shù)分別實現(xiàn)一個正整數(shù)的累加或階乘。例如:如果可執(zhí)行文件
52、的文件名是 sm,則執(zhí)行該程序時輸入:"sm + 10",可以實現(xiàn)10的累 加;輸入:"sm -10",可以實現(xiàn)求10的階乘。#inelude <stdio.h>#include <stdlib.h>main (int argc,char *argv)int n ;void sum(),mult() ;void (*funcp)();n=atoi(argv2);if(argc!=3 | *=0) dispfomn();switch () case funep=sum ;break ;case funcp=mult;break ;d
53、efault: dispfonn();void sum(int m)int i,s=0;for(i=1 ; i<m ; i+ ) ;p rintf("sum=%dn",s) void mult(int m) long int i, s=1 for(i=1 ; i<=m; i+) s *= i ;printf("mult= %ldn"dispfonn() printf ("usage:sm n(+/!) (n>O)n") exit (0);3.57 1下面程序的功能是鍵盤上輸入一個字符串,把該字符串中的小寫字母轉換為
54、大寫字母,輸出到文件 test.txt 中,然后從該文件讀出字符串并顯示出來。#include <stdio.h>main() char str100;int i=0;FILE *fp ;if(fp=fopen("test.txt",)=NULL) printf("Can't open the file.n");exit(O);printfC'Input a string:n") gets(str); while(stri)if(stri>= 'a'&&stri<= N)
55、stri=; fputc(stri,fp) ; i+ ;fclose(fp) ;fp=fopen("test.txt",);fgets(str,strlen(str)+1 ,fp) p rintf("%sn",str) ;fclose(fp) ;3.58 1下面程序的功能是將從終端上讀入的10個整數(shù)以二進制方式寫入名為"bi.dat"的新文件中。#include <stdio.h>FILE *fp ;main()intij ;if( fp=fopen( ,"wb") = NULL ) exit (0);
56、for( i=0; i<10 ; i+)scanf("%d", &j);fwrite( ,sizeof(int), 1,)fclose( fp)從文件中檢索出六種C語言的關鍵字,并統(tǒng)計、本程序中規(guī)定:單詞是一個以空格或't'、'n'3.59 1以字符流形式讀入一個文件, 輸出每種關鍵字在文件中出現(xiàn)的次數(shù)。 結束的字符串。#inelude <stdio.h>#inelude <string.h>FILE *cp ;char fname20, buf1OO ;int num ; struct key char word10 ; int count ;keyword= ”if", 0, "char", 0, "int", 0, "else", 0,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 沈陽理工大學《化工設計基礎》2023-2024學年第一學期期末試卷
- 沈陽理工大學《電路》2022-2023學年期末試卷
- 沈陽理工大學《產品調研方法》2022-2023學年第一學期期末試卷
- 歸還租賃押金合同范本
- 貴州總承包合同條款
- 合肥研究院研究生公寓租住協(xié)議書
- 輔警體測標準
- 2024空氣凈化器設備租賃合同模板
- 2024服裝加盟合同范本
- 沈陽理工大學《EDA技術與VHD語言》2022-2023學年期末試卷
- 2024年時事政治試題(帶答案)
- 第7課《回憶我的母親》課件-2024-2025學年統(tǒng)編版語文八年級上冊
- 創(chuàng)新方法論智慧樹知到期末考試答案章節(jié)答案2024年西安理工大學
- (高清版)JTGT 3610-2019 公路路基施工技術規(guī)范
- 2024春期國開電大??啤渡鐣{查研究與方法》在線形考(形成性考核一至四)試題及答案
- MOOC 航空航天材料概論-南京航空航天大學 中國大學慕課答案
- 個人生涯發(fā)展展示
- 生涯發(fā)展報告
- 幼兒園大班語言:《跑跑鎮(zhèn)》 課件
- GB/T 9119-2010板式平焊鋼制管法蘭
- 肺炎PPTPPT課件
評論
0/150
提交評論