实验十

 1.有5名学生,每名学生有语文、数学和外语3门课的考试成绩。编程统计各学生的总分和平均分以及所有学生各科的平均分。要求成绩在程序中初始化,结果以表格的形式输出。  

#include<stdio.h>
int main()
{
    int i,j,f=0,m,n;
    double sum,ave,a[6][5]={60,99,70,0,0,67,89,90,0,0,78,70,89,0,0,98,74,87,0,0,56,94,46};

    for(i=0;i<5;i++)
    {
        sum=0;
        for(j=0;j<3;j++)
        {
            sum=sum+a[i][j];
            a[i][3]=sum;
            ave=0;
            ave=(double)sum/3;
            a[i][4]=ave;
        }
    }
    printf("       ó???      êy?§       ó¢ó?      ×ü·?        ???ù·?");
    printf("\n");
    for(m=0;m<5;m++)
    {
        for(n=0;n<5;n++)
        {
            printf("     ");
            printf("%.2f ",a[m][n]);
            f++;
        }
        if(n==5)
        {
            printf("\n");
        }
    }
    for(i=0;i<5;i++)
    {
        sum=0;
        for(j=0;j<5;j++)
        {
            sum=sum+a[j][i];
            ave=0;
            ave=(double)sum/5;
            a[i][6]=ave;
        }
    }
    printf("???ù·?");
    for(i=0;i<5;i++)
    {
        printf("%.2f      ",a[i][6]);
    }
    printf("\n");
    return 0;
}

                         

 2.求任意方阵每行、每列、两对角线上元素之和。

#include<stdio.h>
#define N 5
int main()
{
    int i,j,n=1,sum,a[N][N]={0};
    for(i=0;i<N;i++)
    for(j=0;j<N;j++)
    {
        a[i][j]=n;
        n++;
        printf("%3d",a[i][j]);
    }
    printf("\n");
    for(j=0;j<N;j++)
    {
        sum=0;
        for(i=0;i<N;i++)
        {
            sum=sum+a[j][i];
        }
        printf("μú%dDDμ?oí?a%d\n",j+1,sum);
    }
    for(i=0;i<N;i++)
    {
        sum=0;
        for(j=0;j<N;j++)
        {
            sum=sum+a[j][i];
        }
        printf("μú%dáDμ?oí?a%d\n",i+1,sum);
    }
    sum=0;
    for(i=0;i<N;i++)
    {
        sum+=a[i][i];
    }
    printf("??????(×óé?μ?óò??)??oí?a%d\n",sum);
    sum=0;
    for(i=0;i<N;i++)
    {
        sum+=a[4-i][i];
    }
    printf("??????£¨×ó??μ?óòé?£???oí?a%d\n",sum);
    return 0;
}

实验总结:

1、赋初值时注意放在循环里面还是外面

2、不要重复定义变量

时间: 2024-10-10 08:49:12

实验十的相关文章

【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十六:IIC储存模块

IIC储存器是笔者用来练习精密控时的经典例子.<整合篇>之际,IIC储存器的解释,笔者也自认变态.如今笔者回头望去,笔者也不知道自己当初到底发什么神经,既然将IIC的时序都解释一番.由于开发上板也嵌着IIC储存器(24LC04),笔者还得循例地介绍一下. IIC储存器是应用IIC总线的储存器,时序本身并不是很复杂不过缺有一大堆时序参数,而且官方提供的时序也不利于描述,所以许多时序都必须自行绘制,真是麻烦死人.麻烦归麻烦,笔者终究还要吃饭,为了肚子,再麻烦的事情也要硬着头皮捱过去 ... 这也是

王爽&lt;汇编语言&gt;实验十

实验十 3.数值显示(以下程序附带测试程序) 1 ;名称: dtoc 2 ;功能: 将dword型数据转变为表示十进制数的字符串,字符串以0为结尾 3 ;参数: (ax)=dword型数据低字 4 ; (dx)=dword型数据高字 5 ; ds:si指向字符串的首地址 6 ;返回: 无 7 assume cs:code 8 data segment 9 haha dd 4294967295 10 tata dd 16 dup(?) 11 data ends 12 code segment 13

【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十八:SDRAM模块① — 单字读写

实验十八:SDRAM模块① — 单字读写 笔者与SDRAM有段不短的孽缘,它作为冤魂日夜不断纠缠笔者.笔者尝试过许多方法将其退散,不过屡试屡败的笔者,最终心情像橘子一样橙.<整合篇>之际,笔者曾经大战几回儿,不过内容都是点到即止.最近它破蛊而出,日夜不停:“好~痛苦!好~痛苦!”地呻吟着,吓得笔者不敢半夜如厕.疯狂之下,誓要歪它不可 ... 可恶的东西,笔者要它血债血还! 图18.1 数据读取(理想时序左,物理时序右). 首先,让我们来了解一下,什么才是数据读取的最佳状态?如图18.1所示,红

