C语言基础语法
auto double int struct break else long switch
case enum register typedef char extern return union
const float short unsigned continue for signed void
default goto sizeof volatile do if while static
2,标识符:
命名规则:只能由26个英文字母的大小写、10个阿拉伯数字0~9、下划线_组成;
严格区分大小写,比如test和Test是2个不同的标识符;
不能以数字开头,不能使用关键字作为标识符。
3,注释:单行注释 //多行注释/**/
主要:单行注释可以嵌套多行注释和单行注释;多行注释也可以嵌套单行注释,但多行注释不能嵌套多行注释!
4,C语言数据类型:
基本数据类型:整型:int 浮点型:{单精度浮点型float 双精度浮点型double} 字符型:char
指针类型:void*
构造类型:数组、结构体strtuct、公用体union、枚举enum
空类型:void
5, 常量:
<1>整型常量(int):包括了所有整数。
<2>浮点型常量(float\double):double:双精度浮点型,其实就是小数。float:单精度浮点型,也是小数,比double的精确程度低,也就是说所能表示的小数位数比较少,float型数据都是以f结尾。比如5.43f、-2.3f、0.0f。需要注意的是,绝对不能有10f这样格式的,编译器会直接报错,只有小数才允许加上f。
<3>字符常量(char)
<4>字符串常量
6,变量:变量所占字节数跟类型有关,也跟编译器环境有关系。
变量的内存寻址方式是由大到小。第一个字节的地址就是变量的内存地址。
7,scanf函数;
scanf函数只接受变量的地址,scanf函数是一个阻塞式的函数
注意:scanf的第一个参数中不要包含\n,比如scanf(“%d\n”,&a); 这将导致scanf函数无法结束。
scanf(" %[^\n]",p)可以解决输入一句英文句子(单词以空格隔开的)的录入,并且能保证再次完整的输出。
#include <stdio.h>
int main()
{
/* 1.输入字符
char myc;
scanf("%c", &myc);
printf("输入的字符是%c\n", myc);
*/
/* 2.一次性输入多个数值,并且以某些符号隔开
int num1, num2;
scanf("%d#%d", &num1, &num2);
printf("num1=%d, num2=%d\n", num1, num2);
*/
/*
3.如果scanf参数中以空格隔开,实际输入可以以空格、tab、回车作为分隔符
int num1, num2;
scanf("%d %d", &num1, &num2);
printf("num1=%d, num2=%d\n", num1, num2);
*/
/*
4.scanf中不能写\n
int a;
scanf("%d\n", &a); // 错误写法
printf("a的值是%d\n", a);
*/
return 0;
}
练习:
#include <stdio.h>
int main()
{
int a , b;
//提示用户输入两个整数
printf("请输入两个整数且以空格隔开:\n");
//接收用户输入的数据
scanf("%d %d",&a,&b );
//打印出用户输入的数据
printf("用户输入的数据是%d,%d\n",a ,b );
//计算出和
int sum = a + b ;
printf("用户输入数据之和是:%d+%d=%d\n",a ,b,sum );
return 0;
}
-------------------------------------- android培训、java培训、ios培训期待与您交流! ---------------------------------