cr:经典
题目32
求一个3*3矩阵对角线元素之和。
思路:
先定义一个二维数组,然后输入9个数字;在代数学中,n阶行列式,从左上至右下的数归为主对角线,从左下至右上的数归为副对角线;这是前提思路,要从左上角到右下角。输完数字之后,用两个for循环嵌套来计算对角线的值;第二个for的起始条件要注意。
代码:
#include<stdio.h>
main()
{
int i, j, a[3][3];
int sum = 0;
printf("输入9个数字:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
scanf("%d", &a[i][j]);
}
}
printf("\n输入的结果是:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%-3d", a[i][j]);
}printf("\n");
}
for (i = 0; i < 3; i++) {
for (j = i; j <= i;j++) {
sum += a[i][j];
}
}
printf("\n对角线结果是%d。\n", sum);
}
对方:
// Created by www.runoob.com on 15/11/9.
// Copyright © 2015年 菜鸟教程. All rights reserved.
//
#include<stdio.h>
#define N 3
int main()
{
int i,j,a[N][N],sum=0;
printf("请输入矩阵(3*3):\n");
for(i=0;i<N;i++)
for(j=0;j<N;j++)
scanf("%d",&a[i][j]);
for(i=0;i<N;i++)
sum+=a[i][i];
printf("对角线之和为:%d\n",sum);
return 0;
}
反思&收获:
在计算那一步中,我用了两个for进行嵌套计算;而对方直接用a [ i ] [ i ] ,十分巧妙!
cr:小林
例37
C语言实现把一个学生的信息 (包括学号、姓名、姓名、地址)放在一个结构体变量中。然后输出这个学生的信息。
思路:
没学会结构体,直接看视频。
代码:
#include<stdio.h>
main()
{
struct student
{
int num;
char name[10];
char sex[10];
char adress[10];
}
student = { 666, "何坤", "男", "山西" };
printf("学号:%d\n", student.num);
printf("名字:%s\n", student.name);
printf("性别:%s\n", student.sex);
printf("地址:%s\n", student.adress);
}
对方:![](https://i-blog.csdnimg.cn/blog_migrate/98d315ee158607052e7397947f2ab9d7.png)
反思&收获:
结构体学习。