美文网首页程序员
零基础自学C语言 | 学习笔记(7)

零基础自学C语言 | 学习笔记(7)

作者: 重耳兄 | 来源:发表于2017-02-12 13:22 被阅读0次

现在学习进入深水区了,每看一章节,都要花好几天的时间去复习,去看其他的同类别的书,突然发现那本官方教程写的真的很难懂,特别是对我这种新手、菜鸟来说更难了。现在又找了一本同类别的书来辅助,让自己能稍微能啃的深刻一点。自己也理解更易记忆一点。

复习一点上一节课

输出函数的一般格式:printf (格式控制,输出表列)。

重点补充一点

1、格式控制,如何指定数据宽度和小数位数,用%m.nf。

m指定了数据的宽度,n指定了小数后的宽度(含小数点),同时对n+1位四舍五入。

如:#include<stdio.h>

int main()

{

double a=123.23565;                //double a;    也可试试这个

printf("%7.2f",a);                       //printf("%7.2f\n",1000/3.0);      可试试

return 0;

}

运行的结果是:123.24

2、输出的数据向左对齐,用%-m.nf。

在m,n的前面加一个负号,其作用与%m.nf形式作用基本相同,但当数据长度不超过m时,数据向左靠,右侧补空格。

#include <stdio.h>

int main ( )

{float a;

a=1000/3.0;

printf("%-25.15f\n%25.15f",a,a);

return 0;

}                          运行结果:第一个值左靠,第二个值右靠,左边空了5个空格。

注:由于float型数据只能保证6-7位有效数字,所以不能保证从左数第七个数不能保证正确,这点在只要在计算机里,小数的正确率不一定百分百准确的,float型存储单元有效数字是6位,double型存储单元有效数字是15位。

适用%m.n格式的字符有e,f,d等等。注d指定宽度,如果输出不足指定宽度时,右侧对齐,左侧补空格。

今天学习了第二种输入输出函数:getchar/putchar。

putchar函数的一般形式为:  putchar (c)。  put char是put character(给字符)缩写,

所以putchar输出的字符变量c的值。

#include <stdio.h>

int main()

{

char c1='B',c2='O',c3='Y';                    //int c1=66,c2=79,c3=89;   呢?

putchar(c1);

putchar(c2);

putchar(c3);

putchar('\n');

return 0;;

}                          运行结果:BOY

以上两种都是一样的,putchar(c)函数是输出字符的函数,它输出字符,而不能输出整数。

c可以是字符常量,整型常量,字符变量或整型变量(须在ASCII代码范围内)。

getchar输入函数的一般形式为:getchar(c)

#include <stdio.h>

int main ()

{

char a,b,c;

a=getchar();

b=getchar();

c=getchar();

putchar(a);

putchar(b);

putchar(c);

putchar('\n');

return 0;

}                            运行时输入:BOY  CR(Enter的意思),运行结果:BOY

注:当我们输入字符时,一定要连续输入BOY后,再按CR,而不能B O Y再按CR,或者B CR C CR Y CR这样也不行的,因为这两个函数是字符函数,不管是空格还是CR都是字符,他GET到就会放在b这个盒子里,O呢就GET到c的这个盒子里了,而就结果就会是  BO。

# include<stdio.h>

int main()

{

putchar(getchar());

putchar(getchar());

putchar(getchar());

putchar('\n')

return 0;

}                                    输入BOY后,运行结果:BOY

print("%c",getchar());,也可以这么用,因为%c是输出字符的格式声明。

相关文章

网友评论

    本文标题:零基础自学C语言 | 学习笔记(7)

    本文链接:https://www.haomeiwen.com/subject/iejgittx.html