




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語(yǔ)言機(jī)試模擬試題一、改錯(cuò)題:(30分)1、求一維數(shù)組a中的值為偶數(shù)的元素之和。#include <stdio.h> sum ( int arr ,int n ) int i,s; s = 0; for ( i=0; i<n; i+) if (arri % 2 = 0) /*found*/ s=s+i;改為:s = s + arri; return (s); void main() int a10=10,4,2,7,3,12,5,34,5,9,i,s; /*found*/ s = sum( a ,2 ); 改為:s = sum( a ,10 ); printf("T
2、he result is: %dn", s); 2、求一維數(shù)組a中的值為奇數(shù)的元素之和。#include <conio.h> #include <stdio.h> int sum( int b ,int n ) int i,s = 0; for ( i=0; i<n; i+) if (bi % 2 = 1) /*found*/ s = s + bi 改為: return (s); void main() int a12=10,4,2,7,3,12,5,34,5,9,21,19,n; /*found*/ n = sum(a,2); 改為: printf(&
3、quot;The result is :%dn",n ); 3、求二維數(shù)組a中的最大值和最小值。#include <stdio.h> void main() int a33=4,4,34,37,3,12,5,6,5,i,j,max,min; /clrscr(); max = min = a00; for ( i=0; i<3; i+) /*found*/ for ( j=1; j<3; j+)改為:for ( j=0; j<3; j+) if ( max < aij ) max = aij; /*found*/ if (min < aij)
4、改為:if (min > aij) min = aij; printf("The max is: %dn", max); printf("The min is: %dn", min); 4、求一維數(shù)組a中的最大元素及其下標(biāo)。 #include <stdio.h> void main() int a10=1,4,2,7,3,12,5,34,5,9,i,max,pos; /clrscr(); max = a0; pos = 0; for ( i=1; i<10; i+) /*found*/ if (max > ai) 改為:if
5、 (max< ai) max = ai; /*found*/i = pos; 改為:pos = i; printf("The max is: %d ,pos is: %dn", max , pos); 5、猴子吃桃的問(wèn)題,求第一天的桃子數(shù)。 #include <stdlib.h> #include <math.h> void main() int i,j,x,p; /clrscr(); x=1; /*found*/ j=12; 改為:j=11; while(j>=1) p=(x+1)*2; /*found*/ p=x; 改為:x = p;
6、 j-; printf("total is %dn",p); 6、求一維數(shù)組a中的值為奇數(shù)的元素的平均值。 #include <stdio.h> double average( int arr , int n ) int k=0,i; double s; s = 0; for ( i=0 ;i<n; i+) /*found*/ if (arri % 2 = 1) 改為:if (arri % 2 = =1) s = s + arri; k+; return (s/k) ; void main() int a12=10,4,2,7,3,12,5,34,5,9,
7、21,18; double s; / clrscr(); /*found*/ s = average(a12,12); 改為:s = average(a,12); printf("The result is: %.2fn", s); 二、填空題:(30分)1、 程序的功能是:在第一個(gè)循環(huán)中從鍵盤上給a數(shù)組的前M(M<100)個(gè)數(shù)組元素依次賦值,在第二個(gè)循環(huán)中使a數(shù)組前M個(gè)元素中的值對(duì)稱折疊,在最后一個(gè)循環(huán)中輸出折疊后的 a數(shù)組的前M個(gè)元素。程序如下:#define M 5 void main( ) int i,a100,t; /clrscr(); for(i
8、=0;i<M;i+) /*found*/ _(1)_ -填寫的語(yǔ)句為: scanf(“%d”:,&ai); /*found*/ for(i=0;_(2)_;i+) -填寫的語(yǔ)句為:i<M/2 aM-i-1=ai; for(i=0;i<M;i+) printf("%5d",ai); printf("n"); 2、 計(jì)算正整數(shù)num的各位上的數(shù)字之和。#include <stdio.h> void main( ) int num,k; /clrscr() ; /*found*/ _(1)_; 填寫的語(yǔ)句為:k=0; pr
9、intf("Please enter a number:") ; scanf("%d",&num) ; do /*found*/ k=_(2)_ ; 填寫的語(yǔ)句為:k=k+num%10; num/=10; while(num) ; printf("n%dn",k) ; 3、 求cman=m!/n!*(m-n)!之值,例如:m=12,n=2時(shí),cman is 66#include <math.h> #include <stdio.h> long int fun(int x) long int s=1; i
10、nt i; for (i=1;i<=x;i+) s*=i; /*found*/ _(1)_; 填寫的語(yǔ)句為:return s; void main() long int m=12,n=2,s1,s2,s3; /clrscr(); s1=fun(m); s2=fun(n); s3=fun(m-n); /*found*/ printf("Cmn is : %ld",_(2)_ ); 填寫的語(yǔ)句為:s1/(s2*s3) 4、 輸出Fabonacci數(shù)列1,1,2,3,5前20項(xiàng),要求每位輸出5個(gè)數(shù)。#include "stdio.h" void main
11、() long int f20=1,1; int i; /clrscr(); /*found*/ _(1)_;填寫的語(yǔ)句:int j=0; for(i=2;i<20;i+) fi=fi-1+fi-2; /*found*/ if(_(2)_) printf("n");填寫的語(yǔ)句:j+%5=0 printf("%8ld",fi); printf("n"); 5、 求兩個(gè)正整數(shù)m,n之間所有既能被3整除也能被7整除的整數(shù)之和。#include <math.h> #include <stdio.h> main()
12、 int m,n,i,t; long int s=0; /clrscr(); scanf("%d,%d",&m,&n); if( m>n ) t=m; m=n; n=t; /*found*/ for (_(1)_;i+)填寫的語(yǔ)句:i=m;i<=n; if ( i%3=0 && i%7=0 ) s += i; /*found*/ printf("Sum is : _(2)_n",s ); 填寫的語(yǔ)句:%ld 6、 從鍵盤輸入一個(gè)由數(shù)字組成的字符串(字符串長(zhǎng)度小于8),將該字符串轉(zhuǎn)換成一個(gè)十進(jìn)制數(shù)。例如:從鍵盤輸
13、入12345,則程序運(yùn)行的結(jié)果應(yīng)當(dāng)為:n=12345#include "stdio.h"#include "string.h" void main() char s10; int i; long int n; /clrscr(); /*found*/ _(1)_; 填寫的語(yǔ)句:n=0 scanf("%s",s); for(i=0;i<strlen(s);i+) /*found*/ n=n*10+_(2)_; 填寫的語(yǔ)句:i+1 printf("n=%ldn",n); 7、 從鍵盤輸入一個(gè)正整數(shù)n,計(jì)算并輸出n
14、的階乘。#include <math.h> #include <conio.h> #include <stdio.h> long fac( int n ) int i; long t=1; for( i=2;i<=n;i+) t = t*i; return (t); void main() int n; long int s; / clrscr(); printf("Enter an integer number:"); /*found*/ _(1)_; 填寫的語(yǔ)句:scanf("%ld",&n); s
15、= fac(n); /*found*/ printf("The result is : _(2)_n",s); 填寫的語(yǔ)句:%ld 三、編程題:(40分)1按下面的公式求s的近似值,直到最后一項(xiàng)值的絕對(duì)值小于x為止,x的值由鍵盤輸入,結(jié)果保留4位小數(shù)。分析:這是一個(gè)求若干個(gè)數(shù)之和的累加問(wèn)題,終止循環(huán)的條件是最后一項(xiàng)值的絕對(duì)值小于x,x的值由鍵盤輸入,當(dāng)退出循環(huán)時(shí),sum的值已經(jīng)累加了最后一項(xiàng)a的值,因此要減去最后一項(xiàng)a的值。S=1-1/3+1/5-1/9+.+(-1)(n-1)1/2n-1#include "stdio.h" #include "
16、;math.h" #include "stdlib.h" double fun(double x) /*begin*/int y,i=1; double a,sum=0.0; do if(i%2=0) y=-1; else y=1; a=y*1.0/(2*i-1); sum=sum+a; i+; while (fabs(a)> =x);return sum-a; /*end*/ void main() double x,sum; printf("Enter x:n"); scanf("%lf",&x); sum
17、=fun(x); printf("sum=%.4fn",sum); NONO( ); NONO( ) FILE *fr,*fw; int i; double x; fr=fopen("D:exam03200310PROGIN.DAT","r"); fw=fopen("D:exam03200310PROGOUT.DAT","w"); for(i=1;i<=5;i+) fscanf(fr,"%lf",&x); fprintf(fw,"s=%.4fn&quo
18、t;,fun(x); fclose(fr); fclose(fw); 2、將一個(gè)4位的整數(shù)m拆開(kāi),然后按相反的順序輸出,每輸出一位數(shù)其后留2個(gè)空格。如m=1234,輸出的結(jié)果應(yīng)為m=1234, 4 3 2 1.程序如下: (同學(xué)們自己編程,程序放在/*begin*/和/*end*/之間)#include "stdio.h" #include "math.h" #include "stdlib.h" void main() int m=1234,a,b,c,d; /*begin*/ /*end*/ printf("m=%d,%
19、d %d %d %dn",m,a,b,c,d); NONO(m,a,b,c,d); NONO( x,a,b,c,d ) int x,a,b,c,d; FILE *f; f=fopen("D:exam03200302PROGOUT.DAT","w"); fprintf(f,"x=%d: %3d%3d%3d%3d#n",x,a,b,c,d); fclose(f); 3、按下面的公式,求S的近似值。S=1+1/2*2+1/3*3+1/n*n#include "stdio.h" #include "ma
20、th.h" #include "stdlib.h" double fun(int n) /*begin*/int i;double p,sum=0.0;for(i=1;i<=n;i+)p=i*i;sum=sum+1.0/p;return sum; /*end*/ void main() double s; int n; /clrscr(); printf("Enter s:n"); scanf("%d",&n); s=fun(n); printf("s= %.3fn",s); NONO( )
21、; NONO( ) FILE *fr,*fw; int i,m; fr=fopen("D:exam03200306PROGIN.DAT","r"); fw=fopen("D:exam03200306PROGOUT.DAT","w"); for(i=1;i<=5;i+) fscanf(fr,"%d",&m); fprintf(fw,"s=%.3f#n",fun(m); fclose(fr); fclose(fw); 4、 求一個(gè)三數(shù)m的各位上的數(shù)字之和。m由鍵盤輸
22、入。(同學(xué)們自己編程,程序放在/*begin*/和/*end*/之間)#include <stdio.h> int fun(int m) /*begin*/ /*end*/ void main() int m,s; /clrscr(); printf("Enter m :n"); scanf("%d",&m); s=fun(m); printf("Result is: %dn",s); NONO( ); NONO( ) FILE *fr,*fw; int i,j,k,m; fr=fopen("D:exam
23、03200308PROGIN.DAT","r"); fw=fopen("D:exam03200308PROGOUT.DAT","w"); for(i=1;i<=5;i+) fscanf(fr,"%d",&m); fprintf(fw,"Sum = %dn",fun(m); fclose(fr); fclose(fw); 5、 求兩個(gè)正整數(shù)m和n的最大公約數(shù),將求出的最大公數(shù)存入變量t中。#include "stdio.h" #include "math.h" #include "stdlib.h" void main() int m=76,n=40,t,i;
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 河北省邢臺(tái)市祁村中學(xué)2025年高二下化學(xué)期末質(zhì)量跟蹤監(jiān)視試題含解析
- 山東禹城市綜合高中2025屆化學(xué)高二下期末復(fù)習(xí)檢測(cè)模擬試題含解析
- 公共停車收費(fèi)管理辦法
- 醫(yī)用健康賬戶管理辦法
- 園區(qū)企業(yè)年金管理辦法
- 農(nóng)業(yè)農(nóng)村農(nóng)舍管理辦法
- 景區(qū)排隊(duì)擁堵管理辦法
- 前期中心報(bào)建管理辦法
- 信息文化視角下高校圖書館“三全育人”的實(shí)踐與關(guān)鍵路徑探索
- 智能康復(fù)輔具的國(guó)際化推廣策略研究-洞察及研究
- 2025年廣東省中考英語(yǔ)試題卷(含答案解析)
- 2025年吉林省中考物理試卷真題及答案詳解(精校打印版)
- 2025至2030中國(guó)羅伊氏乳桿菌行業(yè)市場(chǎng)現(xiàn)狀分析及競(jìng)爭(zhēng)格局與投資發(fā)展報(bào)告
- 標(biāo)準(zhǔn)的編寫講課件
- 學(xué)堂在線 護(hù)理研究方法 期末考試答案
- 2025年湖南省中考英語(yǔ)試卷真題(含答案解析)
- 航圖zbyn太原武宿-機(jī)場(chǎng)細(xì)則
- 浙江省城市體檢工作技術(shù)導(dǎo)則(試行)
- 義務(wù)教育歷史課程標(biāo)準(zhǔn)(2022年版)
- 防火封堵施工方案(新版)
評(píng)論
0/150
提交評(píng)論