c学习-9

Posted activecode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c学习-9相关的知识,希望对你有一定的参考价值。

/*内存练习*/ #include #include//引入内存分配库文件 int main(){ double* x; //定义整型指针和double指针 int* y; x=(double*)malloc(sizeof(x));//为double分配空间 printf("%d ",sizeof(*x)); y=realloc((x),sizeof(int)); //重新为double分配空间为int printf("%d ",sizeof(*y)); } /*内存练习*/ #include #include //引入内存分配库文件 int main(){ int i; //计数器 int* parray; //整型指针变量 parray=(int*)calloc(3,sizeof(int));//调用动态分配函数为指针数组赋予多个值 //循环为指针赋值 for(i=0;i<4;i++){ *parray=10*i; printf("%d ",i,*parray); parray+i; //移动指针 } return 0; /*int *p=(int*)malloc(sizeof(int)); //调用动态分配函数 *p=100; //为分配到的指针赋予空间 printf("%d",*p); return 0; */ /* int *PInt; //定义指针 PInt=(int*)malloc(sizeof(int));//动态分配内存 *PInt=100; printf("%d ",*PInt); free(PInt); //释放内存 printf("%d ",*PInt); //return 0; */ } /*预定义指令练习*/ #include #define PWD 1 int main(){ char *p="hello world";//定义字符型指针 //引用预定义指令 #if PWD printf("****** "); #else printf("%s ",p); #endif } /*内存练习*/ #include #include//引入内存分配库文件 int main(){ double* x; //定义整型指针和double指针 int* y; x=(double*)malloc(sizeof(x));//为double分配空间 printf("%d ",sizeof(*x)); y=realloc((x),sizeof(int)); //重新为double分配空间为int printf("%d ",sizeof(*y)); } /*内存练习*/ #include #include int main(){ int* p; int i; p=(int*)malloc(sizeof(int[3]));//为数组分配空间 for(i=0;i<3;i++){ *(p+i)=10*(i+1); printf("%d ",*p+i); } return 0; } /* double a; printf("%d ",sizeof(a)); int* PInt;//整型指针 PInt=(int*)malloc(sizeof(PInt));//分配空间 *PInt=10; printf("%d ",*PInt); free(PInt); //释放空间 printf("%d ",*PInt); return 0; */ /*内存练习*/ #include #include int main(){ //定义p,q指针,n计数器 int n,*p,*q; //提醒输入n的值 printf("请输入n: "); scanf("%d",&n); //赋值q指针内存空间 p=(int *)malloc(sizeof(n,2)); //循环输出分配的内存空间 for(q=p;q #include int main(){ //定义商品结构体 struct shop{ char *name; int num; double money; }*pay; //定义结构体变量 //为结构体变量分配内存 pay=(struct shop*)malloc(sizeof(struct shop )); //初始化结构体成员的值 pay->name="食用油"; pay->num=3; pay->money=300; printf("name:%s num:%d money:%lf ", pay->name,pay->num,pay->money ); return 0; } /*链表练习*/ #include //定义结构体 struct student{ int score; int age; struct student *pnext; //指向下一个节点 }; int main(){ struct student stu1, stu2,*head,*p; //定义结构体变量 //初始化结构体变量 stu1.score=100; stu2.age=18; stu2.score=60; stu1.age=20; head=&stu1; //定义头指针 p=head; stu1.pnext=&stu2; stu2.pnext=NULL; do{ printf("score:%s age:%d ",p->score,p->age); p=p->pnext; }while(p!=NULL); return 0; } /*栈练习*/ #include void displayFunctionA(char* string){ printf("%s ",string); } void displayFunctionB(char* string){ //调用displayFunctionA char String[10]="hello world"; printf("请输入str的值: ",String); // scanf("%s",&string); displayFunctionA(string); } int main(){ char string[10]="hello zhan"; displayFunctionB(string); return 0; } /*与和或,取反运算*/ #include int main(){ //定义整型变量 int a,b,c,z; printf("请输入a的值: "); scanf("%d",&a); printf("请输入b的值: "); scanf("%d",&b); c=a&b; z=a|b; printf("a与b的结果:%d 取反结果为:%d ",c,~c); printf("a或b的值是:%d 异或的结果是:%d " ,z,a^b); } /*左移,右移运算符*/ #include int main(){ //定义整型变量 int a=10,b=1000000; //scanf("%d") a=a<<2; //printf(") printf("firset左移a的值:%d ",a); a=a<<5; //再次输出左移a的值 printf("second左移a的值:%d ",a); //右移b b=b>>2; printf("右移b的值:%d ",b); } /*循环位移练习*/ #include //定义位移函数 int left(int value,int n){ //定义两个形参 int z; //执行位移操作 z=(value>>(32-n))|(value< int main(){ //定义整型变量 int a,b; //接受输入 printf("请输入a的值: "); scanf("%d",&a); printf("请输入b的值: "); scanf("%d",&b); //对未异或的a,b输出 printf("a:%d b:%d ",a,b); //进行异或运算 a=a^b; b=b^a; a=a^b; // 对异或的a,b输出 printf("a:%d b:%d ",a,b); #include int main(){ //定义两个整型变量 int a,rs; //构造输入一个八进制数 printf("请输入a的值: "); scanf("%o",&a); //对rs取后四位为1 rs=~(~0<<4); //对rs和a与运算 printf("%o ",rs&a); } }

以上是关于c学习-9的主要内容,如果未能解决你的问题,请参考以下文章

如何快速入门Python学习呢?

深度学习主机攒机小记

抽奖活动中的学习

004-

Python学习笔记(二十五)序列化_JSON基础

机器学习——概念