编程和做科研的一些认知和理解

  • 作为一个跨专业考研的学生,经过这段时间自学机试,加上之前的有过一点科研的经历,今天有感而发,说一些我对科研和编程的一些看法

  • 科研,就是发现问题,提出可能的猜想,然后去验证自己的猜想,验证的过程中提出问题的解决方案,然后发现自己的猜想是正确还是错误,如果正确,得到什么结论,如果错误,那么问题又出来哪里,然后反复迭代,找出最优解,然后把自己得到的结果发到期刊上面去。

  • 而编程,和科研一样,本身自己看到一个题目,如果能将题目拆分为若干块,每一块的问题又能逐个通过实践,通过不断猜想,不断试错,得到解决方案的过程来解决,而如果自己完全没有头绪,去看先人的研究思路,顺着他们的思路,再不断提出问题,做出猜想,验证猜想,得到结论的一个过程。

  • 所以从解决问题的方法上来看,编程和科研很像!

  • 具体的例子正在酝酿中:

例如这道题

例如上述的题6,起初碰到这个题目,没有什么头绪,知道如何输入字符串,但是如何以$结尾来输出整个字符串?大家都知道,scanf输入字符串的时候无法接收换行符(enter),所以我该怎么样才能让scanf接收换行符呢,于是我在CSDN上寻找(就好像科研时有一个问题,然后寻找大量的文献),最后找到了两种办法,
一种是改变思路,逐个输入字符,当以$结尾时,就可以结束循环
另一种是scanf("%[^$]),具体代码如下:

法一

char a[16];
int i=0;
while(1){
    
    
	scanf("%c",&a[i]);
    if(a[i]=='$') break;
    i++;
}

法二:

char a[40],b[40];
    scanf("%[^$]",a);
//这里scanf(%[^$])的用法就是:字符串读到$时就终止读取

然后就是进行试验,看哪种效果更好,经过上机的实践(这个过程需要不停的尝试,失败,在尝试,慢慢领悟),发现法一好像更好一些,然后这个问题就有了答案,选择使用法一

类比科研,上面只是一个很小的方面,而在科研中要不停的发现问题,然后解决,找到更优解,反复迭代,不断打磨,最终得到成果——论文

以上就是现在的我对科研和编程的一些看法,若有不妥之处,可以在下方评论区与我交流,往后我也会定期写一些文章,欢迎关注我的CSDN账号

点击观看我的更多博客

猜你喜欢

转载自blog.csdn.net/be_stronger/article/details/114387678