久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

C語言必背的典型程序設計題目 - 數組、函數-------參考答案

時間:2019-05-13 10:40:45下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《C語言必背的典型程序設計題目 - 數組、函數-------參考答案》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《C語言必背的典型程序設計題目 - 數組、函數-------參考答案》。

第一篇:C語言必背的典型程序設計題目 - 數組、函數-------參考答案

數組部分必須會編寫的程序(參考答案)

1、使用選擇法、冒泡法對10個數進行排序,并輸出排序前后的數列。

//選擇法

#include void main(){ int a[10]={12,45,7,8,96,4,10,48,2,46},n=10,i,j,t,temp;printf(“Before sort:”);for(i=0;i<10;i++){

printf(“%4d”,a[i]);} printf(“n”);//排序

for(i=0;i<9;i++){

t=i;

for(j=i+1;j<10;j++)

{

if(a[t]>a[j])

{

t=j;

}

}

if(t!=i)

{

temp=a[i];

a[i]=a[t];a[t]=temp;

} } printf(“Aftere sorted:”);for(i=0;i<10;i++){

printf(“%4d”,a[i]);} printf(“n”);} //冒泡法

#include void main(){ int a[10]={12,45,7,8,96,4,10,48,2,46},n=10,I,j,t;printf(“Before sort:”);for(i=0;i<10;i++){ printf(“%4d”,a[i]);} prtintf(“n”);//排序

for(i=0;i<=n-1;i++)

{

for(j=0;j

if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;} } printf(“Aftere sorted:”);for(i=0;i<10;i++){ printf(“%4d”,a[i]);} prtintf(“n”);}

2、已知數組a中的元素已按由小到大順序排列,以下程序的功能是將輸入的一個數插入數組a中,插入后,數組a中的元素仍然由小到大順序排列。

#include void main(){ int a[10]={0,12,17,20,25,28,30};/*a[0]為工作單元,從a[1]開始存放數據*/

int x , i, j=6;

/*j為元素個數*/ printf(“Enter a number: ”);

scanf(“%d”,&x);a[0]=x;i=j;

/*從最后一個單元開始*/ while(a[i]>x){

a[i+1]=a[i];i--;

/*將比x大的數往后移動一個位置*/ } a[++i]=x;j++;

/*插入x后元素總個數增加*/ for(i=1;i<=j;i++)

printf(“%8d”,a[i]);printf(“n”);}

3、(提高題目)編號為1,2,3,……n的n個人按順時針方向圍坐一圈。任選一個正整數作為報數上限m,從第1個人開始按順時針方向自1開始順序報數,報到m時停止報數。報m的人出列,從他在順時針方向上的下一個人開始重新從1報數,如此下去,直至所有人全部出列為止。設計程序輸出出列順序。

#include #define nmax 50 void main(){ int i,k,m,n,t,num[nmax];

printf(“please input the total of numbers:”);scanf(“%d”,&n);printf(“please input the upper bound of numbers:”);scanf(“%d”,&m);

