




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
精品文檔精品文檔PAGE精品文檔
一.程序閱讀題
1.若運行時輸入 100↙,寫出以下程序的運行結(jié)果。
main()
{inta;
scanf( “%d”,&a);
printf( “%s”,(a%2!=0) ”No”:”Yes”);
}
答案: Yes
2.寫出以下程序的運行結(jié)果。
main()
{inta=2,b=7,c=5;switch(a>0){
case1:switch(b<0){
case1:printf(“@”);break;case2:printf(“!”);break;}case0:switch(c==5){case1:pritnf(“*”);break;case2:printf(“#”);break;default:printf(“#”);break;}default:printf(“&”);}printf(n“”);}
答案:*&
3.寫出下面程序運行的結(jié)果。
main()
{inti,b,k=0;
for(i=1;i<=5;i++){
b=i%2;
while(b--==0)k++;
}
printf( “%d,%d”,k,b);
}
答案:2 0
4.寫出下面程序運行的結(jié)果。
main()
{intk=1,n=263;
do{k*=n%10;n/=10;}while(n);
printf( “n%d”,k);
}
答案:36
5.寫出下面程序運行的結(jié)果。
main()“%2d”,a[i][j]);
{inta=10,y=0;do{
a+=2;y+=a;
if(y>50)break;}while(a=14);
printf(“a=%dy=%dn”,a,y);
}
答案:a=16 y=60
數(shù)組部分:
1.寫出下面程序的運行結(jié)果。鰹義呂廁誅頡懌許鵬踐嶺輻該顆詬。main() 答 案 :
{inta[6][6],i,j;for(i=1;i<6;i++)for(j=1;j<6;j++)a[i][j]=(i/j)*(j/i);for(i=1;i<6;i++){
for(j=1;j<6;j++)
printf(
printf( n“”);
}
}
2.寫出下面程序的運行結(jié)果。
main()兩輇骯鍔綬摑餘瘍齏濘鏵鍬鵬鵒譾。{inti=0;
chara[]= ”abm”,b[]= ”
while(a[i]!= 0’’&&b[i]!=0’’){馀誡戔鵬脛噥鑊覲銑樞決臚韙銅極。
aqid
”,c[10];
if(a[i]>=b[i])c[i]=a[i]-32;
elsec[i]=b[i]-32;
i++;
}
c[i]= 0’;
puts(c);
}
答案:AQM
3.當(dāng)運行下面程序時,從鍵盤上輸入 AabD↙,則寫出下面程序的運行結(jié)果。
main()
{chars[80];inti=0;gets(s);詁憂頹資橈鈉臥槧繰鵒鹺憊蛻錕贄。while(s[i]!=
0’’){
if(s[i]<=
’z’
&&s[i]>=
’a’)
s[i]= ’z-’s[i]+;’a’
i++;
}
puts(s);
}
答案:AzyD
二.程序判斷題
1.下面程序?qū)⑤斎氲拇髮懽帜父膶懗尚懽帜篙敵觯?其他字符不變;請判斷下面程序的正誤,
如果錯誤請改正過來。
main()
{charc;
c=getchar();
c=(c>=A’’||c<= ’c-32Z’:)c+32;
printf( “%c”,c);
}
答案:c=(c>=A’||c<=’Z’c)-32:c+32; 改為:c=(c>='A'&&c<='Z') c+32:c;
2.下面程序輸入兩個運算數(shù)x,y和一個運算符號op,然后輸出該運算結(jié)果的值,例如輸入3+5↙得到結(jié)果8;請判斷下面程序的正誤,如果錯誤請改正過來。
main()
{
floatx,y,r;
charop;
scanf( “%f%c%f”,&x,&op,&y);
switch(op){
case ‘+’:r=x+y;
case-’‘:r=x-y;
case ‘*’*y:;r=x
case ‘/’/y:;r=x
}
printf( “%f”,r);
}
答案:每個Case分之后面加 Break;
三.程序填空題
1、以下程序輸出 x,y,z三個數(shù)中的最小值,請?zhí)睿?2)空使程序完整。
main()
{intx=4,y=5,z=8;intu,v;
掃攝虧遲銩車瑪費賃颯嚶稈蠅卻絳。u=x<y【1】;v=u<z【2】;printf(“%d”,v);}答案:【1】x:y【2】u:z2、下述程序用“碾轉(zhuǎn)相除法”計算兩個整數(shù)m和n的最大公約數(shù)。該方法的基本思想是計算m和n相除的余數(shù),如果余數(shù)為0則結(jié)束,此時的被除數(shù)就是最大公約數(shù)。否則,將除數(shù)作為新的被除數(shù),余數(shù)作為新的除數(shù),繼續(xù)計算m和n相除的余數(shù),判斷是否為0,等等,
請?zhí)睿?)空使程序完整。
main()
{intm,n,w;
scanf( “%d,%d”,&m,&n);
while(n){
w=【1】;
m=【2】;
n=【3】;
}
printf( “%d”,m);
}
答案:【1】w=m%n; 【2】m=n; 【3】n=w;
3、下面程序的功能是輸出1至100之間每位數(shù)的乘積大于每位數(shù)的和的數(shù),請?zhí)睿?)空使程序完整。
main()
{intn,k=1,s=0,m;
for(n=1;n<=100;n++){
k=1;s=0;
【1】;
while(【2】){
k*=m%10;
s+=m%10;鰓滲鑲貓錕緬讞鹽繪騍釕寶親廈欄?!?】;
}
if(k>s)printf(
}
}
“%dd”,n);
答案: 【1】
m=n;
【2】
m!=0
【3】m=m/10;
4、下面程序按公式(課本 169頁習(xí)題) 求和并輸出結(jié)果,請?zhí)?(3)空使程序完整。
main()
{
1】;
intk;
for(k=1;k<=100;k++)
s+=k;
for(k=1;k<=50;k++)
s+=k*k;
for(k=1;k<=10;k++)燉廩曖見鐠樅鏷鷴憂踴諼驃護剎諳。s+=【2
printf(
】;
“sum=【3
】”
,s);
}答案:【1】
float
s=0;
【2】1/k
【3】%f
數(shù)組部分:
一、程序判斷:
1.下面程序為數(shù)組輸入數(shù)據(jù)并輸出結(jié)果;判斷下面程序的正誤,如果錯誤請改正過來。
main()
貳鋪嘜輝鍍顥綞錈懼禪資紼韃嘆綆。{inta[3]={3*0};inti;for(i=0;i<4;i++)scanf(“%d”,&a[i]);for(i=0;i<4;i++)printf(“%d”,a[i]);}答案:for(i=0;i<3;i++)(只有3個數(shù)組元素,下標(biāo)0~2)2.下面程序為數(shù)組輸入數(shù)據(jù)并輸出結(jié)果;判斷下面程序的正誤,如果錯誤請改正過來。
main()
{inta[3]={1,2,3},i;
scanf( “%d%d%d”,&a);
for(i=0;i<3;i++)printf( “%d”,a[i]);
}
答案:scanf("%d%d%d",&a[0],&a[1],&a[2]);鈑訣孿鄆諮駛峽噯燜訖櫝癢條醬鏽。3.下面程序的功能是:先將在字符串正序連接到t串的后面。例如,當(dāng)
s中的字符按逆序存放到 t串中,然后把 s中的字符按
s中的字符串為: “ABCDE”時則 t中的字符串應(yīng)為:
嗚嗚賧殲莢貞虜磽闕頇頭鴿莖韞確?!癊DCBAABCDE;”判斷下面程序的正誤,如果錯誤請改正過來。
main()
{chars[80],t[200];inti,sl;
gets(s);sl=strlen(s);閎鋃蒞聯(lián)鱟賽搖當(dāng)腫鴆閨堊唄頰鯀。for(i=0;i<sl;i++)t[i]=s[sl-i];
改為:
t[i]=s[sl-i-1];
for(i=0;i<sl;i++)t[sl+i]=s[i];t[s1+i]='\0';
加上語句:
t[s1+i]='\0';
puts(t);
}
答案:見右邊修改語句4.下面程序的功能是:將
n各無序整數(shù)從小到大排序;判斷下面程序的正誤,如果錯誤請改
正過來。main()
{inta[100],i,j,p,t,n=20;
for(j=0;j<n;j++)scanf(
for(j=0;j<n-1;j++)
{p=j;
for(i=j+1;i<n-1;i++)
if(a[p]>a[i])t=i;
if(p!=j)
{t=a[j];a[j]=a[p];a[p]=t;}
}
for(j=0;j<n;j++)printf(
}虛譖燈漸療業(yè)顛鐨憒祕鏟們?yōu){澩卻。
“,%d”改,&a[j])為: ;
n-1改為:n
t 改為:p
,&a[j]); “%d”
答案:見右邊修改語句5.下面程序的功能是:統(tǒng)計子字符串
substr
在字符串
str
中出現(xiàn)的次數(shù)。例如,若字符串為
aaaslkaaas,子字符串為as,則應(yīng)輸出main()
{charsubstr[80],str[80];inti,j,k,num=0;gets(substr);gets(str);for(i=0,str[i],i++)
for(j=i,k=0;substr[k]==str[j];k++,j++)
if(substr[k+1]!=’0’){
num++;
break;
}
printf( “num=%d”,num);
}
答案: 程序修改如右框所示。
二、程序填空題摻鶻宮誘粵瓔澗訪漚塒饞櫞溆驁譚。
2;判斷下面程序的正誤,如果錯誤請改正過來。
main()
{charsubstr[80],str[80];/*substr放需要統(tǒng)計的子字符串*/inti,j,k,num=0;
齦淀閉嘜紜綃綃罷颯囈慘謾壢鷯閥。gets(substr);
gets(str);
for(i=0;i<=strlen(str)-strlen(substr);i++)
for(j=i,k=0;substr[k]==str[j];k++,j++)
if(substr[k+1]=='\0')
{num++;break;
}
printf("num=%d",num);
}
鍰滌銚錳擔(dān)鱸紿慶蹌確釹諧欏錳鶩。1.下面程序可求出矩陣 a的主對角線上的元素之和,請?zhí)?(2)空使程序完整。
main()
{inta[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j;for(i=0;i<3;i++)
for(j=0;j<3;j++)if(【1】)sum=sum+【2】;
printf( “sum=%d”,sum);
}緣剎繪總祿釀恥麩釅檣鰥絀閑樹暫。答案: 【1】i==j
2.下面程序?qū)⑹M制整數(shù)main()
{inti,base,n,j,num[20];scanf(“%d”,&n);scanf(“%d”,base);do{
i++;
num[i]=【1】;n=【2】;
}while(n!=0);for(【3】);
printf(“%d”,num[j]);
}綺訐籩鏨磽賂縭誒殫龜癰檸適龕賄。
2】a[i][j]
base轉(zhuǎn)換成n進制,請?zhí)?3)空使程序完整。
main()
{inti=0,base,n,j,num[20];scanf("%d",&n);scanf("%d",&base);do{
i++;
num[i]=base%n;
base=base/n;
}while(base!=0);
for(j=i;j>=1;j--)
printf("%d",num[j]);
}
闋競瓚?zhàn)T糶劇類縶倫贊錒齙碩廳訊。答案:此程序有點小錯誤 ,紅色文字為改正錯誤 ,藍(lán)色文字為填空答案 .
3.下面程序的功能是輸入10個數(shù),找出最大值和最小值所在的位置,并把兩者對調(diào),然后輸出調(diào)整后的10個數(shù),請?zhí)?3)空使程序完整。
main()
{inta[10],max,min,i,j,k;for(i=0;i<10;i++)廟凍嘍嶸鴝維轆謁謗劌員鐐鯢蟈簽。
scanf( “%d”,&a[i]);
max=min=a[0];
for(i=0;i<10;i++){
if(a[i]<min){min=a[i]; 【1】;}
if(a[i]>max){max=a[i]; 【2】;}
} /*循環(huán)完后,最小的數(shù)組元素下標(biāo)放在變量 j中,最大的放在變量 k中*/
【3】; /* 借助中間變量 max,將最大最小兩數(shù)組元素交換 */
for(i=0;i<10;i++)
printf( “%d”,a[i]);
}
答案: 【1】j=i 【2】k=i 【3】max=a[j];a[j]=a[k];a[k]=max;
4.下面程序用“插入法”對數(shù)組a進行由小到大的排序,請?zhí)?(3)空使程序完整。
經(jīng)典算法提示:
簡單插入排序算法的基本思想使將數(shù)組處理 n-1次,第k次處理是將第 k個元素插入到
目前的位置。第k次的元素是這樣插入的:在第k次處理時,前面的元素a[0],a[1],,a[k-1]必定已排成了升序,將a[k]與a[k-1],a[k-2],a[0]逐個比較(由后向前),若有a[j]<a[k],則a[k]插入到a[j]之后,否則a[k]維持原位不變。
main()
{inta[10]={191,3,6,4,11,7,25,13,89,10};inti,j,k;
for(i=1;i<10;i++){k=a[i];
j=【1】;
while(j>=0&&k>a[j]){ /* k>a[j]改為: k<a[j] */
2】;
j--;
}
3】=k;
}
for(i=0;i<10;i++)printf( “%d”,a[i]);
}
答案: 【1】 i-1 【2】a[j+1]=a[j] 【3】a[j+1]
5.下面程序用“兩路合并法”把兩個已按升序(由小到大)排列的數(shù)組合并成一個新的升序數(shù)儔廂閣鑒誤濃縞韞鑌鮮鏑煙黃僅寶。組,請?zhí)?3)空使程序完整。
main()
{inta[3]={5,9,10};
intb[5]={12,24,26,37,48};
intc[10],i=0,j=0,k=0;
while(i<3&&i<5)
if(【1】){
c[k]=b[j];k++;j++;
}else{
c[k]=a[j];k++;i++;
}
while(【2】){屨熱陣攣鶚鯔處懲顆暈騎紺唄釹豈。
main()
{inta[3]={3,5,10};
intb[5]={1,6,26,37,48};
intc[10],i=0,j=0,k=0;
while(i<3&&j<5)
if(a[i]>b[j]){ c[k]=b[j];k++;j++;}
else{c[k]=a[i];k++;i++;}
while(i<3)
{c[k]=a[i];i++;k++;}while(j<5)
{c[k]=b[j];j++;k++;}
for(i=0;i<k;i++)printf("%d",c[i]);
}
此程序有點小錯誤,紅色文字為改正錯誤,藍(lán)色文字為填空答案.聶費慟偽幫鍰鋁憫韻縟琺熱譖圇餒。
{c[k]=a[j];i++;k++;}while(【3】){
{c[k]=b[j];j++;k++;}
鱸錘禪鋏綃誆擊綺禪錆裝鉦釵騏頑。for(i=0;i<k;i++)printf(“%d”,c[i]);}6.下面程序的功能是將二維數(shù)組a中每個元素向右移一列,最右一列換到最左一列,移后的結(jié)果保存到b數(shù)組中,并按矩陣形式輸出a和b,請?zhí)?3)空使程序完整。數(shù)組a數(shù)組main()main(){inta[2][3]={{4,5,6},{1,2,3}},b[2][3],i,j;{inta[2][3]={{4,5,6},{1,2,3}},b[2][3],i,j;for(i=0;i<2;i++)for(i=0;i<2;i++){for(j=0;j<3;j++)for(j=0;i<3;j++){printf("%5d",a[i][j]);printf(“%5d”,a[i][j]);printf("\n");【1】;}}printf("\n");printf(“n”);for(i=0;i<2;i++)}for(j=0;j<3;j++)for(【2】)b[i][0]=a[i][2];b[i][(j+1)%3]=a[i][j];for(i=0;i<2;i++){for(i=0;i<2;i++)for(j=0;i<3;j++){{for(j=0;j<3;j++)printf(“%5d”,b[i][j]);printf("%5d",b[i][j]);【3】;printf("\n");}}printf(n“”);printf("\n");}}}答案:此程序有錯誤,正確的程序見右框7.下面程序的功能是在一個字符串中查找一個指定的字符,若字符串中包含該字符則輸出該字符在字符串中第一次出現(xiàn)的位置(下標(biāo)值),否則輸出-1,請?zhí)?2)空使程序完整。include<>main(){charc= ’a’需要;/*查找的字符
chart[50];
inti,j,k;
gets(t);
i=【1】;
for(k=0;k<i;k++)
if(【2】)
{j=k;break;}
elsej=-1;
printf( “%d”,j);
}濃癱貢鈞輝靚鏌畝漬緡種劑蟯瑤蹣。
*/
答案:【1】
strlen(t)
【2】
t[k]==c
8.下面程序用“順序查找法”查找數(shù)組
a中是否存在某一關(guān)鍵字,請?zhí)?/p>
(2)空使程序完整。
main()
{inta[10]={25,57,48,371,123,291,18,22,44};inti=0,x;
scanf( “%d”,&x);
責(zé)鋁鴝鉿誹殯藎紇餡無緶騅鰩隊筍?!?】;while(a[i]!=x&&i<10)i++;if(【2】)printf(“found=%d”,i);elseprintf(“’cantfound!n”);}答案:【1】不需要填【
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆四川省綿陽市部分校中考生物對點突破模擬試卷含解析
- 農(nóng)戶鏟車出售合同范例
- 代理勞務(wù)派遣工合同范例
- 出租單價合同范例
- 第三單元 第1節(jié) 溫度 教學(xué)設(shè)計- 2024-2025學(xué)年人教版物理 八年級上冊
- 勞務(wù)總包合同范本
- 因材施教的個性化教育計劃
- 城建行業(yè)保安工作總結(jié)計劃
- 前臺文員的職業(yè)培訓(xùn)與發(fā)展路徑計劃
- 分析不同財務(wù)工具的適用場景計劃
- 家校共育(全國一等獎)
- 鋼筋桁架樓承板安裝指導(dǎo)手冊
- (完整word版)App產(chǎn)品需求文檔(PRD)
- 好的心理治愈只需一次:《了凡四訓(xùn)》的心理學(xué)解讀
- 三年級aredcoat公開課一等獎?wù)n件省賽課獲獎?wù)n件
- 污水處理廠項目委托運營協(xié)議
- 小螞蟻搬家繪本故事
- 開展因私出國境管理工作的自查報告10篇
- 分子克隆及蛋白表達(dá)常見問題和對策
- 哈爾濱LED廣告市場 媒體數(shù)據(jù)分析
- 載波與測距碼
評論
0/150
提交評論