数组是 n (n>1)个相同类型数据元素a0、a1、…、an-1构成的有限序列,且该有限序列存储在一块地址连续的内存单元中。几乎所有的高级程序设计语言都支持数组数据类型。 数组这种数据结构把逻辑上相邻的数据元素存储在物理上相邻的存储单元中,如要保存一个学生所学五门课程的成绩,可以定义一……
Continue reading
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 由于链表这种数据……
Continue reading
| \| 用VC 控制台程序实现Word 的排版功能,输入文件名读取小于64k 的英文文本, 然后对英文文本进行匀齐排版,最后结果为:一行70个字符,左右两边分别空 4 个字符,长单词不能折断,每行必须对齐,单词中间插入空格。均匀插入。 注意:1、不能用STL库,类似文件流fstream都不允许用 2……
Continue reading
// 这个题涉及到了结构体,指针,字符串和文件,综合性较强。其中这个例题的关键点在于: 1、结构体中字符串的赋值 字符串有三种赋值方法:a、声明字符串时直接赋值;b、用scanf函数给字符串输入值; c、用strcpy函数给字符串赋值 ,这种方法最为常用 需要注意的是出了前两种方法不能直接给字……
Continue reading
一、位的概念 ???? 我们知道,在计算机中,一字节占8位(现在的某些电脑也有占16位的),这样表示的数的范围为0-255,也即00000000-11111111。位就是里面的0和1。 ???????? char c=100; ???? 实际上c应该是01100100,正好是64H。其中高位在前,低位在后。(不足位数的在值前补0) ????????????????? |??????……
Continue reading
auto ???? auto称为自动变量 如果函数不做其他说明的话 均为自动变量 static ???? static称为静态变量。根据变量的类型可以分为静态局部变量和静态全局变量。 ?1. 静态局部变量 它与局部变量的区别在于: 在函数退出时, 这个变量始终存在, 但不能被其它函数使用, 当再次进入该函数时, 将保存上次的结果。其它与局部……
Continue reading
几种循环语句,while、do……while、for三种循环之间有时是可以互相转化的。(另外还有一种goto循环应尽量避免使用,因为其容易造成结构体混乱。)下面看一个例子,通过三种循环结构分别实现: 1、使用do……while实现一个整数的所有位数之和。 #include<stdio.h> main() { int s=0,n; printf(“p……
Continue reading
例:求出1--1000内所有能被3、5、7整除的所有的数。 #include<stdio.h> main() { int n; for(n=1;n<=1000;n++) { if(n%3!=0) continue; /该句表示,如果n不能被3整除,直接跳过后面的步骤,进行下一次循环,下面两个也是一样/ if(n%5!=0) continue; if(n%7!=0) continue; printf(“%d t”,n); } printf(“n”); } break与continue的区别: break语句……
Continue reading
问题:两数和为316,其中一个数为13的倍数,另一个为11的倍数,求这两个数。 #include <stdio.h> main() { int i; for(i=1;i<316;i++) if(!((316-i13)%11)) break; /该处的条件相当于(316-i13)%110 */ printf(“%d,%dn”,i13,316-i13); } 上面的表达式是只求得第一次满足条件的就跳出。如果要求出所有的值,可以用下面的表……
Continue reading
先看一个例子,很简单的20以内能被3整除的所有的整数求和。 #include <stdio.h> main() { int i,s=0; for(i=1;i<20;i++) if(i%30) s=s+i; printf(“%dn”,s); } 注意:在使用for循环时,三个条件是以;分隔的。三个条件都可以省略,但条件2如果省略,就是不判断循环条件无限循环。可以通过在后面的语句中加入break终止循环。效果也是一……
Continue reading