c實(shí)驗(yàn)練習(xí)題測(cè)試:test8_第1頁(yè)
c實(shí)驗(yàn)練習(xí)題測(cè)試:test8_第2頁(yè)
c實(shí)驗(yàn)練習(xí)題測(cè)試:test8_第3頁(yè)
c實(shí)驗(yàn)練習(xí)題測(cè)試:test8_第4頁(yè)
c實(shí)驗(yàn)練習(xí)題測(cè)試:test8_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)驗(yàn)八函數(shù)的應(yīng)用一、 實(shí)驗(yàn)?zāi)康?. 掌握函數(shù)的定義和調(diào)用方法。2. 掌握函數(shù)實(shí)參與形參的參數(shù)傳遞關(guān)系。二、 實(shí)驗(yàn)任務(wù)1閱讀、調(diào)試、運(yùn)行程序,比較閱讀的結(jié)果和運(yùn)行的結(jié)果。1)#include "stdio.h"int f(int n) if (n=1) return 1;else return f(n-1)+1;void main() int i,j=0;for(i=1;i<3;i+) j+=f(i);printf("%dn",j);2)#include<stdio.h>void num() extern int x,y;int a=15

2、,b=10; x=a-b; y=a+b;int x,y; /全局變量void main() int a=7,b=5; x=a+b; y=a-b; num(); printf("%d,%dn",x,y);3)#include<stdio.h>void main() int a33=1,3,5,7,9,11,13,15,17; int sum; int fun(int a3) ; sum=fun(a); printf("nsum=%dn",sum);int fun(int a3) int i,j,sum=0; for(i=0;i<3;i+)

3、 for(j=0;j<3;j+) aij=i+j; if(i=j)sum=sum+aij; return(sum);4)#include<stdio.h>int fun(int x) static int a=3; /靜態(tài)變量(空間一直存在),就做一次 a+=x; return(a); void main() int k=2,m=1,n; n=fun(k); m=fun(m); printf("%d%dn",n,m);5)#include <stdio.h>f(int b, int n)int i,r;r=1;for(i=0; i<=n;

4、i+) r=r*bi;return r;void main()int x,a=2,3,4,5,6,7,8,9;x=f(a, 3);printf("%dn",x);6)己知函數(shù)isalpha(ch)的功能是判斷變量ch是否是字母,若是,函數(shù)值為1,否則為0,下面程序的輸出是( )。 #include "stdio.h"#include<ctype.h>#include<string.h>void fun4(char str)int i,j;for (i=0,j=0;stri;i+)if (isalpha(stri)strj+=str

5、i;strj='0'void main()char ss80="it is!"fun4(ss);printf("%sn",ss);2. 完善程序,并調(diào)試運(yùn)行1)下面程序通過函數(shù)average 計(jì)算數(shù)組中各元素的平均值,請(qǐng)?zhí)羁铡?include "stdio.h"float average (int pa ,int n)int i; float avg=0.0; for (i=0;i<n;i+) avg=avg+( 1 ); avg=( 2 ); return avg;void main()int a5=2,4,6

6、,8,10; float mean; mean=average(a,5); printf("mean=%fn",mean);2)以下程序是用選擇法對(duì)10個(gè)整數(shù)按升序排序,程序中有4個(gè)空,填空使程序完整。#include "stdio.h"( 1 ) void sort(int a)int i,j,k,t;for(i=0;i<N-1;i+) ( 2 ) for(j=i+1; ( 3 );j+) if(aj<ak) k=j; if( 4 )t=ai;ai=ak;ak=t;void main()int i,a10; for(i=0;i<=N-

7、1;i+) scanf("%d",&ai); sort(a); printf("output the sorted array:n"); for(i=0;i<=N-1;i+) printf("%5d",ai); printf("n");3)以下程序的功能是輸入字符串,再輸入一個(gè)字符,將字符串中與輸入字符相同的字符刪除。#include "stdio.h"void fun(char a,char c)int i,j; for(i=j=0; ( 1 );i+) if(ai!=c) aj

