外行小白的IT成长之路(一)

大家好!我是帝都某985高校的非IT专业的一名理科生。
  1. 为什么打算自学编程
    本人专业是理论力学,看起来的确蛮古老的学科,但是应用起来蛮广泛 的。一般来说工科类 的任何一个小项都能跟本专业挂上钩。大家好!我是帝都某985高校的非IT专业的一名理科生。已经大三了,本人专业是理论力学,看起来的确蛮古老的学科,但是应用起来蛮广泛 的。一般来说工科类 的任何一个小项都能跟本专业挂上钩。
    但是本人到了大三才发现自己根本不喜欢力学,自己对与做一些大型工程或者在实验室 里面做实验研究流体力学真的一点儿都不感兴趣,加之自己原生家庭经济条件的限制,我本人在自己的专业选择上产生了很大的怀疑,至少现在还是蛮后悔大一大二 的时候为什么要读力学而不是转到别的院系,这里的别的院系指的就是计算机专业和金融。后悔之余我打算选择人生的另一条道路–学计算机。本人专业必修课其实已经接触过几门必要的计算机课程,但是由于本人当时脑抽,这么重要的基础课程竟然没有学好,《计算概论》和《数据结构与算法》都考的蛮差劲 的。但是本人 的数学底子蛮好的,按理来讲数学还不错的人学起编程来都不会太费事。本人就打算开始学编程。
    于是本人就在这个IT网站开通了人生 的第一个博客,打算记录一下自己在自学计算机上面 的历程,同时也是对自己的一种激励和督促把。本人编程底子很弱,所以就先从C/C++开始,打算每周一篇小博客,记录下本周自学编程的进度。
    okk!今天第一天,我的进度条在数组这一块。

  2. 一维数组、
    知识很简单,而且我已经学过了,就编写了一个把一个数列按照从小到大排列 的程序。

 #include<stdio.h>
#define max_num 10                    
void main()
{
	int an[max_num],j,i;
	for(i=0;i<max_num;i++)
	{
		scanf("%d",&an[i]);               
	}
	for(i=0;i<max_num-1;i++)
	{
		int nTmpMin=i;
		for(j=i;j<max_num;j++)
	     	if(an[nTmpMin]>an[j])
		   {
			 nTmpMin=j;
		   }
			int nTmp=an[i];
			an[i]=an[nTmpMin];
			an[nTmpMin]=nTmp;
	}
	for(j=0;j<max_num;j++)
	{
		printf("%d\n",an[j]);
	}
}

嗯,思路就是如果前面i-1个数已经排好了,就在剩下的数组里面选择最小的一个放到i的位置。

  1. 二维数组
    这个知识点跟一维数组类似,就是做了一下简单的推广。但是要注意在为数组输入初值 的时候,要注意下。
    在这里插入图片描述

在这里插入图片描述
所以长度不够的初值,在数组中剩下的位置自动补为0
一维数组同样。

  1. 字符串
    char szString[10]
    下面就列几个注意事项吧,毕竟我已经学过而且教科书网上都有详细的解答的。
    1、“Prison Break”输入一个字符数组的话,在计算机储存的空间中会有一个“\0”区域
    2“"”代表双引号,“\”代表一个反斜杠,这样表示是为了不引起混淆。
    3、scanf函数输入字符串时,遇到空格自动结束。
    比如输入“Fox River”,计算机识别,把Fox输入进字符数组,没有River的部分了。
    4、gets函数可以解决上面这个问题,遇到空格时候不会自动停止读取。而是遇到回车键才会停止。
    5、C\C++中对于字符串的处理遇到\0就代表停止。
    6、sz[2]=0; 等价于 sz[2]=’\0’;
    今天就到这里吧!以后打算每个星期都会在这里发文章的。
    对了,我用的参考书是《程序设计导引及在线实践》,清华大学出版社。

猜你喜欢

转载自blog.csdn.net/weixin_43408509/article/details/83155547