一、变量

 #include<stdio.h>
#include<stdlib.h> void main0(){
//数据使用必须在范围内,否则产生溢出
unsigned short num=+;//+1之后溢出为0
//printf("%d",sizeof(num));
printf("阿飞有%d元",num);
getchar();
} void main1(){
short num=+;//+1之后溢出为-32768
printf("阿飞有%d元",num);
getchar();
} void main2(){
//printf的本质是按照自己的方式,将变量转换为字符串,无论变量以前是什么类型,而且printf不会自动转换
printf("%d",);//%d整数
printf("\n%f",);//%f实数 打印出0.000000  1改成1.0之后打印正确
getchar();
} void main3(){
//使用printf打印的时候,必须要类型匹配,否则出错
printf("%d,%u",-,-);//%d有符号十进制,%u无符号十进制
getchar();
}
//能编译,不能保证结果正确
void main(){
printf("%d",-);//正确
printf("\n%u",-);//错误
printf("\n%x",-);//无符号16进制,错误
printf("\n%o",-);//无符号8进制,错误
getchar();
}

二、随机数

 #include<stdio.h>
#include<stdlib.h>
#include<time.h> void main(){
//三目运算符:0就执行notepad,非0执行calc
//-1?system("calc"):system("notepad");
int num=rand()%;//0~99的随机数
printf("%d\n",num);
num>?printf("你赢了"):printf("你输了");
getchar();
}

经过测试,上述代码只能产生一次随机数,即多次运行结果不变。那么如何让程序每次都产生不同的随机数呢?

 #include<stdio.h>
#include<stdlib.h>
#include<time.h> void main(){
int num;
time_t t;//定义时间类型的变量
//time是一个函数,获取时间,复制给t,转换为unsigned int类型
srand((unsigned int)time(&t)); num=rand()%;//0~99的随机数
num=rand()%+;//100~199的随机数
printf("%d\n",num);
num>?printf("你赢了"):printf("你输了");
getchar();
}

三、随机恶作剧

 #include<stdio.h>
#include<stdlib.h>
#include<windows.h>
#include<time.h> _declspec(dllexport) void go1(){
while(){
malloc(**);//10M
Sleep();
}
} _declspec(dllexport) void go2(){
while(){
MessageBoxA(,"马化腾邀请你共进晚餐","享受终生QQ红钻",);
Sleep();
}
} _declspec(dllexport) void randgo(){
int num;
time_t t;
srand((unsigned int)time(&t));
num=rand()%;
num>?go1():go2();
}

然后注射到程序中,实现恶作剧

四、数据类型

 #include<stdio.h>
#include<stdlib.h> void main()
{
int num=;
char ch='';
printf("%d,%c",num,num);
printf("\n%d,%c",ch,ch);
system("pause");
}

稍作修改如下

 #include<stdio.h>
#include<stdlib.h> void main(){
printf("%d",sizeof());//int的常量 4个字节
printf("\n%d",sizeof(4.0));//double 8个字节
printf("\n%d",sizeof(4.0f));//float 4个字节
printf("\n%d",sizeof(4u));//unsigned int 4个字节
getchar();
}

 #include<stdio.h>

 void main(){
//数据类型指明了二进制该如何解析
int num1=;
float num2=10.0;
printf("%x,%f",num1,num1);
printf("\n%x,%f",num2,num2);
printf("\n%x,%x",&num1,&num2);
getchar();
}

五、三角形面积

 #include<stdio.h>
#include<stdlib.h>
#include<math.h> void main(){
float a,b,c,s,p;
scanf("%f%f%f",&a,&b,&c);//数据输入,初始化a,b,c
printf("a=%f,b=%f,c=%f\n",a,b,c);
p=(a+b+c)/;
s=sqrt(p*(p-a)*(p-b)*(p-c));//sqrt求平方根
printf("面积s=%f",s);
system("pause");
}

六、字符转换成整数

 #include<stdio.h>
#include<stdlib.h> void main(){
//字符0的编号是48,按照字符是0
printf("字符0编号=%d,字符0的字符=&c",'','');
printf("\n整数0编号=%d,整数0的字符=&c",,);
printf("\n%d",''-);//字符转换成整数
printf("\n%d",''-);//都等于48
system("pause");
}

七、大小写转换

 #include<stdio.h>
#include<stdlib.h> void main()
{
char ch=getchar();
//putchar(ch+32);//大写->小写
putchar(ch-);//小写->大写
system("pause");
}

八、字符串拼接

 #include<stdio.h>
#include<stdlib.h> void main(){
char str1[]="note";
char str2[]="pad";
char str3[];
sprintf(str3,"%s%s",str1,str2);
system(str3);
getchar();
}

