张照行 的第八次作业

1.

#include <stdio.h>
int main()
{
    int i,a[100],n=0;
    for(i=0;i<100;i++)
    {
        a[i]=i+1;
        if(a[i]%3 ==0 || a[i]%7 == 0)
            a[i]=0;
        else if(a[i] != 0)
            n++;
    }
    printf("数组中剩余的个数为:%d
",n);
    printf("这些数为:
");
    for(i=0;i<100;i++)
    {
        if(a[i] != 0)
            printf("%d ",a[i]);
    } 
    return 0;
}

2.

#include <stdio.h>
int main()
{
    int a[9][9],i,j;
    for(i=0;i<9;i++)
    {
        for(j=0;j<9;j++)
        {
            a[i][j]=(i+1)*(j+1);
            printf("%d    ",a[i][j]);
        }
        printf("

");
    }
    printf("其旋转对称的乘法表为:
");
    for(i=0;i<9;i++)
    {
        for(j=0;j<9;j++)
        {
            printf("%d    ",a[8-i][8-j]);
        }
        printf("

");
    }
    return 0;
}

3.这道题目感觉有些牵强了,如果是要用户一个一个输入矩阵数组的没个元素,那用户作死让m和n为100的话就要先输入10000个数字才能接着运行了,所以我觉得体现出要考察的点就好了,让矩阵定为从1开始一个个增大好了,用户只用输入m和n的值就行。

#include <stdio.h>
int main()
{
    int m,n,a[100][100]={1},i,j,k=1;
    printf("你想要一个多大的矩阵啊,输入m和n的值:");
    scanf("%d %d",&m,&n);
    printf("矩阵里我就直接放123挨个变大了啊,不然太多了一个个输你得累死
");
    for(i=0;i<m;i++)
    {
        for(j=0;j<n;j++)
        {
            a[i][j]=k;
                k++;
            printf("%d    ",a[i][j]);
        }
        printf("

");
    }
    printf("我还可以转置这个矩阵!
");
    for(i=0;i<n;i++)
    {
        for(j=0;j<m;j++)
        {
            printf("%d    ",a[j][i]);
        }
        printf("

");
    }
    return 0;
}

感想:感天动地!这次作业总算没有上次那么变态了,整体来说比较轻松,反正是比上次轻松多了,,,,我是不是对上次作业产生阴影了。。。。总之,加油!!!

原文地址:https://www.cnblogs.com/160809332zzh/p/6071189.html