全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C上機(jī)題庫(kù).doc_第1頁(yè)
全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C上機(jī)題庫(kù).doc_第2頁(yè)
全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C上機(jī)題庫(kù).doc_第3頁(yè)
全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C上機(jī)題庫(kù).doc_第4頁(yè)
全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)C上機(jī)題庫(kù).doc_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1.1程序填空題:給定程序中,函數(shù)fun的功能是,將形參s所指字符串中的所有數(shù)字字符順序前移,其他字符順序后移,處理后新字符串的首地址作為函數(shù)值返回。例如,s所指字符串為:asd123fgh5#43df,處理后新字符串為:12345asdfgh#df。請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANK1.C中。 不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include #include #include #include char *fun(char *s) int i, j, k, n; char *p, *t; n=strlen(s)+1; t=(char*)malloc(n*sizeof(char); p=(char*)malloc(n*sizeof(char); j=0; k=0; for(i=0; in; i+) if(isdigit(si) /*found*/ pj=si; j+; else tk=si; k+; /*found*/ for(i=0; ik; i+) pj+i= ti; pj+k=0;/*found*/ return p;main() char s80; printf(Please input: ); scanf(%s,s); printf(nThe result is: %sn,fun(s);1.2程序修改題:給定程序MODI1.C中函數(shù)fun的功能是:首先把b所指字符串中的字符按逆序存放,然后將a所指字符和b所指字符串中的字符,按排列的順序交叉合并到c所指數(shù)組中,過(guò)長(zhǎng)的剩余字符接在c所指數(shù)組的尾部。例如,當(dāng)a所指字符串中的內(nèi)容為”abcdefg”,b所指字符串中的內(nèi)容為”1234”時(shí),c所指數(shù)組中的內(nèi)容應(yīng)該為“a4b3c2d1efg”;而當(dāng)a所指字符串中的內(nèi)容為”1234”,b所指字符串中的內(nèi)容為”abcdefg”時(shí),c所指數(shù)組中的內(nèi)容應(yīng)該為”1g2f3e4dcba”。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include #include void fun( char *a, char *b, char *c ) int i , j; char ch; i = 0; j = strlen(b)-1;/*found*/ while ( i j ) while(ij) ch = bi; bi = bj; bj = ch; i+; j-; while ( *a | *b ) /*found*/ If ( *a ) if(*a) *c = *a; c+; a+; if ( *b ) *c = *b; c+; b+; *c = 0;main() char s1100,s2100,t200; printf(nEnter s1 string : );scanf(%s,s1); printf(nEnter s2 string : );scanf(%s,s2); fun( s1, s2, t ); printf(nThe result is : %sn, t );1.3程序設(shè)計(jì)題:函數(shù)fun的功能是,將s所指字符串中下標(biāo)為偶數(shù)同時(shí)ASCII值為奇數(shù)的字符刪除,s所指串中剩余的字符形成的新串放在t所指的數(shù)組中。例如,若s所指字符串中的內(nèi)容為”ABCDEFG12345”,其中字符C的ASCII碼值為奇數(shù),在數(shù)組中的下標(biāo)為偶數(shù),因此必須刪除,而字符1的ASCII碼值為奇數(shù),在數(shù)組中的下標(biāo)也為奇數(shù),因此不應(yīng)當(dāng)刪除,其它依此類(lèi)推。最后t所指的數(shù)組中的內(nèi)容應(yīng)是”BDF12345”。注意:部分源程序存在文件PROG1.C中。請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。#include #include void fun(char *s, char t)int i; for (i=0;*s;i+,s+)if(i%2!=0|(*s)%2=0) *t+=*s;main() char s100, t100;void NONO (); printf(nPlease enter string S:); scanf(%s, s); fun(s, t); printf(nThe result is: %sn, t); NONO();void NONO ()/* 本函數(shù)用于打開(kāi)文件,輸入數(shù)據(jù),調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。 */ char s100, t100 ; FILE *rf, *wf ; int i ; rf = fopen(K:k0924001824in.dat,r) ; wf = fopen(K:k0924001824out.dat,w) ; for(i = 0 ; i 10 ; i+) fscanf(rf, %s, s) ; fun(s, t) ; fprintf(wf, %sn, t) ; fclose(rf) ; fclose(wf) ;2.1程序填空題:給定程序中,函數(shù)fun的功能是:將形參s所指字符串中的所有字母字符順序前移,其他字符順序后移,處理后新字符串的首地址作為函數(shù)值返回。例如,s所指字符串為:asd123fgh543df,處理后新字符串為:asdfghdf123543。請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANK1.C中。 不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include #include #include char *fun(char *s) int i, j, k, n; char *p, *t; n=strlen(s)+1; t=(char*)malloc(n*sizeof(char); p=(char*)malloc(n*sizeof(char); j=0; k=0; for(i=0; i=a)&(si=A)&(si=Z) /*found*/ tj=si; j+; else pk=si; k+; /*found*/ for(i=0; ik; i+) tj+i=pi;/*found*/ tj+k= 0; return t;main() char s80; printf(Please input: ); scanf(%s,s); printf(nThe result is: %sn,fun(s);2.2程序修改題:給定程序MODI1.C中函數(shù)fun的功能是:將s所指字符串中最后一次出現(xiàn)的與t1所指字符串相同的子串替換成t2所指字符串,所形成的新串放在w所指的數(shù)組中。在此處,要求t1和t2所指字符串中的長(zhǎng)度相同。例如,當(dāng)s所指字符串中的內(nèi)容為:”abcdabfabc”,t1所指子串中的內(nèi)容為:”ab”,t2所指子串中的內(nèi)容為:”99”時(shí),結(jié)果,在w所指的數(shù)組中的內(nèi)容應(yīng)為:”abcdabf99c”。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include #include void fun (char *s, char *t1, char *t2 , char *w) char *p , *r, *a; strcpy( w, s );/*found*/ while ( w ) while(*w) p = w; r = t1; while ( *r )/*found*/ IF ( *r = *p ) if(*r=*p) r+; p+; else break; if ( *r = 0 ) a = w; w+; r = t2; while ( *r ) *a = *r; a+; r+; main() char s100, t1100, t2100, w100; printf(nPlease enter string S:); scanf(%s, s); printf(nPlease enter substring t1:); scanf(%s, t1); printf(nPlease enter substring t2:); scanf(%s, t2); if ( strlen(t1)=strlen(t2) ) fun( s, t1, t2, w); printf(nThe result is : %sn, w); else printf(nError : strlen(t1) != strlen(t2)n);2.3程序設(shè)計(jì)題:函數(shù)fun的功能是,將s所指字符串中ASCII值為奇數(shù)的字符刪除,串中剩余的字符形成的新串放在t所指的數(shù)組中。例如,若s所指字符串中的內(nèi)容為”ABCDEFG12345”,其中字符A的ASCII碼值為奇數(shù)、字符1的ASCII碼值也為奇數(shù)、都應(yīng)當(dāng)刪除,其它依此類(lèi)推。最后t所指的數(shù)組中的內(nèi)容應(yīng)是”BDF24”。注意:部分源程序存在文件PROG1.C中。請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。#include #include void fun(char *s, char t) while (*s) if(*s%2=0) *t+=*s; s+; main() char s100, t100;void NONO (); printf(nPlease enter string S:); scanf(%s, s); fun(s, t); printf(nThe result is: %sn, t); NONO();void NONO ()/* 本函數(shù)用于打開(kāi)文件,輸入數(shù)據(jù),調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。 */ char s100, t100 ; FILE *rf, *wf ; int i ; rf = fopen(K:k1024001825in.dat,r) ; wf = fopen(K:k1024001825out.dat,w) ; for(i = 0 ; i 10 ; i+) fscanf(rf, %s, s) ; fun(s, t) ; fprintf(wf, %sn, t) ; fclose(rf) ; fclose(wf) ;3.1程序填空題:給定程序中,函數(shù)fun的功能是,將形參給定的字符串、整數(shù)、浮點(diǎn)數(shù)寫(xiě)到文本文件中,再用字符方式從此文本文件中逐個(gè)讀入并顯示在終端屏幕上。請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANK1.C中。 不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include void fun(char *s, int a, double f)/*found*/ FILE * fp; char ch; fp = fopen(file1.txt, w); fprintf(fp, %s %d %fn, s, a, f); fclose(fp); fp = fopen(file1.txt, r); printf(nThe result :nn); ch = fgetc(fp);/*found*/ while (!feof(fp) /*found*/ putchar(ch); ch = fgetc(fp); putchar(n); fclose(fp);main() char a10=Hello!; int b=12345; double c= 98.76; fun(a,b,c);3.2程序修改題:給定程序MODI1.C中函數(shù)fun的功能是:依次取出字符串中所有數(shù)字字符,形成新的字符串,并取代原字符串。 請(qǐng)改正函數(shù)fun中指定部位的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include void fun(char *s) int i,j; for(i=0,j=0; si!=0; i+) if(si=0 & si=9)/*found*/ sj=si; sj+=si;/*found*/ sj=0; sj=0;main() char item80; printf(nEnter a string : );gets(item); printf(nnThe string is : %sn,item); fun(item); printf(nnThe string of changing is : %sn,item );3.3程序設(shè)計(jì)題:請(qǐng)編寫(xiě)函數(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。注意:部分源程序存在文件PROG1.C中。請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。#include #define M 3#define N 4void fun(char sN, char *b) int i,j,n=0; for(i=0; i N;i+) /* 請(qǐng)?zhí)顚?xiě)相應(yīng)語(yǔ)句完成其功能 */ for (j=0;jM;j+) bn+=sji; bn=0;main() char a100,wMN=W,W,W,W,S,S,S,S,H,H,H,H; int i,j;void NONO (); printf(The matrix:n); for(i=0; iM; i+) for(j=0;jN; j+)printf(%3c,wij); printf(n); fun(w,a); printf(The A string:n);puts(a); printf(nn); NONO();void NONO ()/* 請(qǐng)?jiān)诖撕瘮?shù)內(nèi)打開(kāi)文件,輸入測(cè)試數(shù)據(jù),調(diào)用 fun 函數(shù),輸出數(shù)據(jù),關(guān)閉文件。 */ FILE *rf, *wf ; int i,j,k ; char a100,wMN, b ; rf = fopen(K:k1024001826in.dat,r) ; wf = fopen(K:k1024001826out.dat,w) ; for(k = 0 ; k 10 ; k+) for(i = 0 ; i M ; i+) for(j = 0 ; j N ; j+) fscanf(rf, %c, &wij) ; fscanf(rf, %c, &b) ; fun(w, a) ; fprintf(wf, %sn, a) ; fclose(rf) ; fclose(wf) ;4.1程序填空題:給定程序中,函數(shù)fun的功能是:找出NN矩陣中每列元素中的最大值,并按順序依次存放于形參b所指的一維數(shù)組中。請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANK1.C中。 不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include #define N 4void fun(int (*a)N, int *b) int i,j; for(i=0; iN; i+) /*found*/ bi= a0i; for(j=1; jN; j+)/*found*/ if(bi aji) bi=aji; main() int xNN= 12,5,8,7,6,1,9,3,1,2,3,4,2,8,4,3 ,yN,i,j; printf(nThe matrix :n); for(i=0;iN; i+) for(j=0;jN; j+) printf(%4d,xij); printf(n); /*found*/ fun(x,y); printf(nThe result is:); for(i=0; iN; i+) printf(%3d,yi); printf(n);4.2程序修改題:給定程序MODI1.C中函數(shù)fun的功能是:交換主函數(shù)中兩個(gè)變量的值。例如:若變量a中的值原為8,b中的值為3。程序運(yùn)行后a中的值為3,b中的值為8。 請(qǐng)改正程序中的錯(cuò)誤,使它能計(jì)算出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include /*found*/void fun(int x,int y) void fun(int *x,int *y) int t;/*found*/ t=x;x=y;y=t; t=*x;*x=*y;*y=t;main() int a,b; a=8;b=3; fun(&a,&b); printf(%d, %dn,a,b);4.3程序設(shè)計(jì)題:請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:求出小于或等于lim的所有素?cái)?shù)并放在aa數(shù)組中,函數(shù)返回所求出的素?cái)?shù)的個(gè)數(shù)。函數(shù)fun中給出的語(yǔ)句僅供參考。 注意:部分源程序存在文件PROG1.C中。請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。#include #define MAX 100int fun(int lim, int aaMAX) /* 以下代碼僅供參考 */ int i,j,k=0; /* 其中變量k用于統(tǒng)計(jì)素?cái)?shù)個(gè)數(shù) */ for(i=2;i=lim;i+) /* 以下完成判斷aa數(shù)組中小于或等于lim的素?cái)?shù)并統(tǒng)計(jì)個(gè)數(shù) */for (j=2;j=i) aak+=i; return k;main() int limit, i, sum;void NONO (); int aaMAX ; printf(輸入一個(gè)整數(shù)); scanf(%d, &limit); sum=fun(limit, aa); for(i=0 ; i sum ; i+) if(i % 10 = 0 & i != 0) printf(n) ; printf(%5d, aai) ; NONO();void NONO ()/* 請(qǐng)?jiān)诖撕瘮?shù)內(nèi)打開(kāi)文件,輸入測(cè)試數(shù)據(jù),調(diào)用 fun 函數(shù), 輸出數(shù)據(jù),關(guān)閉文件。 */ FILE *rf, *wf ; int limit, i, sum, aaMAX ; rf = fopen(K:k1024001827in.dat,r) ; wf = fopen(K:k1024001827out.dat,w) ; fscanf(rf, %d, &limit); sum=fun(limit, aa); for(i=0 ; i sum ; i+) fprintf(wf,%dn, aai) ; fclose(rf) ; fclose(wf) ;5.1程序填空題:給定程序中,函數(shù)fun的功能是:將形參n中,各位上為偶數(shù)的數(shù)取出,并按原來(lái)從高位到低位相反的順序組成一個(gè)新的數(shù),并作為函數(shù)值返回。例如,輸入一個(gè)整數(shù):27638496,函數(shù)返回值為:64862。 請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANK1.C中。 不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include unsigned long fun(unsigned long n) unsigned long x=0; int t; while(n) t=n%10;/*found*/ if(t%2=0)/*found*/ x=x*10+t;/*found*/ n=n/10; return x;main() unsigned long n=-1; while(n99999999|n0) printf(Please input(0n100000000): ); scanf(%ld,&n); printf(nThe result is: %ldn,fun(n);5.2程序修改題:給定程序MODI1.C中函數(shù)fun的功能是:將長(zhǎng)整型數(shù)中每一位上為奇數(shù)的數(shù)依次取出,構(gòu)成一個(gè)新數(shù)放在t中。高位仍在高位,低位仍在低位。例如,當(dāng)s中的數(shù)為:87653142時(shí),t中的數(shù)為:7531。 請(qǐng)改正程序中的錯(cuò)誤,使它能計(jì)算出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include void fun (long s, long *t) int d; long sl=1;/*found*/ t = 0; *t=0; while ( s 0) d = s%10;/*found*/ if (d%2 = 0) if(d%2!=0) *t = d * sl + *t;sl *= 10; s /= 10; main() long s, t; printf(nPlease enter s:); scanf(%ld, &s); fun(s, &t); printf(The result is: %ldn, t);5.3程序設(shè)計(jì)題:請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:實(shí)現(xiàn)兩個(gè)字符串的連接(不使用庫(kù)函數(shù)strcat),即把p2所指的字符串連接到p1所指的字符串后。例如,分別輸入下面兩個(gè)字符串: FirstString SecondString程序輸出: FirstString-SecondString 注意:部分源程序存在文件PROG1.C中。請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。#include void fun(char p1, char p2) while (*p1) p1+; while(*p2) *p1+=*p2+; *p1=0;main() char s180, s240 ;void NONO (); printf(Enter s1 and s2:n) ; scanf(%s%s, s1, s2) ; printf(s1=%sn, s1) ; printf(s2=%sn, s2) ; printf(Invoke fun(s1,s2):n) ; fun(s1, s2) ; printf(After invoking:n) ; printf(%sn, s1) ; NONO() ;void NONO ()/* 本函數(shù)用于打開(kāi)文件,輸入測(cè)試數(shù)據(jù),調(diào)用fun函數(shù),輸出數(shù)據(jù),關(guān)閉文件。*/ int i ; FILE *rf, *wf ; char s180, s240 ; rf = fopen(K:k1024001828in.dat,r) ; wf = fopen(K:k1024001828out.dat,w) ; for(i = 0 ; i 10 ; i+) fscanf(rf, %s, s1) ; fscanf(rf, %s, s2) ; fun(s1, s2) ; fprintf(wf, %sn, s1) ; fclose(rf) ; fclose(wf) ;6.1程序填空題:給定程序中,函數(shù)fun的功能是:計(jì)算形參x所指數(shù)組中N個(gè)數(shù)的平均值(規(guī)定所有數(shù)均為正數(shù)),將所指數(shù)組中小于平均值的數(shù)據(jù)移至數(shù)組的前部,大于等于平均值的數(shù)據(jù)移至x所指數(shù)組的后部,平均值作為函數(shù)值返回,在主函數(shù)中輸出平均值和移動(dòng)后的數(shù)據(jù)。例如,有10 個(gè)正數(shù):46 30 32 40 6 17 45 15 48 26,平均值為:30.500000 移動(dòng)后的輸出為:30 6 17 15 26 46 32 40 45 48 請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANK1.C中。 不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include #include #define N 10double fun(double *x) int i, j; double av, yN; av=0;/*found*/ for(i=0; iN; i+) av +=xi; av/=N; for(i=j=0; iN; i+) if( xiav )/*found*/ yj=xi; xi=-1; j+; i=0; while(iN) if( xi!= -1 ) yj+=xi;/*found*/ i+; for(i=0; iN; i+)xi = yi; return av;main() int i; double xN; for(i=0; iN; i+) xi=rand()%50; printf(%4.0f ,xi); printf(n); printf(nThe average is: %fn,fun(x); printf(nThe result :n,fun(x); for(i=0; iN; i+) printf(%5.0f ,xi); printf(n);6.2程序修改題:給定程序MODI1.C中函數(shù)fun的功能是:統(tǒng)計(jì)字符串中各元音字母(即:A、E、I、O、U)的個(gè)數(shù)。注意:字母不分大小寫(xiě)。例如:若輸入:THIs is a boot,則輸出應(yīng)該是:1、0、2、2、0。 請(qǐng)改正程序中的錯(cuò)誤,使它能計(jì)算出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include void fun ( char *s, int num5 ) int k, i=5; for ( k = 0; k= 0) numi+; main( ) char s181; int num15, i; printf( nPlease enter a string: ); gets( s1 ); fun ( s1, num1 ); for ( i=0; i 5; i+ ) printf (%d ,num1i); printf (n);6.3程序設(shè)計(jì)題:請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:求出二維數(shù)組周邊元素之和,作為函數(shù)值返回。二維數(shù)組中的值在主函數(shù)中賦予。例如;二維數(shù)組中的值為1 3 5 7 92 9 9 9 46 9 9 9 81 3 5 7 0則函數(shù)值為61。 注意:部分源程序存在文件PROG1.C中。請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。#include #define M 4#define N 5int fun ( int aMN ) int i,j,k=0; for (i=0;iM;i+) for (j=0;jN;j+)if(i=0|i=M-1|j=0|j=N-1) k+=aij; return k;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;void NONO (); printf ( The original data is : n ); for ( i=0; iM; i+ ) for ( j =0; jN; j+ ) printf( %6d, aaij ); printf (n); y = fun ( aa ); printf( nThe sum: %dn , y ); printf(n); NONO( );void NONO ()/* 請(qǐng)?jiān)诖撕瘮?shù)內(nèi)打開(kāi)文件,輸入測(cè)試數(shù)據(jù),調(diào)用 fun 函數(shù), 輸出數(shù)據(jù),關(guān)閉文件。 */ int i, j, y, k, aaMN ; FILE *rf, *wf ; rf = fopen(K:k1024001829in.dat,r) ; wf = fopen(K:k1024001829out.dat,w) ; for(k = 0 ; k 10 ; k+) for(i = 0 ; i M ; i+) for(j = 0 ; j N ; j+) fscanf(rf, %d, &aaij) ; y = fun ( aa ); fprintf(wf, %dn, y) ; fclose(rf) ; fclose(wf) ;7.1程序填空題:給定程序中,函數(shù)fun的功能是:找出100至x(x999)之間各位上的數(shù)字之和為15的所有整數(shù),然后輸出;符合條件的整數(shù)個(gè)數(shù)作為函數(shù)值返回。例如,當(dāng)n值為500時(shí),各位數(shù)字之和為15的整數(shù)有:159、168、177、186、195、249、258、267、276、285、294、339、348、357、366、375、384、393、429、438、447、456、465、474、483、492。共有26個(gè)。 請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。注意:源程序存放在考生文件夾下的BLANK1.C中。 不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include int fun(int x) int n, s1, s2, s3, t;/*found*/ n=0; t=100;/*found*/ while(t999|x0) printf(Please input(0x=999): ); scanf(%d,&x); printf(nThe result is: %dn,fun(x);7.2程序修改題:給定程序MODI1.C中函數(shù)fun的功能是:先將s所指字符串中的字符按逆序存放到t所指字符串中,然后把s所指串中的字符按正序連接到期t所指串的后面。例如:當(dāng)s所指的字符串為:”ABCDE”時(shí) , 則t所指的字符串應(yīng)為:”EDCBAABCDE”。 請(qǐng)改正程序中的錯(cuò)誤,使它能計(jì)算出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include #include void fun (char *s, char *t)/*found*/ int i; int i,sl; sl = strlen(s); for (i=0; isl; i+)/*found*/ ti = ssl-i; ti=ssl-i-1; for (i=0; isl; i+) tsl+i = si; t2*sl = 0;main() char s100, t100; printf(nPlease enter string s:); scanf(%s, s); fun(s, t); printf(The result is: %sn, t);7.3程序設(shè)計(jì)題:請(qǐng)編寫(xiě)函數(shù)fun,函數(shù)的功能是:將a、b中的兩個(gè)兩位正整數(shù)合并形成一個(gè)新的整數(shù)放在c中。合并的方式是:將a中的十位和個(gè)位數(shù)依次放在變量c的百位和個(gè)位上,b中的十位和個(gè)位數(shù)依次放在變量c的千位和十位上。例如,當(dāng)a=45,b=12。調(diào)用該函數(shù)后,c=1425。 注意:部分源程序存在文件PROG1.C中。請(qǐng)勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。#include void fun(int a, int b, long *c) *c=a/10*100+a%10+b/10*1000+b%10%10;main() /* 主函數(shù) */ int a,b; long c;void NONO (); printf(Input a, b:); scanf(%d%d, &a, &b); fun(a, b, &c); printf(The result is: %ldn

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論