填空及編程復習_第1頁
填空及編程復習_第2頁
填空及編程復習_第3頁
填空及編程復習_第4頁
填空及編程復習_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、3程序填空( 1) 下列程序的功能為:輸出小寫字母a, b,請?zhí)顚戇m當?shù)姆枺钩绦驅(qū)崿F(xiàn)其功能,程序以文件名 sy1_8.c 存盤。#include main ()char c1,c2;c1=97;c2=98;printf(%c,%c,c1,c2);(2) 下列程序的功能為:從鍵盤輸入3 個整數(shù)分別存入變量a、b、 c,然后,將變量a 的值存入變量b,將變量 b 的值存入變量c,將變量 c 的值存入變量a,輸出經(jīng)過轉(zhuǎn)存后變量a、 b、c 的值。(提示:使用中間變量)。請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名sy1_9.c 存盤。#include main ()int a,b,c,

2、m;printf(please input a,b,c: );scanf(%d%d%d,&a,&b,&c);m=a;a=c;c=b;b=m;printf(a=%d b=%d c=%dn,a,b,c);2程序填空( 1)下列程序的功能為:給定格式輸入數(shù)據(jù),按輸出要求輸出結(jié)果,請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名sy2_4.c 存盤。輸入形式enter x,y:23.4輸出形式x+y=5.4#include main()int x;float y;printf (enter x,y:) ;scanf(%d%f,&x,&y);printf(x+y=%.1fn,x+y);( 2) 下

3、列程序的功能為:設圓半徑r=1.5,圓柱高 h=3,求圓周長、圓面積、圓球表面積、圓球體積、1 柱體 。用scanf 入數(shù)據(jù)r、h, 出 算 果, 出 要求有文字 明,取小數(shù)點后位數(shù)字。( 周 l=2 r , 面 s=r 2 , 球表面 sq= 4 r 2 , 球體 vq=3r 3 ; 柱體 vz= hr 2 )4 填寫適當?shù)姆柣?句,使程序 其功能,程序以文件名sy2_5.c 存 。#include main()float pi , h, r, l,s, sq,vq ,vz;pi=3.1415926;printf( 入 半徑r, 柱高 h: n);scanf(%f%f,&r,&h);l=2

4、*pi*r;s=pi*r*r;sq=4*pi*r*r;vq=3.0/4*pi*r*r*r;vz=pi*h*r*r;printf( 周 : %.2fn,l);printf( 面 : %.2fn, s);printf( 球表面 :%.2fn, sq );printf( 球體 : %.2fn, vq);printf( 柱體 : %.2fn, vz);( 3) 下列程序的功能 :通 入兩個整數(shù),分 存入 量x ,y 中,當 x 小于 y ,通 中 量t互 x, y 之 ,并 出之。 填寫適當?shù)姆柣?句,使程序 其功能,程序以文件名sy2_6.c 存 。#include main()int x,y,t

5、;printf( 入 x, y:n) ;scanf(%d%d,&x,&y);if (xy) t=x;x=y;y=t;/x 與 y 交 printf( 交 后的 x: %dy:%d n ,x ,y);2程序填空( 1) 下列程序的功能 :判斷從 上 入的一個字符,并按下列要求 出。若 字符是數(shù)字 出字符串 0-9若 字符是大寫字母 出字符串 a-z若 字符是小寫字母 出字符串 a-z若 字符是其他字符 出字符串 ! , 2 填寫適當?shù)姆柣?句,使程序 其功能,程序以文件名sy3_4.c 存 。#include main() char c;scanf(_); if(0=c&c=9)_else i

6、f(_) printf(a-zn);_(a=c&c=z)printf(a-zn);_printf(! , n);填空后的程序:#include main()char c;scanf( %c, &c );if(0=c & c=a & c =z)printf(a-zn);else if (a=c & c=z)printf(a-zn);elseprintf(! , n);( 2)下列程序的功能 : 加、減、乘、除四 運算。 填寫適當?shù)姆柣?句,使程序 其功能,程序以文件名 sy3_5.c 存 。#include main()int a,b,d;char ch;printf(please input

7、 a expression:);scanf(%d%c%d,&a,&ch,&b);switch(ch)case +:d=a+b;printf(%d+%d=%dn,a,b,d);3break;case -:d=a-b;printf(%d-%d=%dn,a,b,d);break;case *:d=a*b;printf(%d*%d=%dn,a,b,d);break;case /:if(b=0)printf(divisor is zeron);elseprintf(%d/%d=%fn,a,b,(float)a/b);/* 強制類型轉(zhuǎn)換*/break;default:printf(input operat

8、or error!n);( 3)下列程序的功能為:猜價格,用戶輸入自己估計的價格,程序判斷其正確性。請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名sy3_6.c 存盤。#include stdio.hmain()float a,b;printf( 請主持人輸入時尚手機的實際價格n);scanf(%f,&b);printf(nn 請觀眾猜時尚手機的價格n);scanf(%f,&a);if( ab)printf( 高了 n);2程序填空( 1)下列程序的功能為:用輾轉(zhuǎn)相除法求兩個正整數(shù)的最大公約數(shù);請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名 sy4_4.c 存盤。提示:“輾轉(zhuǎn)相

