zoukankan      html  css  js  c++  java
  • C语言作业11

    1.定义函数void sum(int *p)实现对给定数组a中所有元素求和并打印输出求和结果。

    #include<stdio.h>
    void sum(int *p)
    {
        int a[10];
        int i,sum=0;
        printf("请输入10个整数:");
        for(i=0;i<10;i++)
        {
            scanf("%d",&a[i]);
        } 
        p=&a[0];
        for(p=a;p<(a+10);p++)    
        {        
            sum=sum+*p;
        }
            printf("%d",sum);    
    } 
    int main()
    {
        
        int *p;
        sum(p);    
        return 0;
    }

    这道题看了丛铭俣和钟国晨的,似乎是懂了,原理其实还跟以前学的一样,只不过就是把以前学的都拼凑在一起了,看到别人写的之后就觉得哦对对就是这样,但是自己却写不出来,其实还是对知识掌握的不是很好吧,尤其是指针。

    2.用指针实现函数:读入5个字符串(或是5个字符),按由小到大的顺序输出这5个字符串。

    #include<stdio.h>
    void fsort(int a[],int n);
    int main(void)
    {
        int i;
        int a[5]={6,5,2,8,1};
           fsort(a,5);
        for(i=0;i<5;i++)
           printf("%d ",a[i]);
        return 0;
    }
    void fsort(int a[],int n)
    {
        int k,j;
        int temp;
        for(k=1;k<n;k++)
           for(j=0;j<n-k;j++)
           if(a[j]>a[j+1])
           {
                  temp=a[j];
                  a[j]=a[j+1];
                  a[j+1]=temp;
           }
    }

    3.利用动态内存分配方式创建长度为10个int的存储空间,由用户从键盘输入数据进行空间初始化,同时打印输出空间内容。

    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    int main()
    {
        char *p[5];
        char str[20];
        scanf("%s",str);
        int i=0;
        while(str[0]!='#')
        {
            p[i]=(char *)malloc(sizeof(char)*strlen(str));
            strcpy(p[i],str);
            scanf("%s",str);
            i++;
        }
        int j;
        for(j=0;j<i;j++)
            printf("%s ",p[j]);
    }

    老师在课上讲了这道题,很明白了已经。

    4.选做:定义二维数组a[10][10]和数组指针p[10],并用p对数组a进行初始化和打印输出。

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

    这道题它让定义数组和指针,但是我只写了数组,因为我不会加入指针,让指针和数组结合起来,所以感觉这次作业难的原因就是要把好多好多知识综合起来运用,一种知识我还用的不是很利落就要再加上好多其他知识所以很吃力,以后还是要勤加练习吧,就像丛铭俣说的练好基础。

  • 相关阅读:
    django项目的setting、views(视图文件)、urls(新增子路由)和templates文件
    django问题之2:'set' object is not reversible
    django问题之1:ModuleNotFoundError: No module named 'views'
    搭建django环境和简单的开发post、get接口(转载)
    python中的装饰器原理和作用(转载)
    博客园特效(爱心效果、烟花效果、鼠标吸附粒子/斜杆)
    正则表达式的笔记
    第三方支付的测试点【杭州多测师】【杭州多测师_王sir】
    Python题目【杭州多测师】【杭州多测师_王sir】
    查看Nginx是否启动
  • 原文地址:https://www.cnblogs.com/ljxsol/p/6152837.html
Copyright © 2011-2022 走看看