c语言习题

21 阅读1分钟

1.从键盘输入6个整数,找出这6个整数中的最大值,并输出到控制台。

    int main() {
	int arr[6];
	for (int i = 0; i < 6 ; i++){
		scanf(&#34;%d&#34;,&arr[i]);
	}
	for(int i = 0;  i < 5; i++){
		for(int j = 0 ; j < 5 - i ; j++){
			if (arr[j]>arr[j+1]){
				int temp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = temp;		
			}
		}
	}
	for(int k = 5; k > 4; k--){
			printf(&#34;%d&#34;,arr[k]);
		}               
}

image.png

2.从键盘输入6个整数,使用冒泡排序将这6个整数从大到小排列。

int main(){
	int arr[5];
	
	for (int i = 0; i < 6 ; i++){
		scanf(&#34;%d&#34;,&arr[i]);
	}
	for(int i = 0;  i < 5; i++){
		
	
		for(int j = 0 ; j < 5 - i ; j++){
			if (arr[j]>arr[j+1]){
				int temp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = temp;
				
			}
		}
		}
		for(int k = 0; k < 6; k++){
			printf(&#34;%d&#34;,arr[k]);
		}
	printf(&#34;\n&#34;);
}

image.png

3.矩阵转置是线性代数的基本运算,就是矩阵的行,列交换,要求编写程序,实现一个输入4行4列的矩阵,将矩阵转置后输出。

#include 
#include 
#define ROW 4 
#define COL 4

int main() {

    int m[ROW][COL];
    int t[COL][ROW];
    int i, j;

    printf(&#34;请输入44的矩阵,每行输入4个整数\n&#34;);
    for (i = 0; i < ROW; i++) {
        printf(&#34;请输入第%d行:&#34;, i + 1);
        for (j = 0; j < COL; j++) {
            scanf(&#34;%d&#34;, &m[i][j]);
        }
    }

    for (i = 0; i < ROW; i++) {
        for (j = 0; j < COL; j++) {
            t[j][i] = m[i][j];
        }
    }

    printf(&#34;\n转置后的矩阵为:\n&#34;);
    for (i = 0; i < COL; i++) {
        for (j = 0; j < ROW; j++) {
            printf(&#34;%d &#34;, t[i][j]);
        }
        printf(&#34;\n&#34;);
    }

    return 0;
}


image.png