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
在这里说一下typedef、define吧,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=3,b=4 求a/b
错误:a/b=0.75 正确:a/b=0 解析:这和我们以前的的数学运算不一样,因为a、b都是整形变量,取整后得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()),平时不是太常用,主要在考试题中出现,具体出题的方式就是给你一串字符,夹杂着一些转义字符,求这串字符所占字节数。建议遇到这样的题再考虑,去百度一下。不好意思了!
- c语言解析系列(1)输入和输出
- C语言编程(练习1:字符输入和输出 )
- C语言输入和输出
- C语言编程(练习2:字符输入和输出 )
- C语言编程(练习3:字符输入和输出 )
- C语言编程(练习4:字符输入和输出 )
- 单链表的输入和输出(c语言编写)
- 小结:C语言的输入和输出
- C语言之输入和输出
- C语言流输入和输出函数
- C语言的输入和输出函数
- C语言学习_008_字符输出/输入和输入确认
- C语言之字符输入/输出和输入确认
- c语言解析系列(3)循环和数组
- c语言和c++的输入,输出和异常
- C语言 文字输出输入
- c语言 输入/输出函数
- C语言文件输入/输出
- 深入理解Oracle表(6):堆组织表(HOT)和索引组织表(IOT)的区别
- Stanford公开课之算法:设计与分析——II.渐进式分析(第一周)
- LS 15 Divisor counting (Easy)(数论)
- 通过img标签调用实现静态页面访问次数统计的简单方法
- 2013寒假练习 1030:Knight Moves
- c语言解析系列(1)输入和输出
- 剑指offer-->面试题6 重建二叉树
- c语言解析系列(2)选择语句
- TCL语言相关
- c语言解析系列(3)循环和数组
- c语言解析系列(4)函数
- eclipse中的各种调试
- c语言解析系列(5)指针
- java_abstract factory