C语言基础与提高1

一、基本数据类型

整型int

整数,在目前绝大多数机器上占4个字节。TC环境中是2个字节
单精度实型float
单精度浮点数,一般是4个字节长
双精度实型double
双精度浮点数,一般是8个字节长
字符型char
字符,一般是1个字节长

用来表示256个ASCII字符,或者0~255的整数

枚举型enum


\0:字符串结束


例:

int  i =  -20;
unsigned  int j = 10;
i+j =?

解 :将-20转换为无符号整型

            1000 0000 0000 0000 0000 0000 0001 0100

反码:1111  1111 1111  1111  1111  1111  1110  1011

补码:1111  1111  1111  1111  1111 1111   1110  1100


变量与常量:

1.const修饰常量:

不能通过变量名去修改对应内存的值


2.volatile:防止编译的时候被优化


字符常量:‘a’,‘A’,‘5’,‘%’


字符串常量:“hello world”,“china”


c规定:在每一个字符串常量的结尾加一个 “字符串结束标志”,以便系统据此判断字符串是否结束。
c规定以字符’\0’作为字符串结束标志。


二、运算符与表达式

C的运算符有以下几类:
(1)算术运算符 (+  -  *  /  %)
(2)关系运算符 (> <  ==  >=  <=  !=)
(3)逻辑运算符 (! &&  ||)
(4)位运算符   (<<   >>   ~   | ∧ &)
(5)赋值运算符 (=及其扩展赋值运算符)
(6)条件运算符 (?:)
(7)逗号运算符  (,)

(8)指针运算符 (*和&)
(9)求字节数运算符(sizeof)
(10)强制类型转换运算符( (类型) )
(11)分量运算符(.->)
(12)下标运算符([ ])
(13)其他 (如函数调用运算符())

基本算术运算符:  + - * / %
结合方向:从左向右
优先级: - ---->* / % -----> + -


自增与自减:

1. ++i,--i:在执行i语句之前,先使i的值加(减)1

2. i++,i--:在执行i语句之后,使i的值加(减)1

例:int a=4;

        ++a+=++a

a=12


格式说明符含义:

%d或%i按十进制有符号整数输出,正数的符号省略
%u按十进制无符号整数输出
%o按八进制无符号整数输出(不输出前导0)
%x或X按十六进制无符号整数输出(不输出前导符0x)
%按字符型数据输出
%s按字符串数据输出
%f按小数形式输出(6位小数)
%e或E按指数形式输出实数
%%输出%本身
%g或G选用%f或%e格式中输出宽度较短的一种格式,不输出无意义的0


三、控制结构


if(表达式1)语句1
   else if(表达式2)语句2
   else if(表达式3)语句3
       ……
   else if(表达式m)语句m
   else  语句n


switch语句的格式:
switch (表达式)

    case 常量表达式1:语句1; break;
    case 常量表达式2:语句2; break;
    …
    case 常量表达式n:语句n; break;
     default      :语句n+1; break;
} 


四、循环语句

while (表达式) 语句
 当表达式为非0值时,执行while语句中的内嵌语句。其特点是:先判断表达式,后执行语句。


for(表达式1;表达式2;表达式3) 语句


continue语句 
  作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定.


break语句 
 break语句可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句
 一般形式:  break;


求两个数的最大公约数,最小公倍数

#include<stdio.h>

int main()
{
int a,b,c,m,n;
printf("please input two number:");
scanf("%d%d",&a,&b);
m=a;
n=b;
while(b!=0)
{
c=a%b;
a=b;
b=c;


}
printf("zui da gong yue shu:%d\n",a);
printf("zui xiao gong bei shu:%d\n",m*n/a);
return 0;
}


检查一个年份是否是闰年


#include<stdio.h>


int main()
{
int n;
scanf("%d",&n);
if (n % 4 == 0 && n % 100 != 0 || n%400 == 0 )
{
printf("shi run nian\n");
}
else
{
printf("bu shi\n");
}
return 0;
}



求1-100内的素数

#include<stdio.h>


int main()
{
printf("2\n");
int i,j;
for (i=2;i<=100;i++)
{
for (j=2;j<i;j++)
{


if (i%j==0)
{

break;
}

if (j==i-1)
{
printf("%d\n",i);


}
}
}
}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值