




已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第1章 C語言概述一、簡答題1(1)語言簡潔、緊湊,使用方便、靈活;(2)運算符豐富;(3)具有豐富的數(shù)據(jù)類型;(4)具有結(jié)構(gòu)化的控制語句;(5)語法限制不太嚴格,程序設(shè)計自由度大;(6)C語言允許直接訪問物理地址,能進行位(bit)操作,能實現(xiàn)匯編語言的大部分功能,可以直接訪問硬件;(7)生成目標代碼質(zhì)量高,程序執(zhí)行效率高;(8)用C語言寫的程序可移植性好,基本上不作修改就能用于各種型號的計算機和各種操作系統(tǒng)。2順序結(jié)構(gòu),分支結(jié)構(gòu),循環(huán)結(jié)構(gòu)3所謂算法就是為解決一個問題而采取的方法和步驟。 算法的特性:有窮性、確定性、輸入、輸出、可行性。 表示算法的方式:(1)用自然語言表示;(2)用流程圖表示;(3)用NS流程圖表示;(4)用偽代碼表示;(5)用計算機語言表示。二、算法1 瓶子A里盛有醋 瓶子B里盛有醬油 那一個空瓶C 將A中的醋倒入C 將B中的醬油倒入A 將C中的醋倒入B2 輸入一個數(shù)放在a中 max = a以下步驟重復9次:輸入一個數(shù)放在a中如果amax,max=b打印max的值3 如果aatemp1=atemp2=ba=cb=temp1c=temp2 否則 如果cbtemp=bb=cc=temp 打印a,b,c的值4 i=1sum=0 以下程序循環(huán)100遍:sum=sum+ii=i+1 打印sum的值5 如果(n除以3的余數(shù)為0 并且 n除以5的余數(shù)為0)n能夠同時被3和5整除 否則n不能夠同時被3和5整除6 i=101以下語句循環(huán)50遍:j=2flag=1當j(i除以2的整數(shù)部分)時循環(huán)以下語句:如果i除以j的余數(shù)為零flag=0退出該循環(huán)如果flag=1打印i的值i=i+17 如果m=10000&a=1000&a=100&a=10&a=0&a=9)printf(“這是個一位數(shù)”);else printf(“輸入錯誤”);2.main()int a;int g,s,b;/個位、十位、百位printf(水仙花數(shù)有:n);for(a=100;i=999;a+)g=a%10;s=a/10%10;b=a/100;if (a=g*g*g+s*s*s+b*b*b) printf(%d ,a); printf(n);4、main()int i,n;printf(input n:);scanf(%d,&n);printf(n%d=,n);for(i=2;ia&cA&c0&c9) y+;else z+printf(“英文字母個數(shù):%dn”,w);printf(“空格個數(shù):%dn”,x);printf(“數(shù)字個數(shù):%dn”,y);printf(“其他字母個數(shù):%dn”,z);6、main()float h=100,t;int j;for(j=1;j10;j+) t=h/2;h+=(t*2);printf(“共經(jīng)過:%f 米n”,h);printf(“第十次反彈 %f 米n”,t);第五章 數(shù) 組一、單項選擇題1. B 2. A 3. C 4. C 5. D 6. B 7.C 8.B 9.C 10. B二、寫出下列程序的運行結(jié)果1S=3682* * * *3S1=18 S2=104!margorP5數(shù)字0的出現(xiàn)次數(shù)是:3數(shù)字1的出現(xiàn)次數(shù)是:2數(shù)字2的出現(xiàn)次數(shù)是:2數(shù)字3的出現(xiàn)次數(shù)是:2數(shù)字4的出現(xiàn)次數(shù)是:0數(shù)字5的出現(xiàn)次數(shù)是:1數(shù)字6的出現(xiàn)次數(shù)是:1數(shù)字7的出現(xiàn)次數(shù)是:1數(shù)字8的出現(xiàn)次數(shù)是:1數(shù)字9的出現(xiàn)次數(shù)是:1三、編程題1#include stdio.hmain()int a11; int i,j,t; printf(input 10 number:n); for (i=1;i11;i+) scanf(%d,&ai); printf(n); for (i=1;i=9;i+) for (j=1;j=10-i;j+) if (ajaj+1) t=aj;aj=aj+1;aj+1=t; printf(the sorted number is:n); for (i=1;i11;i+) printf(%4d,ai); 2#include stdio.hmain()int a11,i,b; printf(imput 10 sorted number:n); for (i=0;i=0&aib;i-) ai+1=ai; ai+1=b; printf(sorted numbers:n); for (i=0;i11;i+) printf(%5d,ai); 3#include stdio.hmain()int a5,i,j,t; printf(input 5 integer:n); for (i=0;i5;i+) /*輸入5個整數(shù)*/ scanf(%d,&ai); for (i=0,j=4;ij;i+,j-) /*逆序存放*/ t=ai;ai=aj;aj=t; for (i=0;i5;i+) /*逆序存放后重新輸出*/ printf(%5d,ai); 4#include stdio.hmain()int i,j,a1010=1,1,1; for (i=2;i10;i+) /*給二維數(shù)組每個元素賦值*/ ai0=1; for (j=1;j=i;j+) aij=ai-1j-1+ai-1j; for (i=0;i10;i+) /*輸出二維數(shù)組*/ for (j=0;j=i;j+) printf(%-5d,aij); printf(n); 5#include stdio.hmain()int a34,i,j,max,row,col; printf(input 3*4 matrix:n); for (i=0;i3;i+) /*輸入3*4矩陣*/ for (j=0;j4;j+) scanf(%d,&aij); max=a00; row=0; col=0; for (i=0;i3;i+) /*尋找矩陣中的最大值及其行列號*/ for (j=0;j4;j+) if (maxaij) max=aij; row=i, col=j; printf(n數(shù)組中最大的數(shù)是%d,其行號是%d,列號是%dn,max,row,col); 6#define N 3#define M 4#include stdio.hmain()int aNM,i,j,k,max,row,col; printf(input %d*%d matrix: n,N,M); for (i=0;iN;i+) /*輸入二維矩陣*/ for (j=0;jM;j+) scanf(%d,&aij); for (i=0;iN;i+) /*求鞍點*/ max=ai0; row=i; col=0; for(j=1;jM;j+) /*求矩陣中每一行的最大值及其所行列號*/ if (maxaij) max=aij; col=j; for (k=0;kN;k+) /*判斷每一行的最大值在其所在列是否最大*/ if (akcolmax) break; if (k=N) /*得到鞍點*/ printf(the point is %d,row=%d,col=%dn,max,row,col);break; if (i=N) /*沒有鞍點*/ printf(no pointn);7#include stdio.hmain()int num=0,word=0; /*word=0表示未出現(xiàn)單詞,如出現(xiàn)單詞就置word為1.num用來統(tǒng)計單詞個數(shù)*/ char c; printf(please input a string :n); while (c=getchar()!=n) if (c= ) word=0; else if (word=0) word=1; num+; printf(There are %d words in the linen,num); 8#include stdio.hmain()int i,j,uppn,lown,dign,span,othn; /*uppn,lown,dign,span,othn分別存放英文大寫字母、小寫字母、數(shù)字、空格和其他字符的個數(shù)*/ char text380; uppn=lown=dign=span=othn=0; for(i=0;i3;i+) gets(texti); for(j=0;j=A&textij=a&textij=0&textij=9) dign+; else if(textij= ) span+; else othn+; for(i=0;i3;i+) printf(%sn,texti); printf(uppn=%dn,uppn); printf(lown=%dn,lown); printf(dign=%dn,dign); printf(span=%dn,span); printf(othn=%dn,othn);9#include stdio.hmain()int i,j; char str120,str220; printf(input two strings:n); gets(str1); gets(str2); j=strlen(str1); /*求字符串1的長度*/ for (i=0;str2i!=0;i+,j+) /*字符串合并*/ str1j=str2i; str1j=0; /*加上字符串結(jié)束標志*/ puts(str1); 10#include stdio.hmain()int i,n; char str120,str220; printf(input two strings:(no more than 20 characters)n); gets(str1); gets(str2); n=strlen(str1)strlen(str2)?strlen(str1):strlen(str2); /*n中存放較短字符串的長度*/ for (i=0;i0):n); scanf(%d,&n); if (prime(n) printf(%d is a sushun,n); else printf(%d is not a sushun,n);int prime(int n) int flag=1,i; for (i=2;i=n/2&flag=1;i+) if (n%i=0) flag=0; return(flag); 2.#define N 3convert(int array33) int i,j,t; for (i=0;iN-1;i+) for (j=i+1;jN;j+) t=arrayij; arrayij=arrayji; arrayji=t; main()int i,j; int aNN; printf(input a:n); for (i=0;iN;i+) for (j=0;jN;j+) scanf(%d,&aij); printf(Array a:n); for (i=0;iN;i+) for (j=0;jN;j+) printf(%5d,aij); printf(n); convert(a); printf(a de zhuanzhi is:n); for (i=0;iN;i+) for (j=0;jN;j+) printf(%5d,aij); printf(n); 3. #include #include main() char str100; printf(input a string:n) ; gets(str); inverse(str); printf(the reversed string is:%sn,str); inverse(char str) char t; int i,j; for (i=0,j=strlen(str)-1;ij;i+,j-) t=stri; stri=strj; strj=t; 4. #include concat(char str1,char str2) int i=0,j; while (str1i!=0) i+; for (j=0;str2j!=0;i+,j+) str1i=str2j; str1i=0;main() char str1100,str2100; gets(str1);gets(str2); concat(str1,str2); puts(str1);5. main() char str80; printf(input a string (4 ge shu zi zi fu):n); scanf(%s,str); insert(str); printf(result is:n%sn,str); insert(char str) int i; for (i=strlen(str);i0;i-) str2*i=stri; str2*i-1= ; 6. #include stdio.hint i,ndight,nwhite,nletter,nother;count(char str) ndight=nwhite=nletter=nother=0; for (i=0;stri!=0;i+) if (stri=0&stri=A&stri=a&stri=z) nletter+; else if (stri= ) nwhite+; else nother+; main() char text80; printf(input a string:n); gets(text); count(text);printf(ndight=%d,nletter=%d,nwhite=%d,nother=%dn,ndight,nletter,nwhite,nother);7. #define N 10#include sort(char str)int i,j; char t;for (i=1;iN;i+) for (j=0;jstrj+1) t=strj;strj=strj+1 ;strj+1=t;main() char strN; int i ; printf(Input 10 ge zi fu:n); gets(str); sort(str); printf(The sorted result:n) ; for(i=0;iN;i+) printf(%c,stri);8. #include #include #define N 10void input_e(int num,char nameN8)int i; for (i=0;iN;i+) printf(input gong hao:); scanf(%d,&numi); printf(input name:); getchar(); gets(namei); for (i=0;iN;i+) printf(%5d%10sn,numi,namei);void sort(int num,char nameN8) /*選擇法排序*/int i,j,min,temp1; char temp28; for (i=0;iN-1;i+) min=i; for (j=i+1;jN;j+) if (numjnummin) min=j; temp1=numi; strcpy(temp2,namei); numi=nummin; strcpy(namei,namemin); nummin=temp1; strcpy(namemin,temp2); printf(the sorted result:n); for (i=0;iN;i+) printf(%5d%10sn,numi,namei);void search(int n,int num,char nameN8) /*折半查找法*/ int top,bott,mid,find; find=0; top=0; bott=N-1; if (nnumN-1) find=-1; while (find=0)&(top=bott) mid=(bott+top)/2; if (n=nummid) find=1; printf(%d name is:%sn,n,namemid); else if (nnummid)bott=mid-1; else top=mid+1; if (find=-1)|(find=0) printf(%d is not found.n,n);main() int numN,number,c,flag; char nameN8; input_e(num,name); sort(num,name); for (flag=1;flag;) printf(please input chazhao de gonghao:); /*輸入查找的工號*/ scanf(%d,&number); search(number,num,name); printf(continue Y/N?); /*是否繼續(xù)查找*/ getchar(); c=getchar(); if (c=N|c=n) flag=0; 9. #include stdio.h#define MAX 10main() char strMAX; char c; int i; i=0; printf(input number(16 jinzhi): ); /*輸入一個十六進制的數(shù)*/ while(c=getchar()!=n&i=0&si=a&si=A&siy ? x : y); return(tz?t:z);#define MAX(x,y) (x)(y)?(x):(y)main() int a,b,c; printf(input a,b,c:); scanf(%d,%d,%d,&a,&b,&c); printf(max=%dn,MAX(MAX(a,b),c);13. #include stdio.h#define CHANGE 1#define MAX 80main() char strMAX; int i; printf(input a string:n); gets(str); #if (CHANGE) for (i=0;stri!=0;i+) if (stri=a&stri=A&striZ) stri=stri+1; else if (stri=z|stri=Z) stri=stri-25; #endif printf(%sn,str);第七章 指針一、選擇題1)A 2)D 3)D 4)C 5)B 6)B 7)B 8)C 9)B 10)C 11)A 12)A 13)B 14)C 15)B 16)A 17)C 18)B 19)D 20)B二、閱讀下面程序,寫出程序運行結(jié)果1)abcdeedcba 2)1113151719 3) 11,97,11 4)3 6 5)6385三、編程題1、main( ) int a10,i,temp,*p=a; printf(Please input array a:n); for(i=0;i10;i+) scanf(%d,&ai); printf(array a:n); for(i=0;i10;i+) printf(%4d,ai); for(i=0;i5;i+) temp=pi; pi=p10-i-1; p10-i-1=temp; printf(n Now array a:n); for(i=0;i10;i+) printf(%4d,ai); 2、main( ) int a33,*p,i,j; printf(please input matrix:n); for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); p=&a00; move(p); printf(n Now matrix:n); for(i=0;i3;i+) for(j=0;j3;j+) printf(%4d,aij); printf(n); move(int *q) int i,j,t; for(i=0;i3;i+) for(j=i;j3;j+) t=*(q+3*i+j); *(q+3*i+j)=*(q+3*j+i); *(q+3*j+i)=t; 3、#include #include #include #include main( )int binary();void insert();char *temp,*ptr16=BASIC,DATA,PASCAL,SQL,USE;int i;ptr15=malloc(20);printf(n);printf(original string:n);for(i=0;i5;i+)printf(%sn,ptr1i);printf(input search string:n);temp=malloc(20);gets(temp);i=binary(ptr1,temp,5);printf(i=%dn,i);insert(ptr1,temp,5,i);printf(output strings:n);for(i=0;i6;i+)printf(%sn,ptr1i);int binary(char *ptr,char *str,int n)int hig,low,mid;low=0;hig=n-1;if(strcmp(str,ptr0)0) return(n);while(low=hig)mid=(low+hig)/2;if(strcmp(str,ptrmid)0)low=mid+1;else return(mid);return(low);void insert(char *ptr,char *str,int n,int i)int j;for(j=n;ji;j-)strcpy(ptrj,ptrj-1);strcpy(ptri,str);4、main( ) int i; char *p6,str620; for(i=0;i6;i+) pi=stri; printf(Input 6 strings:n); for(i=0;i6;i+) scanf(%s,pi); sort(p); printf(Now the strings:n); for(i=0;i6;i+) printf(%sn,pi); sort(char *q ) int i,j; char *t; for(i=0;i5;i+) for(j=0;j0) t=*(q+j); *(q+j)=*(q+j+1); *(q+j+1)=t; 5、main( ) int m; char str120,str220,*p1,*p2; printf(please input two strings:n); scanf(%s,str1); scanf(%s,str2); p1=str1; p2=str2; m=stringcmp(p1,p2); printf(result is %d:n,m);stringcmp(char *p1,char *p2) int i=0; while(*(p1+i)=*(p2+i) if(*(p1+(i+)=0) return(0); return(*p1+i)-*(p2+i);6、main( ) char str130,str230,str3100; int i=0,j=0,k=0; printf(please input two strings:n); scanf(%s,str1); scanf(%s,str2); while(str1i!=0 & str2j!=0) str3k+=str1i+; str3k+=str2j+; while(
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年小微企業(yè)創(chuàng)業(yè)扶持資金申請申報指南與政策解讀報告
- 2025年生物制藥資金申請報告
- 公司章程及經(jīng)營管理制度
- lng運輸救援管理制度
- 家具公司無合同管理制度
- 東莞大朗藥品店管理制度
- mdr感染手術(shù)管理制度
- 公司精細化財務(wù)管理制度
- 公司檔案室安全管理制度
- 監(jiān)理部上墻安全管理制度
- 學校操場塑膠跑道改造方案
- 理療免責協(xié)議書范本
- 江蘇省南京市(2024年-2025年小學五年級語文)統(tǒng)編版質(zhì)量測試(下學期)試卷及答案
- 60萬噸年磷酸二銨操作手冊
- 滅鼠行業(yè)營銷策略方案
- 《六國論》理解性默寫
- JJF1069-2012法定計量檢定機構(gòu)考核規(guī)范
- 心臟瓣膜病患者的護理
- 2023-2024學年北京市西城區(qū)高一下學期期末考試政治試題(解析版)
- 低壓電纜試驗報告
- DB 34 2710-2016巢湖流域城鎮(zhèn)污水處理廠和工業(yè)行業(yè)
評論
0/150
提交評論