c语言解析系列(1)输入和输出

来源:互联网 发布:最幸福的人网络歌手 编辑:程序博客网 时间:2024/05/23 11:36

C语言解析

目录

A:关于输入输出…………………………………………………………

B :选择语句………………………………………………………………….

C :循环……………………………………………………………………….

D :数组……………………………………………………………………….

E :函数……………………………………………………………………….

F:指针………………………………………………………………………

G:动态内存分配和指向它的指针变量…………………………………

H:用户建立自己的数据类型……………………………………………

I :文件………………………………………………………………………..

昨夜辗转反侧,无法入眠,心中无限想法,做出这一小小决定,总结学习c语言中出现的疑难问题,为了自己的进步,也为了别人的超越!

做出这些,纯粹是为了进步,不惧别人的讥笑,只是为了自己。

A:关于输入和输出

先输出“hello word”回忆初学时的心情!

#include<stdio.h>

int main()

{

printf("hello word");

getch();

   return 0;   

}

输入和输出时要用到两个语句

Scanf(“”, ;scanf(“   ”);

Printf(“”, );或printf(“  ”);

在进行输入输出时主要会发生一下错误。

(1)  格式对应

1:定义浮点型变量double a

错误scanf%d”,&a)或scanf%ld”,a);

printf(“%d”,a

正确scanf%ld”,&a

   Printf(“%ld”,a

切记此处还会发生一个小错误,在输入变量时忘记添加地址符&,本人忘加地址符的此时有n多次,只要编译器一报错我立马就知道是犯了这样的错误。

在用scanf进行多个数据的输入时建议大家用这样的格式(以整型数据为例)

Scanf(“%d%d”,&a&b

在用键盘输入时数据之间只需用空格隔开即可,这与以后学习的c++是对应的,并且简单不易犯错。还有其他的输入方式。

现在将常见不同类型数据的输入输出格式列表如下

Int

%d

Double

%lf

Float

%f

Char

%c/%s(字符型数组用%s)

Long

%ld

在这里说一下typedefdefine吧,typedef可以创造新的数据类型,用以避免数据类型不足时产生的尴尬。就我现在所接触到的最多的就是这样的类型:

1)tupedef创建新类型

Typedef struct student

{

 Int num;

 Double score;

 Char name;

}stu;

这定义了一个结构体类型,stu内包含了多个数据类型,在程序中若出现stu,就表示这样的一个数据类型;

2):宏定义

#define n 100;

 宏定义的define是典型的“后替前”,即当程序中出现n时,就会用100代替,用在程序中可以做到“一改全改”的效果,避免了程序在某些情况下繁琐的修改过程,节省了时间,提高了效率。

还有一些尚未列出,在以后的学习中慢慢会遇到,大家自己体会。学习注重的是自悟!

因为在不同的编译器上数据的储存空间(分配的字节)不同,所以它的值的范围也就不同,超出范围就会溢出!

(2)   

有关运算符的小陷阱

      常见的运算符

初等

()

单目

!a++ ——

算数

+ - *  / %

关系

!= > <  <= >=  ==

逻辑

&&  ||  !=

条件

表达式1?表达式2:表达式3

赋值

=

逗号

表达式1,表达式2……,表达式n

 例二:int a=3b=4 a/b

错误:a/b=0.75 正确:a/b=0 解析:这和我们以前的的数学运算不一样,因为ab都是整形变量,取整后得0

还有一个运算符常用%(求余)此运算符常用在(1)将10进制数转化为二进制时(2)将一个数逆序输出。

现将十进制转二进制的代码写出如下,算是对求余和取整的复习吧!

#include<stdio.h>

int action(int m)

{

 int a[30],n=0,i;

 while(m)

 {

  a[n]=m%2;

  m=m/2;

 n++;

 }

for(i=n-1;i>=0;i--)

printf("%d ",a[i]);

}

int main()

{

int a=10;

action(a);

getch();

return 0;

}

(3)  转义字符

转义字符有很多,像换行\n,退格\b…….用的多了,自然就明白。转义字符就我所接触到的,主要是关于其所占字节的问题(sizeof()),平时不是太常用,主要在考试题中出现,具体出题的方式就是给你一串字符,夹杂着一些转义字符,求这串字符所占字节数。建议遇到这样的题再考虑,去百度一下。不好意思了!