一、变量

 #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. Linux性能优化gprof使用

    gprof用于分析函数调用耗时,可用之抓出最耗时的函数,以便优化程序. gcc链接时也一定要加-pg参数,以使程序运行结束后生成gmon.out文件,供gprof分析. gprof默认不支持多线程程序 ...

  2. PO模型

    大神绕道而行,自我小白的笔记,仅此 一.创建文件夹,创建xxx.ini文件用来存放界面的定位元素,用 [界面_element]-->界面, 来划分界面界面元素,维护方便.定位元素的格式:  us ...

  3. CSU 1859 Gone Fishing(贪心)

    Gone Fishing [题目链接]Gone Fishing [题目类型]贪心 &题解: 这题要先想到枚举走过的湖,之后才可以贪心,我就没想到这,就不知道怎么贪心 = = 之后在枚举每个湖的 ...

  4. js中call,caller,callee,aplly

    1.函数的caller属性 (1).区分函数是在函数体调用还是顶层代码中调用:顶层中调用函数,该函数的caller属性返回null,在函数中调用,会返回调用发i函数的函数: <script> ...

  5. laravel service provider

    https://laravel-china.org/articles/6189/laravel-service-provider-detailed-concept https://oomusou.io ...

  6. django 定义文章url

    url(r'^firstcontent/'+str(date)+'/(?P<first_body_id>\d+)/$', views.firstcontent, name='firstco ...

  7. Shader1.0学习笔记之SetTexture

    1.语法 SetTexture [TextureName] {Texture Block} 2.Texture block combine 命令 combine src1 *  src2 越乘越暗 c ...

  8. SITECORE体验编辑器 - 多站点实施站点解析

    SITECORE体验编辑器 - 多站点实施站点解析   我们使用其中一个多站点实现遇到了Sitecore体验编辑器的问题.从内容编辑器中选择并尝试在体验编辑器中打开时属于某个站点的任何页面将始终解析为 ...

  9. maven build 的时候,卡死在Downloading metadata的解决方法

    [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Buildi ...

  10. 用django统计代码行数+注释行数

    实现统计代码行数: 1.首先在url.py中配置 from django.conf.urls import url from django.contrib import admin from app0 ...