8、+=ai; ( 2 ); void main() char a20,cc; ( 3 ); cc=getchar();cc=getchar(); ( 4 ); puts(a); 4)以下程序的功能是用冒泡法對(duì)數(shù)組a 進(jìn)行由小到大的排序。請(qǐng)?jiān)凇尽刻幪顚懻_的內(nèi)容。#include "stdio.h"void fun(int a,int n)int i,j,t; for (j=0; ( 1 );j+) for (i=0; ( 2 );i+) if( 3 ) t=ai;ai=ai+1;ai+1=t; void main() int i,a10=3,7,5,1,2,8,6,4,10,

9、9; ( 4 ); for(i=0;i<10;i+) printf("%3d",ai); 3. 修正程序,并調(diào)試運(yùn)行1)下面程序的功能是:在一個(gè)一維整型數(shù)組中找出其中最大數(shù)的其下標(biāo)。程序中共有4條錯(cuò)誤語(yǔ)句,請(qǐng)改正錯(cuò)誤。注意:不要增行或刪行,也不要更改程序的結(jié)構(gòu)。#include "stdio.h"#define N 10/*found*/int fun(int a,int n);int max,c; /*found*/max=a1; for(c=1;c<n;c+) if(ac>max) max=c; return max;void ma

10、in()int aN,i,max; printf("please enter 10 integers:n"); for(i=0;i<N;i+)/*found*/ scanf("%d",ai);/*found*/max=fun(a0,N); printf("max=%d,position=%d",max,p);2)以下程序的功能是將一個(gè)字符串中的大寫字母轉(zhuǎn)換成小寫字母。例如:輸入aSdFG輸出為asdfg。請(qǐng)改正程序中的錯(cuò)誤,使程序能得到正確的運(yùn)行結(jié)果。#include<stdio.h>/*found*/fun(cha

11、r c)if(c<='Z'&&c>='A') c-='A'-'a'return c;void main()/*found*/char s81,i=0;gets(s);while(si)si=fun(si);/*found*/puts(s0);i+;putchar('n');3)下列給定程序中,函數(shù)fun的功能是:求二維數(shù)組的每行的和,輸出二維數(shù)組時(shí),將每行的和輸出在每行的右邊。請(qǐng)改正程序中的錯(cuò)誤或在橫線上添上適當(dāng)?shù)恼Z(yǔ)句,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行和刪行,也

12、不得更改程序的結(jié)構(gòu)!#include "stdlib.h"#include "stdio.h"#include “math.h” void main() int a55,b5,i,j; void fun(int a55,int b5); for(i=0;i<5;i+) for(j=0;j<5;j+) aij=rand()+20; fun(a,b); for(i=0;i<5;i+) for(j=0;j<5;j+) printf("%5d",aij); printf("%5d",bi); pri

13、ntf("n"); /*found*/void fun(int a,int b) int i,j,s=0; for(i=0;i<5;i+) ; for(j=0;j<5;j+) /*found*/s=aij; /*found*/ s=bi; 4)下列給定程序中,fun函數(shù)的功能是:先從鍵盤上輸入一個(gè)3行3列矩陣的各個(gè)元素的值,然后輸出主對(duì)角線上的元素之和。請(qǐng)改正程序中的4個(gè)錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行和刪行,也不得更改程序的結(jié)構(gòu)!#include "stdio.h" int fun() int a33,sum; int i,j; /*found*/a=0; for(i=0;i<3;i+) for(j=0;j<3;j+) /*found*/ scanf("%d",aij); for(i=0;i<3;i+) /*found*/ sum=sum+aij; /*found*/ printf("sum=%fn",sum); void main() int n;/*found*/n=fun(); 4編寫程序,并調(diào)試運(yùn)行1)編寫函數(shù)fun求1!+2!+3!+ +n!的和,在main函數(shù)中由鍵盤輸入n值,并輸出運(yùn)算結(jié)果。2)請(qǐng)編

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論