1. 程式人生 > >2018年11月8日 陣列及其應用(二)

2018年11月8日 陣列及其應用(二)

以下內容僅供娛樂,歡迎隨時探討,請多指教
2018年11月8日
1、定義一個N行N列的二位陣列,求二維陣列中的最大值和最小值。 輸出最大值和最小值以及他們的位置。

#include <stdio.h>
int main()
{
    int a[3][3]={{5,2,13},
                {4,11,6},
                {7,8,9}};
    int min=0,max=0,i,k;
    for(i=0;i<3;i++)
    for(k=0;k<3;k++)
    {
        if(a[i][k]
<a[min/10][min%10])min=i*10+k; if(a[i][k]>a[max/10][max%10])max=i*10+k; } printf("min=%d\nmax=%d\n",a[min/10][min%10],a[max/10][max%10]); printf("min=%02d\nmax=%02d\n",min,max); return 0; }

2、從鍵盤輸入4個學生3門課程的成績,求每門課程的平均分。

#include <stdio.h>
int main()
{
    double a[4][3];
    int
i,k; double sum1,sum2,sum3; printf("請輸入陣列 0 1 2\n0\n1\n2\n3\n\n\n"); for(i=0;i<4;i++) for(k=0;k<3;k++) { scanf("%lf",&a[i][k]); } for(i=0;i<4;i++) { sum1+=a[i][0]; sum2+=a[i][1]; sum3+=a[i][2]; } printf("結果是:\n%lf\n%lf\n%lf\n"
,sum1/4,sum2/4,sum2/4); return 0; }

3、華為上機練習題–比較二維陣列列最小值,組成一個新陣列返回

#include <stdio.h>
int main()
{
	int a[3][3]={{5,2,13},{4,11,6},{7,8,9}},b[3];
	int i,k,n;
    for(i=0;i<3;i++)//列
    {
        n=0;
        for(k=0;k<3;k++)//行
        {
            if( a[k][i] > a[n][i] )n=k;
            //記錄
        }
        b[i]=a[n][i];
    }
    for(i=0;i<3;i++)
        printf("%d ",b[i]);
	return 0;
}

4、Write a program using two-dimensional array f[4][5] to store and print out the following matrix.(使用二維陣列f [4] [5]編寫程式來儲存和打印出以下矩陣)

       *  #  #  #  # 
       *  *  #  #  # 
       *  *  *  #  # 
       *  *  *  *  #  
#include <stdio.h>
int main()
{
	char f[4][5];
	int i,k;
	for(i=0;i<4;i++)
    for(k=0;k<5;k++)
    {
        if(k>i)f[i][k]='#';
        else f[i][k]='*';
    }
    for(i=0;i<4;i++)
    {
        for(k=0;k<5;k++)
            printf(" %c ",f[i][k]);
        printf("\n");
    }

	return 0;
}

5、Write a program using two-dimensional array f[5][5] to store and print out the following matrix. (使用二維陣列f [5] 5編寫程式來儲存和打印出f)

1   0   0   0   1 
0   1   0   1   0 
0   0   1   0   0 
0   1   0   1   0 
1   0   0   0   1  
#include <stdio.h>
int main()
{
	int f[5][5];
	int i,k;
	for(i=0;i<5;i++)
    for(k=0;k<5;k++)
    {
        if( k == i || i==(4-k) ) f[i][k]=1;
        else f[i][k]=0;
    }
    for(i=0;i<5;i++)
    {
        for(k=0;k<5;k++)
            printf(" %d ",f[i][k]);
        printf("\n");
    }

	return 0;
}

6.把1~25的自然數按行順序存入一個5*5的二位陣列中,然後打印出該陣列的右上半三角。

#include <stdio.h>
int main()
{
	int f[5][5];
	int i,k,n;
	for(i=0;i<5;i++)
    {
        n=i*5+1;
        for(k=0;k<5;k++)
        {
            f[i][k]=n;
            n++;
        }
    }
    for(i=0;i<5;i++)
    {
        for(k=0;k<5-i;k++)
            printf("%4d ",f[i][k]);
        printf("\n");
    }
	return 0;
}

7、計算n階方陣兩條對角線元素之和並輸出。

#include <stdio.h>
int main()
{
	int a[100][100];
	int i,k,n,sum1=0,sum2=0;
	printf("input N:");
	scanf("%d",&n);
	printf("請輸入%d*%d的矩陣:\n",n,n);
	for(i=0;i<n;i++)
    for(k=0;k<n;k++)
           scanf("%d",&a[i][k]);
    for(i=0;i<n;i++)
        sum1+=a[i][i],sum2+=a[i][n-1-i];
    printf("sum1=%d\nsum2=%d\n",sum1,sum2);
	return 0;
}