for(i=0;i

//數組初始化

num[i]=0;

i=0;

//用于記錄順序1..n k=0;

//用于記錄順序1..m t=0;

//用于記錄出列順序

while(t

} { if(num[i]==0)k++;if(k==m){

t++;

num[i]=t;

k=0;} i++;if(i==n)i=0;//或者 i=i%n,構成循環 } for(i=0;i

printf(“%4d”,i+1);printf(“n”);for(i=0;i

printf(“%4d”,num[i]);printf(“n”);

4、編程打印直角楊輝三角形前六行。

#include #include void main(){ int i,j,a[6][6];for(i=0;i<=5;i++){

a[i][i]=1;

a[i][0]=1;} for(i=2;i<=5;i++){

for(j=1;j<=i-1;j++)

{

a[i][j]=a[i-1][j]+a[i-1][j-1];

} } for(i=0;i<=5;i++){

for(j=0;j<=i;j++)

{

printf(“%4d”,a[i][j]);

}

printf(“n”);} }

5、編寫程序,把下面的數據輸入一個二維數組中。12 75 56 然后執行以下操作:

13 26 88 93 18 22 32 44 36 58 ①輸出矩陣兩個對角線上的數;

②分別輸出各行和各列的和; ③交換第一行和第三行的位置; ④交換第二列和第四列的位置; ⑤輸出處理后的數組。

#include #define SIZE 4 void main(){ int a[SIZE][SIZE]={{25,36,78,13},{12,26,88,93},{75,18,22,32},{56,44,36,58}};int i,j,t,sum;

//輸出二維數組

printf(“二維數組:n”);for(i=0;i

for(j=0;j

{

printf(“%5d”,a[i][j]);

}

printf(“n”);}

printf(“n”);

printf(“主對角線上的數:”);for(i=0;i

printf(“%4d”,a[i][i]);} printf(“n”);

printf(“副對角線上的數:”);for(i=0;i

printf(“%4d”,a[i][SIZE-1-i]);} printf(“nn”);

//各列的和

for(i=0;i

sum=0;

for(j=0;j

{

sum+=a[i][j];

}

printf(“第%d行的和=%dn”,i+1,sum);} printf(“n”);

//各列的和

for(j=0;j

} { sum=0;for(i=0;i

sum+=a[i][j];} printf(“第%d列的和=%dn”,j+1,sum);}

printf(“n”);//交換第一行和第三行的位置 for(j=0;j

printf(“交換第一行和第三行后的二維數組:n”);for(i=0;i

printf(“%5d”,a[i][j]);} printf(“n”);}

printf(“n”);//交換第二列和第四列的位置 for(i=0;i

printf(“交換第2列和第4列后的二維數組:n”);for(i=0;i

printf(“%5d”,a[i][j]);} printf(“n”);}

6、求一個5×5矩陣中的馬鞍數,輸出它的位置,所謂馬鞍數是指在行上最小而在列上最大的數。如下矩陣:

?5 6 7 8 9???4 5 6 7 8???3 4 5 2 1???2 3 4 9 0???1 2 5 4 8???

則1行1列上的數就是馬鞍數。#include void main(){ int a[5][5]={{5,6,7,8,9},{4,5,6,7,8},{3,4,5,2,1},{2,3,4,9,0},{1,2,5,4,8}};int i,j,col,row,Min,Max;

for(i=0;i<5;i++){

Min=a[i][0];col=0;

for(j=0;j<5;j++)

{

if(Min>a[i][j])

{

Min=a[i][j];

col=j;

}

}

Max=a[0][col];row=0;

for(j=0;j<5;j++)

{

if(Max

{

Max=a[j][col];

row=j;

}

}

if(row==i)

printf(“馬鞍數是行%d,列%d 值:%dn”,row+1,col+1,a[row][col]);} }

7、定義一個二維數組,存入5個學生的數學、語文、英語、物理、化學5門課程的成績,計算并輸出每一門課程的平均成績和每一位學生的平均成績。

#include #define N 5

//代表學生數 #define M 5

//代表課程數 void main(){ int scores[N][M]={{78,89,90,76,65},{86,79,98,74,95},{78,67,96,90,65}, {92,79,98,74,95},{69,94,85,67,56}};

int i,j,sum;

//輸入學生成績

/* for(i=0;i

printf(“輸入第%d個學生的數學、語文、英語、物理、化學5門課程的成績:”,i+1);

for(j=0;j

scanf(“%d”,&scores[i][j]);}*/

//輸出學生成績

printf(“序號t數學t語文t英語t物理t化學t平均成績n”);for(i=0;i

sum=0;

printf(“%dt”,i+1);

for(j=0;j

{

sum+=scores[i][j];//計算每一位學生的總成績

printf(“%dt”,scores[i][j]);

}

printf(“%dn”,sum/M);

//輸出每一位學生的平均成績

}

//計算并輸出每一門課程的平均成績

printf(“n平均t”);for(j=0;j

sum=0;

for(i=0;i

{

sum+=scores[i][j];

}

printf(“%dt”,sum/N);

}

printf(“n”);}

8、輸入一個字符串,判斷其是否為回文。回文字符串是指從左到右讀和從右到左讀完全相同的字符串。

#include #include void main(){ char s[100];

int i,j,n;

printf(“輸入字符串:n”);

gets(s);

n=strlen(s);

for(i=0,j=n-1;i

if(s[i]!=s[j])

break;

if(i>=j)printf(“是回文串n”);

else

printf(“不是回文串n”);}

9、編寫程序實現從字符數組s中刪除存放在c中的字符。

#include #include

void main(){ char s[80],c;

int j,k;

printf(“nEnter a string: ”);

gets(s);

printf(“nEnter a character: ”);

c=getchar();

for(j=k=0;s[j]!= '

主站蜘蛛池模板: 欧美真人性野外做爰| 日日噜噜夜夜狠狠va视频| 狠狠久久久久综合成人影院| 国产色视频免费| 亚洲精品成人无码中文毛片不卡| 成熟丰满熟妇高潮xxxxx| 日本少妇高潮喷水xxxxxxx| 国产丝袜肉丝视频在线| 亚洲大成色www永久网站| 亚洲国产成人精品无码区在线观看| 精品无码黑人又粗又大又长| 国产精品国产三级国av在线观看| 婷婷亚洲综合五月天小说| 国产免费久久精品99reswag| 国产成人人综合亚洲欧美丁香花| 又粗又硬又黄又爽的免费视频| 亚瑟国产精品久久| 超碰97人人做人人爱亚洲尤物| 人妻avav中文系列久久| 加勒比色综合久久久久久久久| 狠狠综合久久久久尤物| 99精品国产再热久久无毒不卡| 无码少妇一区二区浪潮免费| 国产毛片女人高潮叫声| 国产成人无码一区二区三区| 美女久久| 国产特级毛片aaaaaa高潮流水| 亚洲国产成人久久久网站| 国产精品亚洲欧美大片在线看| 国产人碰人摸人爱免费视频| 国产成人亚洲综合无码加勒比一| 国产麻花豆剧传媒精品mv在线| 国产成人精品优优av| 综合一区无套内射中文字幕| 成人免费看黄网站yyy456| 2021国产成人精品久久| 日本熟妇色xxxxx欧美老妇| 国产亚洲精品久久无码98| 免费无码视频| 欧美群交射精内射颜射潮喷| 亚洲熟妇无码av在|