//函数fun的功能为:计算x所指数组中N个数的平均值(规定所有数都为正数),平均值通过形参返回给主函数,将小于平均值且最接近平均值的数作为函数值返回,并输出。

//重难点:形参与实参之间,是否进行了值传递。

 #include  <stdlib.h>
#include <stdio.h>
#define N 10
double fun(double x[],double *av)
{ int i,j; double d,s;
s=;
for(i=; i<N; i++) s = s +x[i];
/**********found**********/
*av=s/N;//把平均值赋给形参//这个地方注意,要要写N,不能写数字。
d=;
for(i=; i<N; i++)
if(x[i]<*av && *av - x[i]<=d){
/**********found**********/
d=*av-x[i];
j=x[i];
}
/**********found**********/
return j;
}
void main()
{ int i; double x[N],av,m;
for(i=; i<N; i++){ x[i]=rand()%; printf("%4.0f ",x[i]);}
printf("\n");
m=fun(x,&av);//加取地址符之后就可以实现,形参实参值互传。
printf("\nThe average is: %f\n",av);
printf("m=%5.1f ",m);
printf("\n");
}

//函数fun函数的功能是:根据整型形参n,计算如下公式的值。A1=1,A2=1/(1+A1),An=1/(1+A(n-1))。

//重难点:注意函数返回值类型。

 #include  <stdlib.h>
#include <conio.h>
#include <stdio.h>
/*************found**************/
double fun(int *n)//注意这里函数返回值类型
{ double A=;int i;
/*************found**************/
for(i=;i<n+;i++)
A=1.0/(+A);
return A;
}
void main()
{ int n;
system("CLS");//清屏
printf("\nPlease enter n: ");
scanf("%d",&n);
printf("A%d=%lf\n",n,fun(n));
}

//在程序中,定义了N*N的二维数组,并在主函数中自动赋值,编写函数fun功能是使数组右上半角元素中的值乘以m。

//重难点:对二维数组数据进行操作。对文件进行操作。

 #include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 5
void fun(int a[][N], int m)
{
int i,j;
for (i = ; i < N; i++)
{
for (j = i; j < N; j++)
{
a[i][j] = a[i][j] * m;
}
}
}
void main()
{
int a[N][N],m, i, j;
FILE *out;
printf("*****The array*****\n");
for(i=;i<N;i++)
{ for(j=;j<N;j++)
{a[i][j]=rand()%;
printf("%4d", a[i][j]);
}
printf("\n");
}
m=rand()%;
printf("m=%4d\n",m);
fun(a,m);//这里传递的是a(为数组首地址,所以形参值会同步到实参中。)
printf("THE RESULT\n");
for(i=;i<N;i++)
{ for(j=;j<N;j++)
printf("%4d",a[i][j]);
printf("\n");
}
/******************************/
out=fopen("out.dat","w");
for(i=;i<N;i++)
for(j=;j<N;j++)
a[i][j]=i*j;
fun(a,);
for(i=;i<N;i++)
{ for(j=;j<N;j++)
fprintf(out,"%4d",a[i][j]);
fprintf(out,"\n");
}
fclose(out);
/******************************/
}

