简单的C语言设计
从程序流程的角度来看,程序可以分为三种基本结构, 即顺序结构、分支结构、循环结构。 这三种基本结构可以组成所有的各种复杂程序。C语言提供了多种语句来实现这些程序结构。介绍这些基本语句及其应用,使大家对C程序有一个初步的认识, 为后面各章的学习打下基础。一般朋友问我怎么学C我都会告诉他们把语句理解透了,就可以过学校的考试了数组,函数,指针搞明白了2级就能轻松过了。废话少说~!~
首先我们来说C的语句的一个大概
C语言语句共有5种:控制语句,函数调用语句,表达式语句,空语句,复合语句。
C语言有9种控制语句,分为条件,循环,分支;
<1>: if()…else…   条件语句
<2>: for()…         循环语句
<3>: while()…       循环语句
<4>: do…while()     循环语句
<5>: continue         结束本次循环
<6>: break            中止switch或循环语句
<7>: switch           多分支选择语句
<8>: goto             转向语句
<9>: return           从函数返回语句
注:控制语句中的()表示判别条件,如
if(a>1)
a++;
else a–;

我们先把语句放下,先讲字符的输入输出,这个是要求大家理解,所以我会多放些例子的,但是我不会等同于书上分开讲,我先把所有的函数全部讲完,在一起来看例子,
<1>putchar函数,此函数的作用是向终端输出一个字符,一般形式为 putchart(c);
<2>getchar函数,此函数的作用是从终端输入一个字符。后没有参数,一般形式为getchar();
<3>printf函数,此函数作用是像终端输出若干个任意类型数据,注意和putchar的区别,putchar只能输出一个字符。他的一般形式为printf(“控制格式”,输出列表);
表示输入数据的类型,其格式符和意义下表所示。
格式    字符意义
d     输入十进制整数
o     输入八进制整数
x     输入十六进制整数
u     输入无符号十进制整数
f或e    输入实型数(用小数形式或指数形式)
c     输入单个字符
s     输入字符串
一般在控制格式中输入“%格式”,输入列表就是所要的求值如:printf(“a=%d\\n”,a);就表示了把a用十进制输出。“\\n”在前面说过是转义字符
还有一些其他的附加格式:
“*”符
用以表示该输入项读入后不赋予相应的变量,即跳过该输入值。 如 prpintf(“%d %*d %d”,&a,&b);当输入为:1 2 3 时,把1赋予a,2被跳过,3赋予b。
宽度
用十进制整数指定输入的宽度(即字符数)。例如: prpintf(“%5d”,&a);
输入:
12345678
只把12345赋予变量a,其余部分被截去。又如: prpintf(“%4d%4d”,&a,&b);
输入:
12345678将把1234赋予a,而把5678赋予b。
长度
长度格式符为l和h,l表示输入长整型数据(如%ld) 和双精度浮点数(如%lf)。h表示输入短整型数据。
使用scanf函数还必须注意以下几点:
<4>scnf函数,此函数是输入函数,一般形式为scanf(格式控制,地址列表);它的格式控制和printf函数完全一样,地址列表是若干个地址组成的列表,可以是变量地址或者是字符串的首地址,下面给出用scanf函数比较要注意地方:
1:scanf函数中没有精度控制,如: scanf(“%5.2f”,&a); 是非法的。
2:在输入字符数据时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符。例如:scanf(“%c%c%c”,&a,&b,&c);
3:scanf中要求给出变量地址,如给出变量名则会出错。如 scanf(“%d”,a);是非法的,应改为scnaf(“%d”,&a);才是合法的。(这个十最容易出错的地方)
4: 在输入多个数值数据时,若格式控制串中没有非格式字符作输入数据之间的间隔则可用空格,TAB或回车作间隔。C编译在碰到空格,TAB,回车或非法数据(如对“%d”输入“12A”时,A即为非法数据)时即认为该数据结束。
好了基本的都讲完了哦,我们现在来看例题吧:
例题1: 输出字母A。 代码如下
#include<stdio.h>
void main()
{
    char a;
    a=\’A\’;
    putchar(a);
}
例题2:输入a屏幕出现A.
#include<stdio.h>
void main()
{
    char a;
    a=getchar();
    putchar(a-32);  /*这个大小写的转换前面提到过*/
    putchar(\’\\n\’);
}
这个代码个人感觉比书上更好理解,也简洁哦!
例题3:输入任意边长求长方体面积
void main()
{
float a,b,c;
printf(“请输入a和b的值”);
scanf(“%f,%f,%f”,&a,&b,&c);   /*输入数据*/
c=a*b;
printf(“a=%f,  b=%f\\n”,a,b);  /*输出数据*/
printf(“c=%f\\n”,c);
}

那就先讲到这里,下节我们来讲语句

评论被关闭。