C语言入门学习 一月四日总结

程序 = 算法 + 数据结构

程序设计 = 编程范式(设计模式)

  • C语言 : 面向过程
  • C ++ (语言联邦) : 面向对象,面向过程,函数式编程(难),泛型编程

函数是压缩的数组 ,数组是展开的函数

总而言之 对于学习一门语言来说,最重要的是要学会组织这种语言的方式,也就是编程范式,就像是写作文一样,学会语法只能保证写的文章是没有错误的,但是想写出优美的文章就需要更多的积累,修辞,句式变换,引用等等。编程也是一样的,需要学会这门语言所支持的范式。
先从了解函数入门

输出函数说明


printf 函数

头文件: stdio.h

原型 :int printf ( const char * format , … );

​ format : 格式控制字符串

​ … : 可变参数列表

返回值:输出字符的数量

int n = 65535;

int i = printf("%d",n); 

//   i = 5

来看一个有趣的例子,只用printf 一族 来判断一个数字n的位数

注释 : freopen 函数 一个用来 重定向输入输出流 的函数

/*************************************************************************
	> File Name: 1.try.c
	> Author:Gin.TaMa 
	> Mail:[email protected] 
	> Created Time: 2019年01月06日 星期日 14时37分13秒
 ************************************************************************/

#include<stdio.h>
int main(){
    int n = 0;
    freopen("/dev/null","w",stderr);// 将 标准错误输出输出到 null(垃圾桶)里
    while(~scanf("%d",&n)){
        printf("%d\n",fprintf(stderr,"%d",n));
    }
    return 0;
}

神奇的小游戏

扫描二维码关注公众号,回复: 4805321 查看本文章

输出函数说明


scanf 函数

头文件 : stdio.h

原型 : int scanf ( const char * format , … );

​ format : 格式控制字符串

​ … : 可变参数列表

返回值 : 成功读入的参数的个数 有 EOF 以及 0 到 … …

while(scanf(...) != EOF);

普通的用法,如果读入一个想读入一个包含’ '的字符串呢

/*************************************************************************
	> File Name: 2.c
	> Author:Gin.TaMa 
	> Mail:[email protected] 
	> Created Time: 2019年01月04日 星期五 20时47分02秒
 ************************************************************************/
#include<stdio.h>
int main(){
    char a;
    char str[100] = {0};
    int i = 0;
    while(scanf("%[^\n]s",str)!=EOF){
        getchar();
        printf("%s\n",str);
    }
    return 0;
}

注意需要一个getchar()来读入一个换行符,因为 %[ ^ \n ] s  会在\n 前面停下来,这样 就永远都不会读入EOF这个字符了。所以需要getchar来吃掉\n 保证循环没有问题

猜你喜欢

转载自blog.csdn.net/weixin_39722329/article/details/85928602