版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上第7章 數(shù)組習(xí)題解答一、在以下每一題的四個(gè)選項(xiàng)中,請(qǐng)選擇一個(gè)正確的答案。【題7.1】 C【題7.2】 D【題7.3】 D【題7.4】 D【題7.5】 C【題7.6】 C【題7.7】 C【題7.8】 C【題7.9】 B【題7.10】 B二、判斷下列各敘述的正確性,若正確在()內(nèi)標(biāo)記,若錯(cuò)誤在()內(nèi)標(biāo)記×。【題7.11】 【題7.12】 【題7.13】 ×【題7.14】 ×【題7.15】 【題7.16】 ×【題7.17】 ×【題7.18】 ×【題7.19】 【題7.20】 ×三、填空。請(qǐng)?jiān)谙旅娓鲾⑹龅目?/p>
2、白處填入合適的內(nèi)容?!绢}7.21】 字符數(shù)組【題7.22】 0【題7.23】 4【題7.24】 按行的順序存放【題7.25】 48【題7.26】 strcat( )【題7.27】 6【題7.28】 10【題7.29】 strcmp( )【題7.30】 #include <stdio.h>四、閱讀下面的程序,寫出程序運(yùn)行結(jié)果?!绢}7.31】 abcdefg abcdef abcde abcd abc ab a【題7.32】 1 1 1 2 1 1 2 3 1 1 2 3 4 1【題7.33】 a2*b1=2 a4*b4=16 a6*b7=42【題7.34】 10 1 2 3 4 5
3、6 7 8 9五、程序填空。請(qǐng)?jiān)谙旅娉绦蚩瞻滋幪钊牒线m的語句?!绢}7.35】 aj+=ai【題7.36】 arrayi>arrayj六、編程。對(duì)下面的問題編寫程序并上機(jī)驗(yàn)證?!绢}7.37】 編寫程序,用冒泡法對(duì)20個(gè)整數(shù)排序(按升序排序)。 /*lx7_1.c*/#include "stdio.h"#define N 20void main( ) int dataN; int i,j,t; printf("請(qǐng)輸入 %d 個(gè)整數(shù):n",N); for(i=0;i<N;i+) scanf("%d",&datai); p
4、rintf("n"); for(i=0;i<N; i+) for(j=0; j<N-i; j+) if(datai>dataj) t=datai; datai=dataj; dataj=t; printf("排序后的輸出為:n"); for(i=0;i<N; i+) printf("%d ",datai);【題7.38】 編寫程序,將一個(gè)數(shù)插入到有序的數(shù)列中去,插入后的數(shù)列仍然有序。 /*lx7_2.c*/#include "stdio.h"#define N 5void main( ) i
5、nt aN+1; int i,j,t,num; printf("請(qǐng)輸入 %d 個(gè)整數(shù):n",N); for(i=0;i<N;i+) scanf("%d",&ai); printf("n"); for(i=0;i<N-1;i+) for(j=i+1;j<N;j+) if(ai>aj) t=ai; ai=aj; aj=t; printf("第一次輸出:n"); for(i=0;i<N;i+) printf("%d ",ai); printf("n&qu
6、ot;); printf("請(qǐng)輸入一個(gè)數(shù):"); scanf("%d",&num); if(num>=aN-1) aN=num; else if(num<a0) for(i=N-1;i>=0;i-) ai+1=ai; a0=num; else for(i=N-1;i>=0;i-) if(ai>num) ai+1=ai; else ai+1=num; break; printf("第二次輸出:n"); for(i=0;i<N+1;i+) printf("%d ",ai);
7、printf("n");【題7.39】 編寫程序,在有序的數(shù)列中查找某數(shù),若該數(shù)在此數(shù)列中,則輸出它所在的位置,否則輸出no found。 /*lx7_3.c*/#include "stdio.h"#define N 10void main( ) int aN; int num,i; char ch='n' printf("請(qǐng)輸入一個(gè)數(shù)組:n"); for(i=0;i<N;i+) scanf("%d",&ai); printf("輸出數(shù)組:n"); for(i=0;
8、i<N;i+) printf("%d ",ai); printf("n"); printf("請(qǐng)輸入一個(gè)數(shù)n"); scanf("%d",&num); printf("開始查找n"); for(i=0;i<N;i+) if(num= =ai) ch='y' printf("%d 在數(shù)組的第 %d 位n",num,i+1); if(ch= ='n') printf("no foundn");【題7.40】
9、若有說明:int a23=1,2,3,4,5,6;,現(xiàn)要將a的行和列的元素互換后存到另一個(gè)二維數(shù)組b中,試編程。 /*lx7_4.c*/#include "stdio.h"void main( ) int a23=1,2,3,4,5,6,b32; int i,j; for(i=0;i<2;i+) for(j=0;j<3;j+) printf("%dt",aij); printf("n"); for(i=0;i<2;i+) for(j=0;j<3;j+) bji=aij; for(i=0;i<3;i+) f
10、or(j=0;j<2;j+) printf("%dt",bij); printf("n"); 【題7.41】 定義一個(gè)含有30個(gè)整數(shù)的數(shù)組,按順序分別賦予從2開始的偶數(shù),然后按順序每五個(gè)數(shù)求出一個(gè)平均值,放在另一個(gè)數(shù)組中并輸出,試編程。 /*lx7_5.c*/#include "stdio.h"#define N 30#define M 5void main( ) int aN,sumN/M; float s; int i,j,k=0; for(i=0;i<N;i+) ai=2*(i+1); printf("%d
11、t",ai); printf("n"); for(i=0;i<N;i+=M) s=0; for(j=i;j<i+M;j+) s=s+aj; sumk+=s/M; for(i=0;i<N/M;i+) printf("%dt",sumi);【題7.42】 編寫程序,在5行7列的二維數(shù)組中查找第一次出現(xiàn)的負(fù)數(shù)。 /*lx7_6.c*/#include "stdio.h"void main( ) int i,j,a57; printf("請(qǐng)輸入一個(gè)二維數(shù)組n"); for(i=0;i<5;
12、i+) for(j=0;j<7;j+) scanf("%d",&aij); printf("n"); for(i=0;i<5;i+) for(j=0;j<7;j+) if(aij<0) printf("第一次出現(xiàn)的負(fù)數(shù)被找到!,負(fù)數(shù)值是%dn",aij); goto end1; end1: ;【題7.43】 從鍵盤上輸入60個(gè)字符,求相鄰字母對(duì)(如ab)出現(xiàn)的頻率。/*lx7_7.c*/ #include "stdio.h"#include "string.h"#
13、define N 60void main( ) int i, len; char chN; float p,m=0; printf("請(qǐng)輸入一個(gè)字符串:n"); scanf("%s",ch); len=strlen(ch); for(i=0;chi!='0' && i<N-1;i+) if(chi= =chi+1+1 | chi+1= =chi+1) m+; p=m/len; printf("相鄰字母對(duì)出現(xiàn)的頻率是 %fn",p);【題7.44】 編寫程序,定義數(shù)組int a46, b46, c4
14、6,并完成如下操作:(1)從鍵盤上輸入數(shù)據(jù)給數(shù)組a、b。(2)將數(shù)組a與數(shù)組b各對(duì)應(yīng)元素作比較,如果相等,則數(shù)組c的對(duì)應(yīng)元素為0,若前者大于后者,則數(shù)組c的對(duì)應(yīng)元素為1;若前者小于后者,則數(shù)組c的對(duì)應(yīng)元素為1。(3)輸出數(shù)組c各元素的值。 /*lx7_8.c*/#include "stdio.h"void main( ) int i,j; int a46,b46,c46; for(i=0;i<4;i+) for(j=0;j<6;j+) scanf("%d",&aij); for(i=0;i<4;i+) for(j=0;j<
15、6;j+) scanf("%d",&bij); for(i=0;i<4;i+) for(j=0;j<6;j+) if(aij=bij) cij=0; else if(aij>bij) cij=1; else cij=-1; for(i=0;i<4;i+) for(j=0;j<6;j+) printf("%dt",cij); printf("n"); 【題7.45】 編寫程序,從鍵盤上輸入兩個(gè)字符串a(chǎn)和b,要求不用strcat( )函數(shù)把串b的前五個(gè)字符連接到串a(chǎn)中,如果b的長度小于5,則把b的所有
16、元素都連接到a中。 /*lx7_9.c*/#include "stdio.h"#include "string.h"#define N 80void main( ) char aN,bN; int i,j,lena,lenb; printf("Please input first string:"); scanf("%s",a); printf("Please input second string:"); scanf("%s",b); lena=strlen(a); len
17、b=strlen(b); if(lenb<=5) for(i=lena,j=0;i<lena+lenb;i+) ai=bj+; ai='0' else for(i=lena,j=0;j<5;j+) ai+=bj; ai='0' printf("Output first string:"); printf("%sn",a);【題7.46】 編寫函數(shù),從一個(gè)排好序的整型數(shù)組中刪去某數(shù)。/*lx7_10.c*/#define N 10#include "stdio.h"int dele(in
18、t str ,int y) int i, j, p=0; for(i=0; i<N; i+) if(stri= =y) j=i; p=1; break; if(p= =1) for(; j<=N-1; j+) strj=strj+1; return p;void main( ) int i, j, t, aN, x; printf("Input an array:n"); for(i=0; i<N; i+) scanf("%d",&ai); for(i=0; i<N-1; i+) for(j=i;j<N;j+) if
19、(ai>aj) t=ai,ai=aj,aj=t; printf("Input a data:"); scanf("%d",&x); if(dele(a,x) for(i=0;i<N-1;i+) printf("%d ",ai); else printf("no deleten");【題7.47】 編寫函數(shù),它將無符號(hào)整數(shù)轉(zhuǎn)換成二進(jìn)制字符表示。/*lx7_11.c*/#include "stdio.h"void dtob(unsigned m) char str17; int
20、i,n; n=m; for(i=15;i>=0;i-) if(m%2= =1) stri='1' else stri='0' m=m/2; str16='0' printf("n=%dt%sn",n,str);void main( ) unsigned num; printf("Please input a integer:"); scanf("%d",&num); dtob(num);【題7.48】 編寫函數(shù)lower( )模擬標(biāo)準(zhǔn)函數(shù)strlwr( ),調(diào)用形式為low
21、er(char *st),其作用是將字符串st中的大寫字母轉(zhuǎn)換成小寫。/*lx7_12.c*/#include "stdio.h"#define N 20void lower(char *st) int i=0; while(sti!='0') if(sti>'A' && sti<='Z') sti+=32; i+; void main( ) char sN; printf("Input a string:n"); scanf("%s",s); lower(s); printf("Output: %sn",s);【題7.49】 編寫函數(shù)replicate( )模擬標(biāo)準(zhǔn)函數(shù)strset( ),調(diào)用形式為replicate (char *st,char
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年乙酮項(xiàng)目提案報(bào)告范稿
- 以貨易貨合同范本
- 代理雜志合同范本
- 冰霜維修合同范本
- 內(nèi)蒙古烏海市(2024年-2025年小學(xué)五年級(jí)語文)人教版質(zhì)量測(cè)試(下學(xué)期)試卷及答案
- 內(nèi)蒙古烏蘭察布市(2024年-2025年小學(xué)五年級(jí)語文)統(tǒng)編版小升初真題((上下)學(xué)期)試卷及答案
- 220kV輸電線路施工合同評(píng)估標(biāo)準(zhǔn)
- 環(huán)境保護(hù)安全考核制度
- 數(shù)學(xué)-2025屆吉林省長春市高三11月質(zhì)量監(jiān)測(cè)(一)試題+答案
- 污水處理項(xiàng)目風(fēng)險(xiǎn)管理合同
- 設(shè)備基礎(chǔ)施工方案及安全措施
- 用電安全檢查記錄表
- DB11T 2000-2022建筑工程消防施工質(zhì)量驗(yàn)收規(guī)范
- 部編版語文六年級(jí)上冊(cè)《口語交際》專項(xiàng)練習(xí)
- 人教人音版八年級(jí)音樂上冊(cè)《青藏高原》課件(精選)
- 淚道阻塞課件
- 弱電智能化專業(yè)考試題庫
- LED電子顯示屏投標(biāo)書技術(shù)標(biāo)
- 小學(xué)生心理健康主題班會(huì)PPT
- 40篇英語短文搞定高考3500個(gè)單詞(全部含翻譯-重點(diǎn)解析)
評(píng)論
0/150
提交評(píng)論