2.C语言-顺序程序设计


1.赋值语句

在变量说明中,不允许连续给多个变量赋初值。
如下述说明是错误的:
int a=b=c=5
必须写为
int a=5,b=5,c=5;
而赋值语句允许连续赋值。

2.输入输出

#include

stdio是standard input &outupt的意思。
考虑到printfscanf函数使用频繁,系统允许在使用这两个函数时可不加

2.1 putchar 函数(字符输出函数)

putchar 函数是字符输出函数,其功能是在显示器上输出单个字符。
其一般形式为:
putchar(字符变量)
例如:
putchar('A'); (输出大写字母A)
putchar(x); (输出字符变量x的值)
putchar(‘\101’);(也是输出字符A)
putchar('\n'); (换行)

2.2 getchar 函数(键盘输入函数)

getchar函数的功能是从键盘上输入一个字符。
其一般形式为:
getchar();
通常把输入的字符赋予一个字符变量,构成赋值语句,如:

char c;
c = getchar();

字符串: gets()

2.3 printf 函数(格式输出函数)

格式字符串的一般形式为:
%[*][输入数据宽度][长度]类型

  1. 类型: 类型字符用以表示输出数据的类型,其格式符和意义如下表所示:
  2. ”符:用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值。
    如: scanf("%d %
    d %d", &a, &b);
    当输入为:1 2 3时,把1赋予a,2被跳过,3赋予b。
  3. 宽度:用十进制整数指定输入的宽度(即字符数)。
    如: printf("%5d", i);
    当i=99时, 输出: □□□99
    当i=999999时, 输出: 999999
    如: printf("%-5d", i)
    当i=1时, 输出:1□□□□
    如: scanf("%5d", &a);
    输入:12345678
    只把12345赋予变量a,其余部分被截去。
    解释: 5:最少输出5个字符,不足空格前面补充
    -:空格后面补充
    就是左右对齐的问题,正数右对齐,负数左对齐。
  4. 长度:长度格式符为l和h,l表示输入长整型数据(如%ld) 和双精度浮点数(如%lf)。h表示输入短整型数据。
2.C语言-顺序程序设计_第1张图片
QQ20161218-0.png

2.4 scanf函数(格式输入函数)

使用scanf函数还必须注意以下几点:

  1. scanf函数中没有精度控制,如:scanf("%5.2f",&a);是非法的。不能企图用此语句输入小数为2位的实数。
  2. scanf中要求给出变量地址,如给出变量名则会出错。如 scanf("%d",a);是非法的,应改为scnaf("%d",&a);才是合法的。
  3. 在输入多个数值数据时,若格式控制串中没有非格式字符作输入数据之间的间隔则可用空格,TAB或回车作间隔。C编译在碰到空格,TAB,回车或非法数据(如对“%d”输入“12A”时,A即为非法数据)时即认为该数据结束。
  4. 在输入字符数据时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符。
    例如:
    scanf("%c%c%c",&a,&b,&c);
    输入为:
    d e f
    则把'd'赋予a, ' ' 赋予b,'e'赋予c。
    只有当输入为:def 时,才能把'd'赋于a,'e'赋予b,'f'赋予c。
    如果在格式控制中加入空格作为间隔,
    如: scanf ("%c %c %c",&a,&b,&c);
    则输入时各数据之间可加空格。
  5. 如果格式控制串中有非格式字符则输入时也要输入该非格式字符。
    例如:
    scanf("%d,%d,%d",&a,&b,&c);
    其中用非格式符“ , ”作间隔符,故输入时应为:
    5,6,7
    又如:
    scanf("a=%d,b=%d,c=%d",&a,&b,&c);
    则输入应为:
    a=5,b=6,c=7
  6. 如输入的数据与输出的类型不一致时,虽然编译能够通过,但结果将不正确。

你可能感兴趣的:(2.C语言-顺序程序设计)