8、通過二維陣列實現楊輝三角的前n行並輸出。
在這裡插入圖片a描述

#include <stdio.h>
int main()
{
	int a[100][100];
	int i,j,n;
	printf("input n:");
	scanf("%d",&n);
    for(i=0;i<n;i++)
        a[i][0]=1,a[i][i]=1;
    for(i=2;i<n;i++)
    {
        for(j=1;j<i;j++)
            a[i][j]=a[i-1][j-1]+a[i-1][j];
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<=i;j++)
            printf("%-5d",a[i][j]);
        printf("\n");
    }
	return 0;
}

9、矩陣的轉置

#include <stdio.h>
int main()
{
	int a[100][100];
	int b[100][100];
	int i,k,m,n;
	printf("請輸入矩陣大小m,n\n");
	scanf("%d%d",&m,&n);
	printf("請輸入%d*%d矩陣\n",m,n);
	for(i=0;i<m;i++)
	for(k=0;k<n;k++)
        scanf("%d",&a[i][k]);
    printf("原來的的是:\n");
    for(i=0;i<m;i++)
    {
        for(k=0;k<n;k++)
        printf("%5d",a[i][k]);
        printf("\n");
    }
	for(i=0;i<m;i++)
	for(k=0;k<n;k++)
        b[k][i]=a[i][k];//轉置
    printf("變化後的是:\n");
    for(i=0;i<n;i++)
    {
        for(k=0;k<m;k++)
        printf("%5d",b[i][k]);
        printf("\n");
    }
	return 0;
}

10、矩陣的加法

#include <stdio.h>
void output(int a[][4],int m,int n)
{
    int i,k;
    for(i=0;i<m;i++)
    {
        for(k=0;k<n;k++)
            printf("%-5d",a[i][k]);
        printf("\n");
    }
}
int main()
{
	int A[3][4]={{15,10,9,12},
                 {18,14,8,7},
                 {16,13,6,11}};
    printf("矩陣A=\n");
    output(A,3,4);
    int B[3][4]={{4,3,5,2},
                 {0,9,6,1},
                 {5,7,2,6}};
    printf("矩陣B=\n");
    output(B,3,4);
    int C[3][4];
    int i,k;
    /*矩陣相加:兩個矩陣必須行數和列數一樣才能相加,
    和矩陣的每個元素分別是兩個矩陣對應的元素的和*/
    printf("矩陣A+矩陣B=\n");
    for(i=0;i<3;i++)
    {
        for(k=0;k<4;k++)
            C[i][k]=A[i][k]+B[i][k];
    }
    output(C,3,4);
	return 0;
}

11、矩陣的乘法

