三九宝宝网宝宝教育教学论文

C语言编程二维数组

12月24日 编辑 39baobao.com

[C语言题用二维数组和冒泡排序]#include<stdio.h> #define n 4 int main() { char a[n][30]; char tempstr[30]; char ch[30]; int b[n]; int i,j,temp; printf("你好使用者,我是一个自动分析程序,请输入你想...+阅读

在C语言中,有时我们需要函数的返回值为一个二维数组。这样外部函数接收到这个返回值之后,可以把接收到的二维数组当成矩阵操作(外部函数不可用普通的一级指针接收返回值,这样的话,外部函数将不知道它具有二维性)。方法如下:

法1.没有使用typedef类型定义

[cpp] view plaincopy

#include

int (*fun(int b[][2]))[2]

{

return b;

}

int main()

{

int i,j;

int a[2][2]={1,2,5,6};

int (*c)[2];

c = fun(a);

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

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

printf("%d ",c[i][j]);

return 0;

}

法2.使用typedef类型定义

[cpp] view plaincopy

#include

typedef int (*R)[2];

R fun(int b[][2])

{

return b;

}

int main()

{

int i,j;

int a[2][2] = {1,2,5,6};

R c;

c = fun(a);

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

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

printf("%d ",c[i][j]);

return 0;

}

使用typedef类型定义可以增加程序的可读性

这两种方法本质上是一样的

以下为关联文档:

C语言编程题:移位函数既能循环左移又能循环右移1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include <stdio.h> #include <math.h> unsigned fun(unsigned num, intn) { if(n > 0) { //sizeof(unsigned)*8计算变量所...

api函数是什么?c语言编程中可以用api函数吗API英文全称Application Programming Interface,是操作系统留给应用程序的一个调用接口,应用程序通过调用操作系统的API而使操作系统去执行应用程序的命令(动作)。 其实早在DOS...

C语言编程排序问题冒泡法正确的程序如下: 正确的程序如下: #include "stdio.h" void main() { int i,j,t,a[8];/*变量K没用*/ for(i=0;i<8;i++) scanf("%d",&a[i]);/*%d后不能加空格*/ for(j=1;j<8;j++)/*...

09 C语言编程上机实验101.#include<iostream.h> void main() { int i=1;unsigned long int count=1; for(;i<=20;i++) { count=count*i; } cout<<"1-20的自然数之积为:"<<count<<endl; } 2.#include<i...

C语言程序设计上机实验考试题目:功能:找出一维和二维数组中的#include<stdlib.h> #include <stdio.h> void maxa(int a[]) { int *p = a; int n = 1; int temp = *p; while( n < 10 ) { n++; p++; if( *p > temp ) temp = *p; } printf...

C语言二维数组/***用二维数组保存学生成绩****/ #include"stdio.h" #define M 100 main() { int i,a[M][2],n,c=0,m=0,max,min; printf("请输入学生记录数:"); scanf("%d",&n); /*********输入每个...

c语言二维数组编程1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 #include<stdio.h> #include<string.h> intmain() { chara[3][100]; inti,j,n; for(i=0;i<3...

编写c语言二维数组一: #include <stdio.h> void main(){ int i,j; int a[5][3]; for(i=0;i<5;i++) for(j=0;j<3;j++){ scanf("%d",&a[i][j]); } for(i=0;i<5;i++){ for(j=0;j<3;j++){ printf("%d...

C语言二维数组问题不是 这么说吧,数组名本身就是指针,指向数组的第一个元素 至于你所说的调用调用二级(二维吧)数组,难道不是如普通变量般直接调用吗? 根据问题补充说,这是不允许的,main()函数的形参是...

推荐阅读
图文推荐