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

C语言二维数组问题

12月24日 编辑 39baobao.com

[C语言数组冒泡排序法题目求解]如果要解决这个问题,用结构体更加的方便,用数组会比较麻烦一些,不过是可以解决的。 #include <stdio.h> #include <math.h> #include <string.h> #define stu_num 5 #define su...+阅读

不是

这么说吧,数组名本身就是指针,指向数组的第一个元素

至于你所说的调用调用二级(二维吧)数组,难道不是如普通变量般直接调用吗?

根据问题补充说,这是不允许的,main()函数的形参是固定的不能传递指针。而一般的自定义函数只能用传递首地址的形式来传递二维数组,例子如下:

定义:int a[X][Y];

int func(int *p,int x,int y){

//x,y即为调用x行y列的元素

printf("%d\

",p+x*X+y); //这里是通过计算指针位置实现

return 0;}

调用: func(a,3,3);

这种通过计算地址方法调用相当麻烦。。可以考虑将数组定义在结构中,再将结构进行形参传递,当这样会降低效率...例子如下

#include

typedef struct{

int a[5][5];}TE;

TE test;

int func(TE a,int x,int y){

printf("%d\

",a.a[x][y]);

return 0;}

int main()

{

test.a[3][3]=5;

func(test,3,3);

getch();

return 0;}

以下为关联文档:

C语言编程题题目描述使用冒泡排序法对数组元素从小到大进行排序#include "stdafx.h" #include <iostream> #include <stdlib.h> using namespace std; void sort(int arry[],int counts)//冒泡排序法 { for(int i=0;i<counts;i++) { for(in...

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语言程序设计上机实验考试题目:功能:找出一维和二维数组中的#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语言中的动态数组for(i=0; i<len;i++);//这个后面多了一个分号,如下删除后重新编译就ok了 scanf("%d",&p[i]); 修改后程序如下: #include<stdio.h> #include<malloc.h> int main(void) { int *p;...

C语言中怎样定义动态一维数组在C语言中,数组的定义都是固定长度的,长度不允许变化。 可以通过链表的方式来达到定义”动态数组“的等价功能,举例如下: 链表节点定义如下: struct node { int data; // 数据域 s...

c语言动态数组定义并引用1 2 3 4 5 6 7 8 9 10 11 12 #include<stdlib.h> voidmain() { intn; char*p; scanf("%d",&n); p=(char*)malloc(n*sizeof(char)); for(inti=0;i<n;i++)scanf("%c",&c[i]); prin...

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...

推荐阅读
图文推荐