第十二周学习总结

作业信息

  • 这个作业属于哪个课程:https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP
  • 这个作业的要求在哪里:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK12
  • 这个作业的目标:总结本周学习内容
  • 作业正文:https://www.cnblogs.com/liudi20221408/p/16894818.html

教材学习内容总结

C语言程序设计

  • 输入一组数组定义为a[ i ],在程序中p[ i ]等价于*(p+i)
  • 在循环开始之前需保证指针p指向数组首地址
  • p=(int * )malloc(n * sizeof(int)) 向系统申请内存
  • free(p) 释放向系统申请的内存
  • 内存分配后一定要初始化后再使用
  • 不要忘记释放内存
  • 输入字符串的几种方法
    • 用gets()输入字符串
      • #include <stdio.h>
        
        int main() {
            char s[100]="\0";        //初始化
            gets(s);                //获取输入
            for(int i=0;i<100;i++) //打印输入
            {
                printf("%c",s[i]);
            }
        }

         

    • 通过%s输入字符串

      • #include <stdio.h>
        
        int main() 
        {
            char s[100]="\0";//数组初始化
            scanf("%s",s);
            for(int i=0;i<100;i++)//打印输入的一串字符
            {
                printf("%c",s[i]);
            }
        }

         

    • 通过for循环输入

      • #include <stdio.h>
        
        int main() 
        {
            char s[100]="\0";//初始化
            for(int j=0;j<10;j++)//定义输入10个字符
            {
                scanf("%c",&s[j]);//逐个获取输入字符(包括空格和换行符)
            }
            for(int i=0;i<100;i++)//打印输入
           {
                printf("%c",s[i]);
            }
        }

教材学习过程中遇到的问题及解决方法

  • 问题1:字符数组前不需要加取地址符?
  • 问题1解决方法:查询百度得出答案

C语言的字符串实际上是 字符数组.既然是数组, 那么数组头自然是一个指针.char str[] = {“abc”};这个str实际上是一个不可变的字符指针.scanf的参数要求传入指针. 之后按照格式化字符串对指针指向的地址赋值…str本身就是一个指针了, 所以不需要&str,如果&str, 那么得到是就是指针的指针,scanf并不只是对字符串不加 取地址运算符.例如 int arr[] = {1, 2, 3};scanf(“%d”, arr);这里对arr照样不需要取地址运算符, 因为arr是数组头, 本身就是一个指针.上面的语句是对arr数组的第一个元素赋值, 就是arr[0];当然也可以这么写.scanf(“%d”, &arr[0]);arr[0]是一个值, 并非指针, 于是对其取地址.对于字符串也可以这么写.
char str[3] ;scanf(“%c”, &str[0]);这是对str的第一个元素赋值也就是 str[0];

https://zhidao.baidu.com/question/493101733.html

http://www.360doc.com/content/16/0515/11/19455598_559288667.shtml

(5条消息) 为什么C语言Scanf函数对字符串不要加 取地址运算符&_Java3L的博客-CSDN博客_scanf什么时候不加地址符

代码运行中遇到的问题及解决方法

  • 问题1:变量名不能和函数名相等
  • 问题1解决过程:更换变量名

 

学习进度条

  代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积)
第一周 150/150 2/2 17/17
第二周 100/250 1/3 15/32
第三周 200/450 2/5 16/48
第四周 230/680 2/7 17/65
第五周 200/880 2/9 20/85
第六周 350/1230 5/14 14/99
第七周 470/1700 1/15 15/114
第八周 530/2230 2/17 14/128
第九周 480/2710 1/18 14/142
第十周 570/3280 1/19 13/155
第十一周 670/3950 1/20 15/170
第十二周 580/4530 1/21 16/186

原文地址:http://www.cnblogs.com/liudi20221408/p/16894818.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性