[c/c++] programming之路(6)、ASCII码,数据类型、随机数、字符转换及拼接等的更多相关文章

  1. C语言:从p所指字符串中找出ASCII码最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。-使字符串的前导*号不得多于n个,若多余n个,则删除多余的*号,

    //fun函数:从p所指字符串中找出ASCII码最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动. #include <stdio.h> void fun( char * ...

  2. php中的字符串常用函数(四) ord() 获得字符的ascii码 chr()获取ascii码对应的字符

    ord('a');//=>97 返回小写a 的ascii码值97 chr(97);//=>a 返回ascii码表上的97对应的 小写a

  3. 特殊的ASCII码对应的字符

    Special Characters " " " quotation mark u+0022 ISOnum p:before { content:"\0022& ...

  4. 利用浏览器做好数字进制和ASCII码及Unicode教与学

    浏览器是现在个人计算机的标配,一般来说一个PC至少安装一种以上的浏览器.主流网页浏览器有Google Chrome.Internet Explorer.Microsoft Edge.Mozilla F ...

  5. 教程-最全ASCII 码对照表

    第一部分由 00H 到 1FH 共 32 个,一般用来通讯或作为控制之用,有些字符可显示于屏幕,有些则无法显示在屏幕上,但能看到其效果(例如换行字符.归位字符). 第二部分是由 20H 到 7FH 共 ...

  6. C++ ASCII 码的一些问题

    关于ASCII码和转义字符的对应问题,一直都有个困惑.所以今天校验了一下是什么情况. 转义字符的百度百科:http://baike.baidu.com/link?url=D9ytjAeiYr1ZGKG ...

  7. C语言字符转换ASCII码

    //函 数 名:CharToHex()//功能描述:把ASCII字符转换为16进制//函数说明://调用函数://全局变量://输    入:ASCII字符//返    回:16进制///////// ...

  8. C语言之字符集、ASCII码和sizeof运算符

    一 字符集和ASCII码 结论:字符本质上也是一个整数,每个字符都有唯一一个与之对应的整数, 比如说小写的a对应97,b对应98,c对应99,大写的A对应65,B对应66,C对应67 所以字符对应的那 ...

  9. js字母/字符与ASCII码转换

    var tempStr="A"; console.log(tempStr.charCodeAt());// 65 ,转ASCII码 console.log(String.fromC ...

随机推荐

  1. python repr和str

    都是将对象转换为字符串 repr """ repr(object) -> string Return the canonical string representa ...

  2. (已解决)Xcode 换电脑提示 Could not attach to pid:“XXXX”错误

    在运行项目时出现了如下错误 (基本上重新启动项目即可) 紧接着再次运行又没有问题了. 稍微查询了一下得知,这个问题并不是由我们的操作引起的,有时就会莫名其妙的出现,但是有一些不同的情况 下面列出如何解 ...

  3. Python基础(四) socket简单通讯

    socket:我们通常听过的套接字: 服务端: 1.创建socket对象 2.bing 绑定ip及端口 3.对该端口进行监听 4.消息阻塞(等待客户端消息) 客户端: 1.创建socket对象 2.连 ...

  4. es6generator

    yield语句 由于Generator函数返回的遍历器对象,只有调用next方法才会遍历下一个内部状态,所以其实提供了一种可以暂停执行的函数.yield语句就是暂停标志. yield语句只能用在 Ge ...

  5. <9>cc.Sprite组件

    1.精灵 精灵(Sprite)是Cocos系列的核心概念之一,是Cocos Creator最常用的显示图像的组件. 游戏中显示一个图片,我们就可以把这个叫做”精灵” sprite,这只是简单理解概念. ...

  6. 数据分析之Numpy库入门

    1.列表与数组 在python的基础语言部分,我们并没有介绍数组类型,但是像C.Java等语言都是有数组类型的,那python中的列表和数组有何区别呢? 一维数据:都表示一组数据的有序结构 区别: 列 ...

  7. C语言堆栈的区别

    堆(heap)和栈(stack)有什么区别?? 简单的可以理解为: heap:是由malloc之类函数分配的空间所在地.地址是由低向高增长的. astack:是自动分配变量,以及函数调用的时候所使用的 ...

  8. css解决无论页面长短footer永远置底

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. session_start 统计实时访客人数

    void Session_Start(object sender, EventArgs e) { Application.Lock(); Application["OnLine"] ...

  10. python pymssql 连接数据库

    1)写在前面 远程连接数据库的时候,端口前面都是用的逗号, 因为惯性思维, 就傻傻的把    ip+,+端口 赋值给server了,然后一直报错, pymssql.InterfaceError: Co ...