C語言實驗程序、總結(jié) 實驗五 數(shù)組_第1頁
C語言實驗程序、總結(jié) 實驗五 數(shù)組_第2頁
C語言實驗程序、總結(jié) 實驗五 數(shù)組_第3頁
C語言實驗程序、總結(jié) 實驗五 數(shù)組_第4頁
C語言實驗程序、總結(jié) 實驗五 數(shù)組_第5頁
全文預覽已結(jié)束

下載本文檔

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

文檔簡介

實驗五數(shù)組一實驗目的1掌握一維數(shù)組和二維數(shù)組的定義、賦值和輸入輸出的方法;2掌握字符數(shù)組和字符串函數(shù)的使用;3掌握與數(shù)組有關(guān)的算法(特別是排序算法)二實驗內(nèi)容1程序功能:輸入12個整數(shù),按每行3個數(shù)輸出,最后輸出它們的平均值。#include<stdio.h>#defineN12main(){inti,a[N],av;for(i=0;i<N;i++)scanf("%d",a[i]);for(i=0;i<N;i++){printf("%d",a[i]);if(i%3==0)printf("\n");}for(i=0;i<N;i++)av+=a[i];printf("av=%f\N",av);}上面給出的程序有錯誤,請改正并運行,記錄輸出結(jié)果?!咎崾尽空堊⒁廨斎胩崾尽⒆兞抠x初值、循環(huán)結(jié)束條件、輸出格式等問題。修改正確的程序如下:#include<stdio.h>#defineN12main(){inti,a[N],av=0;for(i=0;i<N;i++)scanf("%d",&a[i]);for(i=0;i<N;i++){printf("%d",a[i]);if((i+1)%3==0)printf("\n");}for(i=0;i<N;i++)av+=a[i];printf("av=%d\n",av/N);}運行結(jié)果如下圖:2選擇排序(升序):最常用的排序方法除了冒泡排序外,還有選擇排序。【算法】n個數(shù)的選擇排序的算法:=1\*GB2⑴定義變量、輸入n及數(shù)組a各元素=2\*GB2⑵n個數(shù)排序要進行n-1遍以下是一遍排序(第i遍)的方法:①設(shè)最小數(shù)的下標k=i,則最小數(shù)為a[k]②從下標j=i+1的元素起,到最后一個元素(j=n-1),將a[j]與最小數(shù)a[k]比較,確定最小數(shù)的下標k③交換a[i]與最小數(shù)a[k]=3\*GB2⑶輸出已排序的n個數(shù)請根據(jù)上面的算法編寫選擇排序程序,并編輯運行、記錄輸入輸出數(shù)據(jù)。3編寫程序,輸出由1~N×N的整數(shù)組成的N階方陣和它的上、下三角陣。例如,N=3時,輸出:123123145656457899789N階方陣上三角陣下三角陣【提示】N階方陣用二維數(shù)組表示,用二重循環(huán)輸出:外循環(huán)控制輸出多少行,內(nèi)循環(huán)輸出每行中的整數(shù)。輸出上、下三角陣時注意內(nèi)循環(huán)控制變量的取值。程序如下:#include<stdio.h>main(){intn=3,i,j,a[10][10];for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n;i++){for(j=0;j<n;j++)printf("%d",a[i][j]);printf("\n");}printf("\n");for(i=0;i<n;i++){for(j=0;j<=i;j++)printf("%d",a[i][j]);printf("\n");}printf("\n");for(i=0;i<n;i++){for(j=0;j<n;j++)if(j<i)printf("");elseprintf("%d",a[i][j]);printf("\n");}}輸出結(jié)果如下圖:4按照下面算法編一個程序,將兩個字符串連接起來,不能用strcat函數(shù)。⑴定義整型變量i、j,字符串s1、s2⑵輸入字符串s1、s2⑶當字符串s1尚未結(jié)束,改變字符串s1的下標,使之到s1結(jié)束處⑷當字符串s2尚未結(jié)束,將字符串s2逐個字符連接到字符串s1的后面⑸為字符串s1添加結(jié)束標志⑹輸出連接后的字符串程序如下:#include<stdio.h>intmain(){inti=0,j=0,index=0;charstr1[50]={0};//存放拼接字符串1charstr2[50]={0};//存放拼接字符串2charstr12[100]={0};//存放拼接完的字符串printf("請輸入拼接的第一個字符串:");scanf("%s",&str1);printf("\n請輸入拼接的第二個字符串:");scanf("%s",&str2);while(str1[i]!='\0')//獲取長度{i++;}while(str2[j]!='\0'){j++;}for(index=0;index<i-1;index++)//不放字符串結(jié)束符str12[index]=str1[index];//把s1放入目標數(shù)組for(index=0;index<j;index++)str12[index+i]=str2[index];printf("\n拼接后的字%s",str12);getchar();getchar();return0;}三思考題編程將一個字符串中的字符按逆序重新存放,例如,原字符串:Computer逆序存放字符串:retupmoC程序如下:#include<stdio.h>

#include<string.h>

intmain()

{

chara[100],temp;

inti,Len;

gets(a);

Len=strlen(a);

for(i=0;i<=Len/2;i++)

{

temp=a[i];

a[i]=a[Len-1-

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論