9、除法” 求兩個正整數(shù)的最大公約數(shù)的算法如下:將兩數(shù)中大的那個數(shù)放在m 中,小的放在n 中。求出 m 被 n 除后的余數(shù)r 。若余數(shù)為 0 則執(zhí)行步驟( 7);否則執(zhí)行步驟(4)。把除數(shù)作為新的被除數(shù);把余數(shù)作為新的除數(shù)。求出新的余數(shù)r 。4重復步驟( 3)到( 5)。輸出 n, n 即為最大公約數(shù)。#include main ()int r, m, n,t;scanf (%d%d,&m,&n);if (mn)t=m;m=n;n=t;r = m%n;while (r)m=n;n=r;r=m%n;printf (%dn,n);(2)下列程序的功能為:計算1020 個西瓜幾天后能賣完(第一天賣了一半

10、多兩個,以后每天賣剩的一半多兩個);請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名sy4_5.c 存盤。#include main()int day,x1,x2;day=0;x1=1020;while(x10)x2= x1/2-2;x1=x2;day+;printf( “day=%dn ”,day);( 3)下列程序的功能為:輸出100 以內(nèi)能被 3 整除且個位數(shù)為6 的所有整數(shù);請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名sy4_6.c存盤。#include main() int i,j;for(i=0;i10; i+) j=i*10+6;if (i%3!=0)contin

11、ue;printf(%d,j);52程序填空題( 1)以下程序的功能是:采用二分法在給定的有序數(shù)組中查找用戶輸入的值,并顯示查找結(jié)果。#include stdio.h#define n 10main() int a =0,1,2,3,4,5,6,7,8,9,k; int low=0,high=n-1,mid,find=0; printf( 請輸入欲查找的值: n); scanf(%d,&k);while (lowk)high=mid-1;/1elselow=mid+1;/2if(!find) printf(%d未找到 n,k); (2)以下程序的功能是:采用選擇排序法對隨機產(chǎn)生的20 個 10

12、0 以內(nèi)的無序整數(shù)按由大到小的順序重新排列,并輸出重新排列后的有序整數(shù)。#define n 20#include#include/添加void main() int an,i,j,k,t;printf( 排序前 :n);for(i=0;in;i+) ai= rand()%100 ;/1printf(%5d,ai);for(i=0;in-1;i+) k=i;for(j=i+1;jn;j+)if(akaj)/2k=j;if(k!=i)/3 t=ak;ak=ai;ai=t;printf(n 排序后 :n);for(i=0;in;i+)printf(%5d,ai);6( 3)下列程序是對一行文字,刪去

13、其中某個字符,此行文字和要刪的字符均由鍵盤輸入,根據(jù)題意,補寫完整程序。#include#includevoid main()char line80 ;char ch;int i,j;int len;printf( 輸入一行字符n);gets(line);printf( 輸入要刪除字符);ch=getchar();i=0;while(linei!=0 )while( linei!=0 & linei!=ch) i+;len=strlen(line);for(j=i;jlen-1;j+)linej=linej+1;linej=0;puts(line);2程序填空( 1)下列程序的功能為:輸出如下

14、圖形 , 請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名 sy6_4.c 存盤。122233333444444456667777766654444444333332221#includevoid a(int i)int j,k;for(j=1;j=30-i;j+) printf(%c, );for(k=1;k= 2*i-1;k+) printf( %d,i);printf(n);void main() int i;7for(i=1;i=1;i-)a(i);(2)下列程序的功能 : 一判斷 數(shù)的函數(shù), 歌德巴赫猜想:任何大于2 的偶數(shù)均可表示 兩個素數(shù)之和。例如:4=2+2(特例, 此一

15、個),6=3+3, 8=3+5, 。程序要求 入任一偶數(shù), 出6到 數(shù)范 內(nèi)的各個 足條件的 合。 填寫適當?shù)姆柣?句,使程序 其功能,程序以文件名sy6_5.c 存 。#includestdio.h int isprime(int m)/判 m 是否 數(shù)int i ;for(i=2;m%i!=0;i+);return (i=m ? 1:0 );void main() int n,x,a,b;scanf(%d,&x);for(n=6;n=x;n+=2)for(a=3;a=n/2;a+=2)if(isprime(a) ) b=n-a;if( isprime(b) ) printf( “%d=%

16、d+%d”,n,a,b);break;/退出 a 循 ,判 下一個n 的 合2程序填空( 1)下列程序的功能 : 算數(shù) 中的最大元素及其下 和地址 ; 填寫適當?shù)姆柣?句,使程序 其功能,程序以文件名sy7_4.c 存 。#includeintfind max(int*s,int t )int i,k=0;for(i=0;i +)if()k=i ;retu rn;voidmain()int a10=12,23,34,45,56,67,78,89,11,22,k=0,*add; int j;for(j =0;j 10;j +)print f(%4d%10xh n,aj,&aj);8k=find