【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十:PS/2模块④ &mdash; 普通鼠标

实验十:PS/2模块④ - 普通鼠标 学习PS/2键盘以后,接下来就要学习 PS/2 鼠标.PS/2鼠标相较PS/2键盘,驱动难度稍微高了一点点,因为FPGA(从机)不仅仅是从PS/2鼠标哪里读取数据,FPGA还要往鼠标里写数据 ... 反之,FPGA只要对PS/2键盘读取数据即可.然而,最伤脑筋的地方就在于PS/2传输协议有奇怪的写时序. 图10.1 从机视角,从机读数据. 为了方便理解,余下我们经由从机的视角去观察PS/2的读写时序.图10.1是从机视角的读时序,从机都是皆由 PS2_CLK

&nbsp; CCNA实验十八交换机的端口安全 &nbsp;

CCNA实验十八交换机的端口安全 环境:Windows XP .Packet Tracer 3.5 目的: 懂得如何保护交换机端口安全. 说明: 保护交换机端口有三种方法:(注意交换机端口安全只能在access接口配置) (1)       限制交换机端口的最大连接数,最大连接数的取值是1-128. (2)       交换机端口进行MAC地址绑定 (3)       交换机端口进行IP地址绑定(要在三层设备上配置) 产生安全违例的处理方式: (1)       protect 当安全地址个数已

CCNA实验十九 静态与默认路由 &nbsp;

CCNA实验十九 静态与默认路由 环境:Windows XP .Packet Tracert 5.3 目的:了解静态路由与默认路由的使用 说明: 静态路由是指由网络管理员手工配置的路由信息.当网络的拓扑结构或链路的状态发生变化时,需要手工去修改路由器中相关的静态路由信息.静态路由信息在缺省情况下是私有的,不会传递给其他路由器.可以通过对路由器进行设置使之成为共享的.静态路由一般适用于比较简单的网络环境.静态路由的管理距离为1.(注意直连的接口管理距离为0)管理距离越少,越可靠. 默认路由是特殊的

Packet Tracer 5.2实验(十四) 网络地址转换NAT配置

Packet Tracer 5.2实验(十四) 网络地址转换NAT配置 一.实验目标 理解NAT网络地址转换的原理及功能: 掌握静态NAT的配置,实现局域网访问互联网: 二.实验背景 公司欲发布WWW服务,现要求将内网Web服务器IP地址映射为全局IP地址,实现外部网络可访问公司内部Web服务器. 三.技术原理 网络地址转换NAT(Network Address Translation),被广泛应用于各种类型Internet接入方式和各种类型的网络中.原因很简单,NAT不仅完美解决了IP地址不足

Packet Tracer 5.2实验(十五) 网络端口地址转换NAPT配置

Packet Tracer 5.2实验(十五) 网络端口地址转换NAPT配置 一.实验目标 理解NAT网络地址转换的原理及功能: 掌握NAPT的配置,实现局域网访问互联网: 二.实验背景 公司办公网需要接入互联网,公司只向ISP申请了一条专线,该专线分配了一个公网IP地址,配置实现全公司的主机都能访问外网. 三.技术原理 NAT将网络划分为内部网络和外部网络两部分,局域网主机利用NAT访问网络时,是将局域网内部的本地地址转换为全局地址(互联网合法的IP地址)后转发数据包: NAT分为两种类型:N

Linux基础入门(新版)(实验九-实验十二)

实验九 简单文本入门 一.常用的文本处理命令 二.文本处理命令 1.tr 命令 tr 命令可以用来删除一段文本信息中的某些文字.或者将其进行转换. 使用方式: tr [option]...SET1 [SET2]   常用的选项有: 选项 说明 -d 删除和set1匹配的字符,注意不是全词匹配也不是按字符顺序匹配 -s 去除set1指定的在输入文本中连续并重复的字符 操作举例: # 删除 "hello shiyanlou" 中所有的'o','l','h' $ echo 'hello sh

【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十九:SDRAM模块② — 多字读写

实验十九:SDRAM模块② — 多字读写 表示19.1 Mode Register的内容. Mode Register A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 0 OP Code 0 0 CAS Latency BT Burst Length A3 Burst Type 0 Sequential 1 Interleave   Burst Length A2 A1 A0 A3 = 0 A3 = 1 0 0 0 1 1 0 0 1 2 2 0 1 0