zoukankan      html  css  js  c++  java
  • 课堂作业补充

    #include<stdio.h>
    int main()
    {
        void funter(char *a,char *b);
        char *str1="hello world";
        printf("%s
    ",str1);
        char *str2="Hello World";
        printf("%s
    ",str2);
        
        funter(str1,str2);
    
        return 0;
        
    }
    void funter(char *a,char *b)
    {   int i=0;
        printf("%s
    ",a);
        printf("%s
    ",b);
        printf("查看1
    "); 
        for(;*b!='';a++,b++)
        {printf("查看2
    ");
        *a=*b;} 
        printf("查看3
    ");
        printf("%s
    ",a);
        for(i=0;i<11;i++)
        printf("%c",a[i]);
    }
    hello world
    Hello World
    hello world
    Hello World
    查看1
    查看2
    
    --------------------------------
    Process exited after 2.622 seconds with return value 3221225477
    请按任意键继续. . .

    总结:

    这是课堂上我的程序, 程序能编译但不能运行
    程序运行到查看2,下面的 字符串赋值没有执行
    这个程序我找不出错误,在修改的时候有出过
    警告,意思是说我在定义字符数组的时候不能将
    字符串赋值给指针,但我觉得不应该,因为 前
    四个打印能打印出来,所以我觉得字符串赋值
    给指针应该没错,现在我理解了,这个地方是字

    符串赋给指针变量后不能再做任何改变,但我把程序
    进行改造定义字符数组而不用指针指向字符数组
    的首地址通过赋值语句和for循环将后一个字符数
    组赋值给前一个。

    #include<stdio.h>
    int main()
    {
        void funter(char *a,char *b);
        char str1[]="hello world";
        printf("%s
    ",str1);
        char str2[]="Hello World";
        printf("%s
    ",str2);
        
        funter(str1,str2);
    
        return 0;
        
    }
    void funter(char *a,char *b)
    {   int i=0;
        printf("%s
    ",a);
        printf("%s
    ",b);
        printf("查看1
    ");
        for(i=0;i<11;i++)
        if(b[i]!='')
        a[i]=b[i];
        else a[i]='';
        printf("查看2
    ");
        printf("%s
    ",a);
        for(i=0;i<11;i++)
        printf("%c",a[i]);
    }
    hello world
    Hello World
    hello world
    Hello World
    查看1
    查看2
    Hello World
    Hello World
    --------------------------------
    Process exited after 0.2742 seconds with return value 0
    请按任意键继续. . .

    运行成功

    按照老师要求:

    #include<stdio.h>
    int main()
    {
        void funter(char a[]);
        char str[]="hello world";
        printf("%s
    ",str);
        str[0]='H';
        str[6]='W';
        
        printf("%s
    ",str);
        funter(str);
        return 0;
        
    }
    void funter(char a[])
    {
        int i;
        printf("%s
    ",a);
        for(i=0;i<11;i++)
        printf("%c",a[i]);
    }
    hello world
    Hello World
    Hello World
    Hello World
    --------------------------------
    Process exited after 0.3231 seconds with return value 0
    请按任意键继续. . .
  • 相关阅读:
    同一电脑登录多个github账号
    如何用HAProxy+Nginx实现负载均衡
    Windows10下 tensorflow-gpu 配置
    机器学习数据处理时label错位对未来数据做预测
    机器学习经典模型简单使用及归一化(标准化)影响
    学机器学习,不会数据处理怎么行?—— 二、Pandas详解
    版本控制系统 git 之基础讲解
    学机器学习,不会数据处理怎么行?—— 一、NumPy详解
    Reinforcement Learning 的那点事——强化学习(一)
    读研 or 工作?对计算机类专业学习的看法
  • 原文地址:https://www.cnblogs.com/abtious/p/6649543.html
Copyright © 2011-2022 走看看