计算机二级-C语言-对二维数组数据进行处理。对文件进行数据输入。形参与实参。的更多相关文章

  1. c语言中如何通过二级指针来操作二维数组

    通过二级指针去访问二维数组需要先给二级指针分配等同于二维数组行数的一维数组指针,然后把二维数组的每行首地址赋值给对应位置的一维指针上.之后就可以通过二维指针直接访问了. 参考代码如下,可以看具体注释辅 ...

  2. C语言复习---二维数组和二级指针的关系:没关系,别瞎想(重点)

    前提:一维数组和一维指针为什么可以替换使用? ] = { , , }; int *p = a; ; i < ; i++) printf("%d ", *(p + i)); 上 ...

  3. C语言中将二维数组作为函数参数来传递

    c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下: 方法一, 形参给出第二维的长度. 例如: #include <stdio.h> void func(int n, char ...

  4. C语言之二维数组

    二维数组 还是一个数组,只不过数组中得每一个元素又是一个数组 1). 声明语法 类型 数组名[行][列]; 例:  int nums[2][3];//2行3列的二维数组,保存的数据类型是int类型 c ...

  5. C语言 字符二维数组(多个字符串)探讨 求解

    什么是二维字符数组? 二维字符数组中为什么定义字符串是一行一个? “hello world”在C语言中代表什么? 为什么只能在定义时才能写成char   a[10]="jvssj" ...

  6. C语言传递二维数组

    方法一, 形参给出第二维的长度. 例如: #include <stdio.h> ] ) { int i; ; i < n; i++) printf("/nstr[%d] = ...

  7. C语言讲义——二维数组

    二维数组,又称为矩形数组 可以不太准确地理解为"数组的数组" 也可以认为是一个表格 然而内存中并不是表格存储: 二维数组的初始化 第一维度可以省略 所有元素可以写在一个花括号中,计 ...

  8. C语言回顾-二维数组

    1.二维数组:是一个特殊的一维数组 完全初始化: 1)int a[2][3]={{1,2,3},{2,3,4}}; 2)连续赋值int a[2][3]={1,2,3,2,3,4}; 3)可以省略第一维 ...

  9. C语言教学--二维数组和指针的理解

    对于初学者对二维数组和指针的理解很模糊, 或者感觉很难理解, 其实我们和生活联系起来, 这一切都会变得清晰透彻. 我们用理解一维数组的思想来理解二维数组, 对于一维数组,每个箱子里存放的是具体的苹果, ...

随机推荐

  1. C正数负数的原码补码反码以及内存地址分析

    #include<stdio.h> void swap(int a, int b); void main1(){ int i = 10; //正数的原码 00000000 00000000 ...

  2. CentOS7.5升级OpenSSH

    实验环境 OS:CentOS 7.5 当前openssh版本:OpenSSH_7.4p1 升级后的openssh版本:OpenSSH_8.0p1 开通telnet 为了防止升级过程中ssh断连,保险起 ...

  3. android 获取颜色 getColor 方法 deprecated 过期

    可以使用下面代码代替: ContextCompat.getColor(getContext(), R.color.post_list_content_color) 需要引入: compile 'com ...

  4. 「口胡题解」「CF965D」Single-use Stones

    目录 题目 口胡题解 题目 有许多的青蛙要过河,可惜的是,青蛙根本跳不过河,他们最远只能跳 \(L\) 单位长度,而河宽 \(W\) 单位长度. 在河面上有一些石头,距离 \(i\) 远的地方有 \( ...

  5. codeforce D. White Lines

    二维前缀和 给你一个n*n的矩阵,里面有两种字符,‘W’和‘B’,代表black 和white .其实这个矩阵就是一个方形画板,你有一个k*k的橡皮只能用一次,使k*k的矩阵里的B变成W,问完全空白的 ...

  6. 图的最小生成树prim算法模板

    用prim算法构建最小生成树适合顶点数据较少而边较多的图(稠密图) prim算法生成连通图的最小生成树模板伪代码: G为图,一般为全局变量,数组d为顶点与集合s的最短距离 Prim(G, d[]){ ...

  7. 马路 树链剖分/线段树/最近公共祖先(LCA)

    题目 [问题描述] 小迟生活的城市是⼀棵树(树指的是⼀个含有 \(n\) 个节点以及 \(n-1\) 条边的⽆向连通图),节点编号从 \(1\) 到 \(n\),每条边拥有⼀个权值 \(value\) ...

  8. Django_第三方

    1. 验证码 2. 绘制过程 加一个随机数用于更新验证码 不加,图片的src不会更新,图片也不会更新 加了,url也能匹配上,去执行视图函数 3. 富文本 就是带着样式的文本 3.1 使用

  9. (c#)亲密字符串

    题目 解

  10. 2019 ICPC 徐州网络赛 B.so easy (并查集)

    计蒜客链接:https://nanti.jisuanke.com/t/41384 题目大意:给定n个数,从1到n排列,其中有q次操作,操作(1) 删除一个数字 // 操作(2)求这个数字之后第一个没有 ...