17、max(a,10);add=&ak;print f(n%d %d%xh n , ak,k+1,add );int i,k=0;for(i=0;isk)k=i;/ 2returnk;/3(2)下列程序的功能為:通過返回地址值,來輸出a2a4 的值;請?zhí)顚戇m當?shù)姆柣蛘Z句,使程序?qū)崿F(xiàn)其功能,程序以文件名sy7_5.c 存盤。#include main()int a5=1,3,5,7,9;/*a 是 int 數(shù)值的數(shù)組*/int *num5,i,*p;/*num 是指向 int 類型的指針型數(shù)組,p 是指向 int 型的變量*/int *f(int *x,int);/*返回指針值的f 函數(shù)的聲明*/

18、for (i=0;i5;i+)numi=;/*num 的每個分量指向a 的每個相應元素*/p=f(num,2);/*返回 num2 分量所指的數(shù)組a 中的元素的地址*/for ( ; p=num4; p+)/*在 num2num4 地址范圍內(nèi)掃描*/printf( %dt,);/*輸出該地址范圍內(nèi)的數(shù)據(jù)*/int *f(int *x,int i)int k=0;for (; ki; k+) ;/*如果這個語句省略,需要修改什么?*/return;/*返回 numi 的所指的地址*/#include void main()int a5=1,3,5,7,9;int *num5,i,*p;int *

19、f(int *x,int);for (i=0;i5;i+)numi= &ai;/19p=f(num,2);for ( ; p=num4; p+)printf( %dt, *p);/2int *f(int *x,int i)int k=0;for (; ki; k+) ;returnxk;/3六、編程題1編寫一個程序?qū)崿F(xiàn)如下功能:計算1 100 之間所有含8 的數(shù)之和。#include main()int i, sum=0;for(i=1; i=100; i+)if(i%10=8 | i/10=8)sum+=i;printf(sum=%dn,sum);2從鍵盤輸入一行字符,分別統(tǒng)計出其中英文字母

20、、空格、數(shù)字和其他字符的個數(shù)。#include void main()char c;int letters=0,space=0,digit=0,other=0;printf( 請輸入一行字符:n);while(c=getchar()!=n)if (c=a & c=a & c=0 & c=9)digit+;elseother+;printf( 字母數(shù) :%dn 空格數(shù) :%dn 數(shù)字數(shù) :%dn 其它字符數(shù) :%dn,letters,space,digit,other);3編一個程序,輸入20 個整數(shù),統(tǒng)計并輸出其中正數(shù)、負數(shù)和零的個數(shù)。#include 10void main()int n,i

21、,z=0,f=0,l=0;printf( 入 20個數(shù) :n);for (i=0;i0)z+;else if (n0)f+;elsel+;printf( 正數(shù) :%dn 數(shù) :%dn零數(shù) :%dn ,z,f,l);4 程求1!+2!+3!+ +10!#include void main()double s=0,t=1;int n;for (n=1;n=10;n+)t=t*n;s=s+t;printf(1!+2!+.+10!=%fn,s);5從 入20 個整數(shù),存放在數(shù) 中,找出其中最大數(shù)并指出其所在的位置。#includemain()int max,i,j,a20;printf(enter 2

22、0 integers:n);for(i=0;i20;i+)scanf(%d,&ai);max=a0;for(i=1;i20;i+)if(maxai) max=ai;j=i;printf(%d,%d,max,j);116從鍵盤輸入兩個正整數(shù)m和n,要求 m中放大的值, n中放小的值,求它們的最大公約數(shù)和最小公倍數(shù)。#include void main()int p,r,n,m,temp;printf(請輸入兩個正整數(shù)n,m:);scanf(%d,%d,&n,&m);if (nm)temp=n;n=m;m=temp;p=n*m;while(m!=0)r=n%m;n=m;m=r;printf(它們的

23、最大公約數(shù)為:%dn,n);printf(它們的最小公約數(shù)為:%dn,p/n);7從鍵盤輸入一個3 3 二維數(shù)組,輸出該矩陣,再將其轉(zhuǎn)置后輸出。所謂轉(zhuǎn)置即行列互換。void main( )int a33,b33,i,j; for(i=0;i3;i+)for(j=0;j3;j+)scanf(%d,&aij);for(i=0;i3;i+)for(j=0;j3;j+)printf(%d,aij);printf(n);for(j=0;j3;j+)for(i=0;i3;i+)bji=aij;for(j=0;j3;j+) for(i=0;i3;i+) printf (%d ,bji);printf (n);128 寫一個程序 如下功能:用下列近似公式 算e , 差 小于10-51111e 12!3!1!n!#include main()int i=0 ;long n=1;float e=0, t=

溫馨提示

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

評論

0/150

提交評論