C语言编程之“八股文”
许多学习过C语言的同学,普遍感觉计算机软件比较难,好多程序不会做。
其实,计算机程序设计是最简单,加入你学习过英语,显然你再学习C语言就是特别容易了。
英语:有许多单词,还有语法等。
C语言:32个关键词,语法简单,赋值、条件、循环等。
简述
C语言
所有程序设计,“八股文”,有一套规则,
语言而言:单词–》词法 语句–》语法《–{语句}
从数学角度上看, 分步骤处理,1、2、3、4、
1、头文件
#include <stdio.h>
#include <你需要的头文件>
这个是所有代码文件要有的。
头文件: 后缀为 .h 为文件, 放在环境的某一个目录下
包含的内容:1、数据,2、函数
不同的数据/函数进行了分类,放在不同的文件中
stdio:standard input/output ,常用函数:scanf printf
conio:console input/output 常用函数:cscanf cprintf
math:数学函数 常用函数:sin abs
graphics: 图形操作 点、线、区域(三角形、矩形、圆,。。。)
string:字符串操作 常用函数:sscanf sprintf
2、文字常量
需要把准备使用的变量进行定义,通常变量是全局变量,并且,还需要定义一批文字常量。
#define MAX 100
#define PI 3.1415626535
#define TRUE 1
#define FALSE 0
定义的变量(文字常量)不需要定义数据类型,在程序中可以直接引用。
根据实际情况进行定义,可有可无
3、 变量与数组
在C语言设计中,单个类型的数值用变量,多个相同数据类型的数值采用数组描述,根据不同的应用场景,可采用一维或多维数组进行描述。
int i,j,k;
int val;
int val[10];
4、数据结构
对于较为复杂的数据,需要通过自定义结构等数据类型来描述。
struct student
{
char stu_ID[14];
char stu_Name[20];
char stu_sex;
}; //后面要有分号
如上定义的结构,如果使用,需要
struct student stu1,stu2; //定义两个学生变量
如果定义结构类型:
typedef struct student Student; //类型定义
Student 代表 struct student;
如果采用这种方式定义两个学生变量:
Student stu11,stu12; //定义两个学生变量
显然这种定义方式,从代码的简洁性,以及后面代码的输入量明显要好于前面的定义。
根据实际情况进行定义,可有可无
以上几点,就是C语言编程中程序代码需要做的。
代码示例一
#include <stdio.h>
void main(void)
{
printf(“Hello,World!”);
}
printf—》print format,对函数所给内容进行格式化输出
scanf—》scan format –》scan keyboard 常用
代码示例二
输出下列图形
*
**
***
****
*****
******
#include <stdio.h>
void main(void)
{
printf(“*\n”);
printf(“**\n”);
printf(“***\n”);
printf(“****\n”);
printf(“*****\n”);
printf(“******\n”);
}
这个图形从数学上看,其组成元素*是有规律的,显然,可以通过规律进行输出。
#include <stdio.h>
void main(void)
{
int i,j;
for (i=1;i<=5;i++) //行控制打印函数
{
for(j=1;j<=i;j++) // 控制每行输出的*的个数
printf(“*”);
printf(“\n”);
}
}
按照上述代码,每一个的处理都是靠循环进行的,实际上,第1行输出一个,第2行应该在第1行的基础上再多一个*,依此类推;假定我们把输出的内容先构造好,然后一次性输出就可。
#include <stdio.h>
void main(void)
{
int i,j;
char str[10];
for (i=1;i<=5;i++) //行控制打印函数
{
str[i-1]=’*’;
str[i]=’\0’; //字符串结束符
printf(“% s \n”,str);
}
}
上述程序代码,在每次行控制程序上,只执行一次赋值操作,一次打印输出。这个代码从数学角度上看,是好的。
继续对上述代码进行改造,看下面代码:
#include <stdio.h>
void main(void)
{
int i,j;
char str[10]=”*********”;
char fstr[10];
for (i=1;i<=5;i++) //行控制打印函数
{
sprintf(fstr,” %dc”,i); // 根据 i的不同构造 %1c,%2c ,%3c
printf(fstr,str); //输出的就是基于字符的输出
}
}
更多推荐
C语言编程之“八股文”
发布评论