#include <stdio.h>
void output(int a[][4],int m,int n)
{
    int i,k;
    for(i=0;i<m;i++)
    {
        for(k=0;k<n;k++)
            printf("%-5d",a[i][k]);
        printf("\n");
    }
}
int main()
{
	int A[3][4]={{15,10,9,12},
                 {18,14,8,7},
                 {16,13,6,11}};
    printf("矩陣A=\n");
    output(A,3,4);
    int B[3][4]={{4,3,5,2},
                 {0,9,6,1},
                 {5,7,2,6}};
    printf("矩陣B=\n");
    output(B,3,4);
    int C[3][4];
    int i,k;
    /*矩陣相乘:兩個矩陣必須行數和列數一樣才能相乘,
    和矩陣的每個元素分別是兩個矩陣對應的元素的乘*/
    printf("矩陣A*矩陣B=\n");
    
            
           

相關推薦

2018118 陣列及其應用

以下內容僅供娛樂,歡迎隨時探討,請多指教! 2018年11月8日 1、定義一個N行N列的二位陣列,求二維陣列中的最大值和最小值。 輸出最大值和最小值以及他們的位置。 #include <stdio.h> int main() { int a[3][3]={{5,2,1

2018118有感而發

  人最大的悲哀就在於短視吧。   當我們躺在自己的生活裡看別人的故事,我們會羨慕別人。但很多時候我們都忘了其實我們也可以活得那麼精彩。   你本可以讀書,但你沒有;你本可以跑步,但你沒有;你本可以認真努力,但你沒有。   哪裡有什麼驚天動地?哪裡有什麼永垂不朽?   不過都是平淡的生活打磨出來的石子

工作總結 2018118

  工作總結 一.完成工作: 完成從105頁到145頁閱讀 (未能完成Chapter9閱讀) 完成書中專案編寫以及執行 瞭解MyBatis核心配置 瞭解動態SQL 瞭解MyBatis的關聯對映   二.明日計劃: 14

2018118 -容器生態分享會》

1. 容器生態介紹 基本概念 ​ 說到容器技術,大家都想到docker,可能認為容器就是docker,docker也是容器。其實,docker僅僅是一種容器的引擎。除了docker以外,還有CoreOS的RKT,還有linux的容器技術LXC等。而docker是這些容器引

2018113 一維陣列作業

2018-11-3 以下內容僅供娛樂,歡迎隨時探討,請多指教! 順序查詢法:輸入n個數,存入陣列a中,再輸入一個數,然後在其中查詢,輸出下標,如果沒有,輸出"Not found"。 #include"stdio.h" int main() { int a[101],i,x,n,p

2018128週末作業11

依次輸入五句話,然後將它逆序輸出 import java.util.Scanner; public class 週末課後作業11 { public static void main(String[] args) { Scanner input = new Scanner(Syste

201858筆記

grep 字節 width RoCE system ID 字符串類型 工作 abs CentOS 7上安裝mysql # CentOS 7 安裝mysql 1. 檢測系統是否自帶安裝 mysql rpm -qa | grep mysql 2. 若已安裝,可以進行卸

2018111開通部落格園感想!

為什麼開通部落格園?對啊?我也想問自己這個問題。我想,還是為了自己心中那份不安分吧。至於自己心中的那小目標,我一直在奮鬥著。。。。。,我感覺在向我招手,我在一直在努力著。歸結一點就是使自己to Strong,better Strong。 學習是一個持續的過程,由於學習知識的混亂,我認為有必要將自己的學習的知

2018111開通博客園感想!

歸納 str 知識 ron tle 總結 後來 混亂 一點 為什麽開通博客園?對啊?我也想問自己這個問題。我想,還是為了自己心中那份不安分吧。至於自己心中的那小目標,我一直在奮鬥著。。。。。,我感覺在向我招手,我在一直在努力著。歸結一點就是使自己to Strong,bett

2018111提高組 T1 可見點數

大意 給定一個 n × n n\

CocoaPods更新2018110616:06:48

https://gems.ruby-china.org點進去就知道了……   CocoaPods命令 更新 sudo gem install cocoa pods 檢視版本 pod --version 檢視gem源 gem sources -l 刪除gem源 gem sour

2018112 關於dropdownlist,繫結資料來源後顯示system.data.datarowview的問題解決

準備實現兩個dropdownlist二級聯動的功能: 在一個dropdownlist 繫結過資料來源之後顯示,system.data.datarowview,無法顯示從資料庫中查詢到的值。 原因是:  DropDownList4.DataTextField沒有繫結。 &nb

Apache Struts最新漏洞 遠端程式碼執行漏洞預警 20181108

2018年11月8日,SINE安全監控檢測中心,檢測到Apache Struts官方更新了一個Struts漏洞補丁,這個漏洞是Apache Struts目前最新的漏洞,影響範圍較廣,低於Apache Struts 2.3.35的版本都會受到此次Struts漏洞的***,目前apache官方更新的漏洞補丁,主要

Apache Struts最新漏洞 遠程代碼執行漏洞預警 20181108

pro 都在 網站服務器 技術 common log down ESS 詳細 2018年11月8日,SINE安全監控檢測中心,檢測到Apache Struts官方更新了一個Struts漏洞補丁,這個漏洞是Apache Struts目前最新的漏洞,影響範圍較廣,低於Apach

2018108django檢視版本命令,python2&3中print區別,iterable報錯,SSH,pycharm/ubuntu顏色設定

檢視Django版本的命令: 1. 在終端中輸入: python -m django –-version 2. 進入python互動環境:        import django    &nb

20181110——《啟示錄》閱讀思考第三章

第三章——產品管理與專案管理 1、產品經理兼任專案經理的工作這種模式雖然適用於零售軟體產品,但不太適合開發網際網路服務類產品。 2、在零售軟體領域,產品通常以獨立安裝包的形式釋出,釋出間隔從幾個月到幾年不等,產品和專案具有相同的粒度,開發頻率也相同,產品經理兼任專案經理相對容易。

20181110 關於Vue.js生態之Vue-router and 傳參方式

關於router的用法 //在html中的相關程式碼 <div id="app"> <div> <router-link to="/">首頁</router-link> //<router-link>是Vue-route

20181110 關於Vue的混合mixins and 插槽slots

1、混合mixins //在html中的相關程式碼 <div id="app"> <popup></popup> <tooltip></tooltip> </div> //在Vue.js的相

20181109 關於Vue的過濾器 and 自定義指令—基礎配置 and 配置傳參及修飾符

1、過濾器 //在html下的程式碼 <div id="app"> <div> <input type="text" v-model="len" />mm {{len | meter}} </div

20181108 關於Vue的父子通訊 and 子父通訊 and 任意及平行元件間通訊的學習

1、父子通訊 //在html中的相關程式碼 <body> <div id="app"> <alert change_alert="再見"></alert> //如果我們想要點選按鈕的時候彈出的內容時change_alert中的“再