㈠ 從鍵盤輸入一個3行4列的矩陣,將其轉置後,變成4行3列的矩陣輸出。這個c語言的代碼咋寫
# include <stdio.h>
int main(void)
{
int a[3][4] = {11,12,13,14,21,22,23,24,31,32,33,34};
int b[4][3];
int i, j;
for(i=0; i<4; i++) //轉置數組;
for(j=0; j<3; j++)
b[i][j] = a[j][i];
for(i=3; i>=0; i--) //反向輸出轉置後的數組;
{
for(j=2; j>=0; j--)
printf("%5d", b[i][j]);
putchar(' ');
}
return 0;
}
(1)c語言怎麼輸出矩陣擴展閱讀
include用法:
#include命令預處理命令的一種,預處理命磨鏈令可以將別的源代碼內容插入到所指定的位置;可以標識出只有在特定條件下才瞎漏孫會被編譯的某一段程序代碼;可以定義類似標識符功能的宏,在編譯時,預處理器會用別的文本取代該宏。
插入頭文件的內容
#include命令告訴預處理器將指定頭文件的內容插入到預處理器命令的相應位置。有兩種方式可以指定插入頭文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含標准庫頭文件或者實現版本所提供的頭文件,應該使用第一種格式。如下例所示:
#include<math.h>//一些數學函數的原型,以及相搜春關的類型和宏
如果需要包含針對程序所開發的源文件,則應該使用第二種格式。
採用#include命令所插入的文件,通常文件擴展名是.h,文件包括函數原型、宏定義和類型定義。只要使用#include命令,這些定義就可被任何源文件使用。
㈡ c語言輸出一個5*6的矩陣怎麼表示
用c語言編程輸入下列矩陣,用C語言編程的一道題 在主函數內任意輸入一個5X6的矩陣,編寫一函數求出每一行的和放到一個一位數組中,輸入此矩陣及其每一行的和...
非凡運營筆記
轉載
關注
0點贊·549人閱讀
滿意答案
pyqbl001
2014.06.29
採納率:49% 等級:11
已幫助:5151人
#
㈢ 如何用C語言輸出3*3的矩陣
#include "stdio.h"
#define N 3
int main()
{
int a[N][N];
int i,j;
printf("輸入%d個整數:\n",N*N);
for(i=0;i<N;i++)
for(j=0;j<N;j++)
scanf("%d",&a[i][j]);
printf("\n輸出矩陣如下:\n");
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
printf("%3d ",a[i][j]);
printf("\n");
}
return 0;
}
㈣ 急求!如何用C語言輸出如下矩陣(N*N)
題目要求有一個問題,它要求N最小為2,卻要求N為奇數,N為奇數應該最小為3或1才對.
按照題目要求編寫的C語言矩陣程序如下
#include<stdio.h>
int main(){
int i,j,k,N,count=1;
scanf("%d",&N);
if(N<=2 || 15<N || N%2==0){
printf("請輸入小於等於15且大於2的奇數");
}else{
int a[N][N];
for(i=N/2;i>=0;i--){
k=N-i-1;
for(j=N-i-2;j>=i;j--){
a[j][k]=count++;
}
for(j=N-i-2;j>=i+1;j--){
a[i][j]=count++;
}
for(j=i;j<N-i;j++){
a[j][i]=count++;
}
for(j=i+1;j<N-i;j++){
a[k][j]=count++;
}
}
for(i=0;i<N;i++){
for(j=0;j<N;j++){
printf("%-5d",a[i][j]);
}
printf(" ");
}
}
return 0;
}
㈤ 怎麼用C語言輸出以下2行4列的矩陣 1234 5678
我建議樓主先用分析下面這個代碼分析內外層碧改循環
#include<stdio.h>
int main()
{
int a[2][4]={1,2,3,4,5,6,7,8};
int i,j;
for(i=0;i<2;i++)
{
for(j=0;j<4;j++)
{
printf("%d",a[i][j]);
}//這個加了括弧後對內外層循環可以看得更清楚些
printf("\n");
}
return 0;/弊局/建議樓主目前還是習慣加上他
}
emmm先看懂上面那個再看下面這個吧
#include<stdio.h>
int main()
{
int a[2][4]={1,2,3,4,5,6,7,8};
int i,j;
for(i=0;i<2;i++)
{
for(j=0;j<4;j++)
printf("%d",a[i][j]);//至於為什麼不加{},是因為他會自動把for下面那一句執行(不過還是建議你加吧)
printf("\n"租慧讓);
}
return 0;//建議樓主目前還是習慣加上他
}
㈥ c語言矩陣怎麼寫
方法1:直接定義10*10的數組,讀取全部數據,再根據選擇的行列數列印輸出部分數據。
方法2:通過文件流指針的移動,跨過不需要的內容。(這里控制文件流指針可利用ftell和fseek函數來移動指定位元組數)我是利用fscanf讀取需要的內容,遇到需要跳行就用fgets來跳過。(注意常量參數根據自己需求修改)。
說明:邊讀取邊列印輸出,就不需要變數存儲。我的代碼是把讀取出來的內容存放在三維數組中(文件內容你沒指定,如是單純數字,二維數組即可,我是作為字元串處理,故用三維數組。),數組是根據實際大小,動態申請,寫成兩個獨立函數。
下面是代碼:
#include <stdio.h>
#include <string.h>
#include <malloc.h>
#define MAXR 10//文件中矩陣最大行
#define MAXC 10//文件中矩陣最大列
#define MS 3//矩陣中元素字元串最大字元數(包含結束符號,不可小於實際內容)
#define MBUF 100//文件中一行最大字元數,可設置大一點
char ***getMem(int r,int c,int len);//動態申請一個三維數組
void freeMem(char ***datas,int r,int c);//釋放數組空間
void showDatas(char ***datas,int r,int c);//列印輸出結果
int main()
{
int r=MAXR+1,c=MAXC+1,i=0,j=0;
char ***datas=NULL,str[3],buf[MBUF];
FILE *fp=NULL;
printf("請輸入要獲取的行數和列數: ");
while(r<0 || r>MAXR || c<0 || c>MAXC)scanf("%d%d",&r,&c);
datas=getMem(r,c,MS);
fp=fopen("C:\test.data","r");
if(!fp) return 1;
while(fscanf(fp,"%s",str)!=-1)
{
if(i<c) strcpy(datas[j][i],str),i++;
if(i==c)
{
if(!fgets(buf,sizeof(buf),fp)) break;
i=0,j++;
}
if(j==r) break;
}
showDatas(datas,r,c);
freeMem(datas,r,c);
return 0;
}
void showDatas(char ***datas,int r,int c)
{
int i,j;
for(i=0;i<r;i++,printf(" "))
for(j=0;j<c;j++)
printf("%s ",datas[i][j]);
printf(" ");
}
void freeMem(char ***datas,int r,int c)
{
int i,j;
if(!datas)
{
for(i=0;i<r;i++,free(datas[i]))
for(j=0;j<c;j++)
free(datas[i][j]);
free(datas);
}
}
char ***getMem(int r,int c,int len)
{
int i,j;
char ***datas=NULL,**dr=NULL;
datas=(char ***)malloc(sizeof(char **)*r);
if(!datas) return NULL;
for(i=0;i<r;i++)
{
dr=(char **)malloc(sizeof(char *)*c);
if(!dr) return NULL;
else
{
for(j=0;j<c;j++)
{
dr[j]=(char *)malloc(sizeof(char)*len);
if(!dr[j]) return NULL;
}
datas[i]=dr;
}
}
return datas;
}
㈦ C語言,幫忙看下這道二維數組題,輸入的矩陣怎麼原樣輸出啊
在printf("轉置矩陣A︐為:\n");的上面加上:
printf("原矩陣A為:\n");
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
printf("%d ",a[i][j]);
printf("\n");
}
㈧ 如何用C語言編一個程序,輸入一個二維數組,然後以一個矩陣的方式輸出。
#include<stdio.h>
void main(){
int array[3][3], (*pArr)[3], *p[3], i, j, sum;
srand(time(NULL));
for(i=0; i<3; i++)
for(j=0; j<3; j++)
array[i][j] = rand()%100+0;
pArr = array;
for(i = 0; i < 3; i++)
for(j = 0; j < 3; j++){
printf("%d ", pArr[i][j]);
if(j == 2){
printf(" ");
}
}
for(i=0; i<3; i++)
p[i] = array[i];
for(i=0; i<3; i++){
sum = 0;
for(j=0; j<3; j++){
sum += p[i][j];
}
printf("第%d行的和是%d ", i+1, sum);
}
}
(8)c語言怎麼輸出矩陣擴展閱讀:
1、printf命令的作用是格式化輸出函數,一般用於向標准輸出設備按規定格式輸出信息。printf()函數的調用格式為:printf("<格式化字元串>", <參量表>)。
printf()是C語言標准庫函數,在 stdio.h 中定義。輸出的字元串除了可以使用字母、數字、空格和一些察鎮纖數字元號以外,還可以使用一些轉義字元表示特殊的含義。
2、printf函數調用的一般形式
printf函數是一個標准庫函數,它的函數原型在頭文件「stdio.h」中。但作為一個特例,不要求在使用printf函數之前必須包含stdio.h文件。printf函數調用的一般形式為:printf(「格式控制字元串」,輸出表列)其中格式控制字元串用於指定輸出格式。
格式控制串可由格式字元串和非格式字元串兩種組成。格式旅辯字元串是以%開頭的字元串,在%後面跟有各種格式字元,以說明輸出數據的類型、形式、長度、小數位數等。如「%d」表示按十進制整型輸出,「%ld」表示按十進制長敗仿整型輸出,「%C」表示按字元型輸出等。後面將專門給予討論。
非格式字元串在輸出時原樣照印,在顯示中起提示作用。輸出表列中給出了各個輸出項,要求格式字元串和各輸出項在數量和類型上應該一一對應。
㈨ C++中,怎麼輸出一個n階矩陣呢
C++中,輸出一個n階矩陣步驟如下:
1、首先,定義8個整型變數,實現n階矩陣的計算。
㈩ C語言編程 二維數組 輸出一個2*3的矩陣
#include<stdio.h>
void main()
{
int a[2][3];
int i,j;
printf("輸入一個2*3整型數組 ");
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("
輸出一個2*3整型數組
");
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf(" ");
}
}
(10)c語言怎麼輸出矩陣擴展閱讀:
注意事項
c語言的輸入輸出可用標准庫裡面的輸入輸出函數,即scanf和printf。
輸入輸出二維數組的例子:
#include<stdio.h>
int main()
{
int M = 5 , N = 5;
int array[M][N]; //定義一個5x5的int數組
printf("輸入:");
for(int i = 0 ; i < M ; i++){
for(int j = 0 ; j < N ; j++){
scanf("%d",&array[i][j]);
}
}
printf("輸出:");
for(int i = 0 ; i < M ; i++){
for(int j = 0 ; j < N ; j++){
printf("%d ",array[i][j]);
}
}
return 0;
}