【c学习-14】

/*练习*/ #include int testFeiunction(b[],n){ b[1]=1; n=10; } int main(){ int a[10]={1,2,3,4,5}; int n=10; testFeiunction(a,n); printf("%d,%d",a[1],n); } //输出特殊图案 /*兔增长问题*/ #include void rabbitFunction(){ //定义整型变量初始化,计数器 int ra1=1,ra2=1,i; //规定增长的次数为20,执行循环 for(i=0;i<20;i++){ printf("%12d%12d",ra1,ra2); //对增长进行过滤 if(i%2==0) printf("\n"); ra1=ra1+ra2; ra2=ra1+ra2; } } int main(){ rabbitFunction(); } #include //定义文件操作指针 FILE *fp; FILE *fp1; fp=fopen("1.txt","rw"); fp1=fopen("2.txt","rw"); //使用rename()重命名 rename(fp,fp1); void pictureFunction(){ //定义整型变量 int i,j; printf("\1\1\n"); for(i=1;i<11;i++){ for(j=1;j #define X 176 #define Y 219 void ascillFunction(){ printf("%c%c%c%c%c\n",Y,X,X,X,Y); printf("%c%c%c%c%c\n",X,Y,X,Y,X); printf("%c%c%c%c%c\n",X,X,Y,X,X); printf("%c%c%c%c%c\n",X,Y,X,Y,X); printf("%c%c%c%c%c\n",Y,X,X,X,Y); } int main(){ ascillFunction(); } */ /*输入三个数,按大小排列*/ #include #define swap(a,b) {a=a+b;b=a-b;a=a-b;} void swapFunction(){ //定义整型变量,t用于交换 int x,y,z,t; printf("请输入x,y,z的值:\n"); scanf("%d%d%d",&x,&y,&z); if(x>y){ swap(x,y); /* t=x; x=y; y=t; */ }else if(x>z){ swap(x,z); /* t=x; x=z; z=t; */ } else (y>z){ swap(y,z); /* t=y; y=z; z=t; */ } } int main(){ swapFunction(); } I(利润)<=10*10(*)4 money+10% 10*10(*)410*10(*)4 7.5% [20,40] > 20 5% [40,60] >40 3% [60,100] >60 1.5% >100 1% //定义每个区间应得的奖金和利润双进度变量 double money money_1,money_2,money_3,money_4,money_5,I; printf("请输入你的利润:\n"); scanf("%lf",I); //根据表达式计算每阶段的奖金 money_1=money_1*0.1; money_2=money_1+money_1*0.075; money_3=money_2+money_2*0.05; money_4=money_3+money_3*0.03; money_5=money_4+money_4*0.015; //判断 if(i<100000){ money=I*0.1; }else if(I<=200000) { money=money_1+(I-100000)*0.0075; } else if(I<=400000) { money=money_2+(I-200000)*0.05; } else if(I<=600000) { money=money_1+(I-400000)*0.03; } else if(I<=1000000) { money=money_3+(I-600000)*0.015; } else if(I<=1000000) { money=money_1+(I-1000000)*0.01; } printf("%lf\n",money); //有x,y,z,w四个数字,互异排列 #include //对程序做优化 void upFunction(){ //定义整型变量 int a=3,b=4,c=5; //初始化变量 for(a=1;a<5;a++){ for(b=1;b<5;b++){ if(a==b){ continue; } for(c=1;c<5;c++){ if(b!=c||a!=c){ printf("a:%d\nb:%d\bc:%d\n",a,b,c); } } } int main(){ upFunction(); } void testFeiunction(){ //定义整型变量 int x,y,z; //分别为三个数字赋值 printf("请分别输入x,y,z的值"); scanf("%d%d%d",&x,&y,&z); //执行三次for循环 for(x=1;x<5;x++){ for(y=1;y<5;y++){ for(z=1;z<5;z++){ //对重复的数进行筛选 if(x!=y&&x!=z&&y!=z){ printf("x:%d\ny:%d\nz:%d\n",x,y,z); } } } } } int main(){ testFeiunction(); } /*命令行参数*/ #include #include #include void testFeiunction(){ int x=','; printf("ispunct:%d\n"ispunct(x)); } int main(){ testFeiunction(); } #define x 10 #define y 9 #define accert(x>y) int main(int argc,char *argv[]){ //分别对形参数不同的情况下做判断 if(argc=2){ printf("only have a manager%s\n",argv[1]); } else if(argc>2){ printf("have many manager\n"); }else{ printf("no have manager\n"); } //对参数不同的情况下做判断 } /*内存*/ #include #include void testFeiunction(){ //定义整型变量 //int i; char *pointer,ch[10]; strcpy(ch,"liupeng"); //向内存申请一段空间 free=malloc(20*siezeof(char)); //判断 if(free=NULL){ fprintf(stderr,"you age is error"); } else{ strcpy(free,"you age is 18"); } printf("ch:%s\npointer:%s\n",ch,free); int main(){ testFeiunction(); } /*可变形参*/ #include #include void testFeiunction(int a,...){ //定义整型变量,计数器 int sum,i; va_list valist; //初始化可变参数列表 va_start(valist,num); //对可变参数进行累加 for(i=0;i //创建递归函数 void testFeiunction(int i){ //定义计数形参 //判断i<=1的情况 if(i<=1){ return 0; } return i*testFeiunction(i); } int main(){ //为要递归的变量赋值 int x; printf("请输入你要递归的数字:\n"); scanf("%d",&x) //调用递归函数 testFeiunction(x); } /* */ /*练习*/ /*练习*/ /*练习*/ /*数组形参改变子函数值*/ #include int testFeiunction(int b[],int n){ b[1]=10; n=1; } int main(){ int a[10]={1,2,3,4,5}; int n=10; testFeiunction(a,n); printf("%d,%d",a[1],n); } /*兔增长问题*/ /* #include void rabbitFunction(){ //定义整型变量初始化,计数器 int ra1=1,ra2=1,i; //规定增长的次数为20,执行循环 for(i=0;i<20;i++){ printf("%12d%12d",ra1,ra2); //对增长进行过滤 if(i%2==0) printf("\n"); ra1=ra1+ra2; ra2=ra1+ra2; } } int main(){ rabbitFunction(); } */ /*练习*/ /*特图案*/ /* #include //定义文件操作指针 void fileFx(){ FILE *fp; FILE *fp1; fp=fopen("1.txt","rw"); fp1=fopen("2.txt","rw"); //使用rename()重命名 rename(fp,fp1); } int main(){ fileFx(); } */ //输出特殊图案 /* #include void pictureFunction(){ //定义整型变量 int i,j; printf("\1\1\n"); for(i=1;i<11;i++){ for(j=1;j void pictureFunction(){ //定义整型变量 int i,j; //循环控制输出 for(i=1;i<8;i++){ for(j=1;j<8;j++) if((i+j)%2==0) printf("-3%c%c",216,216); else printf(" "); printf("\n"); } } int main(){ pictureFunction(); } */ /*练习*/ /*九九乘法表*/ /* #include void powFunction(){ //定义整型变量 int i,j,result; printf("\n"); //执行外层循环 for(i=1;i<10;i++){ //执行内层循环 for(j=1;j<=i;j++){ result=i*j; printf("%d*%d%-2d",i,j,result); } printf("\n"); } } int main(){ powFunction(); } */ /* #include #define X 176 #define Y 219 void ascillFunction(){ printf("%c%c%c%c%c\n",Y,X,X,X,Y); printf("%c%c%c%c%c\n",X,Y,X,Y,X); printf("%c%c%c%c%c\n",X,X,Y,X,X); printf("%c%c%c%c%c\n",X,Y,X,Y,X); printf("%c%c%c%c%c\n",Y,X,X,X,Y); } int main(){ ascillFunction(); } */ /*输入三个数,按大小排列*/ /* define swap(a,b) {a=a+b;b=a-b;a=a-b;} void swapFunction(){ //定义整型变量,t用于交换 int x,y,z,t; printf("请输入x,y,z的值:\n"); scanf("%d%d%d",&x,&y,&z); if(x>y){ swap(x,y); /* t=x; x=y; y=t; */ /* }else if(x>z){ swap(x,z); /* t=x; x=z; z=t; */ /* else if(y>z){ swap(y,z); /* t=y; y=z; z=t; */ /* } else{ exit(0); } printf("x:%d\ny:%d\nc:%d\n",x,y,z); } int main(){ swapFunction(); } /* #include int main(){ //定义整型变量,t用于交换 int x,y,z,t; printf("请输入x,y,z的值:\n"); scanf("%d%d%d",&x,&y,&z); //判读 if(x>y){ t=x; x=y; y=t; }else if(x>z){ t=x; x=z; z=t; }else if(y>z){ t=y; y=z; z=t; } else{ exit(0); } printf("x:%d\ny:%d\nc:%d\n",x,y,z); } */ /* void testFunction(){ double money, money_1,money_2,money_3,money_4,money_5,I; printf("请输入你的利润:\n"); scanf("%lf",I); //根据表达式计算每阶段的奖金 money_1=money_1*0.1; money_2=money_1+money_1*0.075; money_3=money_2+money_2*0.05; money_4=money_3+money_3*0.03; money_5=money_4+money_4*0.015; //判断 if(I<100000){ money=I*0.1; }else if(I<=200000) { money=money_1+(I-100000)*0.0075; } else if(I<=400000) { money=money_2+(I-200000)*0.05; } else if(I<=600000) { money=money_1+(I-400000)*0.03; } else if(I<=1000000) { money=money_3+(I-600000)*0.015; } else if(I<=1000000) { money=money_1+(I-1000000)*0.01; } printf("%lf\n",money); } int main(){ testFunction(); } */ //有x,y,z,w四个数字,互异排列 /*练习*/ //有x,y,z,w四个数字,互异排列 /* #include //对程序做优化 void upFunction(){ //定义整型变量 int a=3,b=4,c=5; //初始化变量 for(a=1;a<5;a++){ for(b=1;b<5;b++){ if(b==a){ continue; } for(c=1;c<5;c++){ if(c==a||c==b){ continue; } printf("a:%d\nb:%d\bc:%d\n",a,b,c); } } } } int main(){ upFunction(); } */ /* #include void testFeiunction(){ //定义整型变量 int x,y,z; //分别为三个数字赋值 printf("请分别输入x,y,z的值"); scanf("%d%d%d",&x,&y,&z); //执行三次for循环 for(x=1;x<5;x++){ for(y=1;y<5;y++){ for(z=1;z<5;z++){ //对重复的数进行筛选 if(x!=y&&x!=z&&y!=z){ printf("x:%d\ny:%d\nz:%d\n",x,y,z); } } } } } int main(){ testFeiunction(); } */ /* #include #include */ /*命令行参数*/ /* #include #include #include void testFeiunction(){ int x=','; int y=' '; printf("ispunct:%d\nisapace:%d\n",ispunct(x),isspace(x)); } int main(){ testFeiunction(); } */ /* #define x 10 #define y 9 #define z x=y #define accert(z) int main(){ } */ /* int main(int argc,char *argv[]){ //分别对形参数不同的情况下做判断 if(argc=2){ printf("only have a manager%s\n",argv[1]); } else if(argc>2){ printf("have many manager\n"); }else{ printf("no have manager\n"); } //对参数不同的情况下做判断 } */ /*内存*/ /* #include #include #include void testFeiunction(){ //定义整型变量 //int i; char *pointer,ch[10]; strcpy(ch,"liupeng"); //向内存申请一段空间 pointer=malloc(20 * sizeof(char)); //动态分配内存函数:malloc //判断 if(pointer==NULL){ fprintf(stderr,"you age is error"); } else{ strcpy(pointer,"you age is 18"); } //printf("ch:%s\npointer:%s\n",ch,pointer); pointer=realloc(pointer,100*sizeof(char)); //重新分配内存 //再次执行判断 if(pointer==NULL){ fprintf(stderr,"you age is error"); } else{ strcat(pointer,"you sex is man"); // strcpy(pointer,"you age is 18"); } printf("ch:%s\npointer:%s\n",ch,pointer); } int main(){ testFeiunction(); } */ /*可变形参*/ /* #include #include int testFeiunction(int num,...){ //定义整型变量初始化,计数器 double sum=0; int i; va_list valist; //初始化可变参数列表 va_start(valist,num); //对可变参数进行累加 for(i=0;i //对程序做优化,利用三目运算符?: #define a 1 #define b 0 #define c=((a)>(b))?((a):(b)) int fbnqNum(int i){ //定义计数形参 //对i=1和i=0的特殊情况判断 if(i==0){ return 0; } if(i==1) return 1; } return fbnqNum(i-1)+fbnqNum(i-2); } int main(){ //循环要加入斐波那契数列运算的数 int x; int i; printf("请输入你要循环的数字:\n"); scanf("%d",&x); for(i=0;i #include void pointFunctionX{ C *p=new C;//新建一个指针 if(p==NULL){ return 0; } } void pointFunction(){ //定义一个指针 //向内存申请一段空间 char *p=(char *)malloc(100); //向指针写入内容 strcpy(p,"liupeng"); //释放指针空间 free(p); //判断指针是不是野指针 if(p==NULL){ strcpy(fp,"gnepuil"); } } #include #define tag(n)n##n #error message("你的程序有错误") //#define tag(n) printf("cpy=n"%d",cpy=##n) void exampleFunction(){ #error printf("%d\n",__STDC__); } void testFunction(){ //定义除数与被除数 int x=20;int y=0;int z; if(y==0){ fprintf(stdio,"被除数为0程序退出:\n"); exit(-1); } z=x/y; fprintf(stdio,"取余后为:\n",z); exit(0); /* int cpy18=19; tag(18); */ } // printf("name is" #a "and age is" #b ); //结构体和含有位域的结构体大小比较 //位域的执行次数 /* FILE *fp; char buff[255]; fp=fopen("C:\cfree5\include\1.txt","w+"); fscanf(fp,"%s",buff) //读字符数组首地址 printf("%s\n",buff); fgetc(fp,255,FILE(*fp)); //读取字符数组全部地址 printf("%s\n",buff); */ /* fputc(fp,"这是一个文件"); fprintf("这是一个文件",fp); fclose(fp); */ /* struct struct_2{ int a; int b; int c; }str1; struct struct_3{ int a:1; //允许调用1次 // int b:1; //int c:1; }str2; str2.a=2; printf("str2:%d\n",sizeof(str2.a)); str2.a=3; //第二次调用 printf("str2:%d\n",sizeof(str2.a)); //printf("str1:%d\n",sizeof(str1)); */ /*结构体的两种表示及位域*/ /* struct struct_1 { int a:1; //位域 float b:2; double c:5; /* data */ /* }x,*p; x.a=2; p=&x; p->b=3; printf("a:%d\nb:%lf\n",x.a,p->b); */ /* //初始化野指针 int *p=NULL; //执行判断 if(p){ puts("指针为野指针:\n"); }esle{ puts("指针不为野指针\n"); } /* for(;;){ putchar('a'); } register int a; scanf("%d",&a); printf("format\a"); void *malloc(int); puts("a"); */ } int main(){ testFunction(); } //定义迭代器 /* int iterInval; char string[10]; for(iterInval=0;iterInval<10;iterInval++){ scanf("%s",string); printf("%s",string); } //清除多余的文件输入 fflush(stdin); gets(string); */ /* #pragma message("hello world") void testFunction(){ */ } /*库函数 1:数学函数库:math.h abs():绝对值; acos(),asin(),atan():cos,sin,tan的倒数 exp():指数的次幂 pow(x,y):x的y次幂 log():对数 rand():随机数 sqrt():平方根 sin(),cos(),tan():正弦,余弦,正切 floor:求整 fmod:取余 2:字符库函数:ctype.h 布尔判断:true=>1,false=>0 isalnum():判断字符是不是字符或数字 isalpha():判断字符是不是数字 isdgit():判断字符是不是在1-9之间 3:字符串函数:string.h strcat(x,y):连接字符串 strcmp(x,y):比较字符串 strlen():字符串的长度 tolower():将字符串转换为大写 toupper():将字符串转换为小写 */ #include #include #define MAX(a,b)((a)>(b)?(a):(b)) //定义参数宏 #include //定义字符变量 void testFunction(){ int ch=11; printf("isalnum:%d\nisalpha:%d\nisdgit%d\n\a",isalnum(ch),isalpha(ch), isdigit(ch)); /* if(isalnum(ch)){ printf("True:\n\a"); }else{ printf("False:\n\a"); } */ //定义指针变量 /* int *p1,*p2; printf("请输入a和b的值:\n"); scanf("%d%d",p1,p2); //调用定义的参数宏 printf("MAX:%d\n",MAX(p1,p2)); float a=7; float b=45; printf("%lf\nrand:%d\nsqrt:%lf\nfloor:%lf\n",log10(b),rand(),sqrt(b),floor(b)); printf("pow:%lf\nfmod:%d\n",pow(a,b),fmod(b,a)); printf("exp:%lf\n",exp(a)); printf("acos:%d\n",acos(45)); printf("abs:%d\na:%d\n",abs(a),a); */ } int main(){ testFunction(); } /* #include #define tag(n) printf("cpy"#n"=%d",cpy##n) //"##"标记粘贴符号 int main(void){ int cpy18=19; tag(18); } */ /* #include #define MAX(a,b)((a)>(b)?(a):(b)) //定义参数宏 void testFunction(){ //定义指针变量 int *p1,*p2; printf("请输入a和b的值:\n"); scanf("%d%d",p1,p2); //调用定义的参数宏 printf("MAX:%d\n",MAX(p1,p2)); } int main(){ testFunction(); } */ /*文件输入输出练习*/ #include #include #define SIZE 10 //定义宏常量 //定义结构体 struct struct_type{ char name[10]; int age; int id; char addr[10]; }stu[SIZE]; //初始化结构体成员数组长度 //定义保存结构体输出数据的函数 int main(){ //void save(){ //定义指针 FILE *fp; //计数器 int i=0; //判断文件是否存在 if(fp=fopen("test.txt","wb")==NULL){ printf("文件不存在:\n"); exit(0); } for(i=0;i #include #define tag(n) printf("cpy=n,"%d",##n) /* #define message_for(a,b)\ // "\"宏延续符 printf("name is" #a "and age is"#b ); // "#"字符常量化运算符 */ //void testFunction(){ //de /* int testFunction(void){ //int x,y; message_for("liupeng",18); */ /* FILE *fp; char buff[255] fp=fopen("C:\cfree5\include\1.txt","w+"); fscanf(fp,"%s",buff); //读字符数组首地址 printf("%s\n",buff); fgets(buff,255,(FILE*)fp); //读取字符数组全部地址 printf("%s\n",buff); */ /* /* FILE *fp; fp=fopen("1.txt","w+"); */ /* fputc("这是一个文件",fp); fprintf(fp,"这是一个文件hello world"); fclose(fp); /* struct struct_3{ int a:3; //允许调用1次 // int b:1; //int c:1; }str2; str2.a=2; printf("str2:%d\n",str2.a); str2.a=3; //第二次调用 printf("str2:%d\n",str2.a); //printf("str1:%d\n",sizeof(str1)); */ /* struct struct_2{ int a; int b; int c; }str1; struct struct_3{ int a:1; int b:1; int c:1; }str2; printf("str1:%d\n",sizeof(str1)); printf("str2:%d\n",sizeof(str2)); */ /* struct struct_1 { int a:1; //位域 :数据类型必须相同 int b:2; int c:5; /* data */ /* }x,*p; x.a=2; //构体成员表示1:无指针表示 "." p=&x; // 2:有指针表示 "->" p->b=3; printf("a:%d\nb:%lf\n",x.a,p->b); */ //初始化野指针 //定义一个字符串变量 /* char x="hello world"; printf("%p\n",strstr(x,"lo")); printf("%p\n",strchr(x,'o')); int *p=NULL; //执行判断 if(p){ puts("指针为野指针:\n"); }else{ puts("指针不为野指针\n"); } //对一些数据类型初始化 */ /* char x; int y; int *p; //打印出其默认值 printf("x:%c\ny:%d\n%p\n",x,y,p); /* for(;;){ //无限循环的另类表现方法 putchar('a'); } } */ //} int main(void){ int cpy18=19; tag(18); /* // testFunction(); } /* void forFunction(){ int i; for(i=0;i<10;i++){ for(i=0;i<5;i++){ puts("*"); } } } */ /* function shellFunction{ echo "hello world"; } shellFunction $1; */ /* #line 100 #include #include #include #include #include #include #define X 10 #define Y 9 int main(){ //定义操作文件指针 FILE *fp; int i,j,k,n=3, char str[3][10],temp[3]; //定义指针和二维字符型数组 printf("请输入你向文件传递的内容:\n"); for(i=0;i0) k=j; if(k!=i) strcpy(temp,str[i]); strcpy(str[i],str[k]); strcpy(str[],temp); } //判断文件是不是可以打开 if(fp=fopen("2.txt","w")==NULL){ printf("文件不存在"); exit(0); } //向文件输入内容 for(i=0;iY); printf("%d\n%d\n",CHAR_MAX,b); //lineFx(); } */ /*void*/ /* inline lineFx(){ int *i,*j; volatile i=j; // j=i; j=int(*)i; scanf("%d%d",i,j); //int *p; //p=&i scanf("%d",i) puts("hello world"); printf("%d\n%d\n",__LINE__,i,j); } */ #line 100 #include #include #include #include void lineFx(); int main(){ _complex x=1+3i; //lineFx(); } /*void*/inline lineFx(){ int *i,*j; volatile i=j; // j=i; j=int(*)i; scanf("%d%d",i,j); //int *p; //p=&i scanf("%d",i) puts("hello world"); printf("%d\n%d\n",__LINE__,i,j); } /*文件*/ /* #include #include void fileFunction(){ FILE *in,*out; //定义文件指针及字符型变量 char filename_1[10],filename_2[10],ch; //分别输入文件名 printf("请输入filename_1:\n"); scanf("%s",filename_1); printf("请输fielname_2:\n"); scanf("%s",filename_2); //判读这连个文件是不是存在 if(in=fopen(filename_1,"r")==NULL){ printf("filename_1不存在"); //输入文件 exit(0); } //判读这连个文件是不是存在 if(out=fopen(filename_2,"w")==NULL){ //输出文件 printf("filename_2不存在"); exit(0); } while(!feof(in)){ //文件打开错误 ch=fgetc(in); fputc(ch,out); putchar(ch); } putchar(10); //换行 fclose(in); //关闭输入和输出文件 fclose(out); } int main(){ fileFunction(); } */ /* #include #include int fileFunction(){ //定义文件指针 FILE *fp; //定义字符变量和字符数组 char ch,filename[10]; //getchar(ch); //输入字符 printf("请输入你的文件名:\n"); scanf("%s",&filename); //判断文件是不是存在 if(fp=fopen(filename,"w")==NULL){ printf("文件不存在:\n"); exit(0); } ch=getchar(); printf("请在输入一个字符#\n"); ch=getchar(); while(ch!='#'){ fputc(ch,fp); //写入文件 putchar(ch); ch=getchar(); } fclose(fp); putchar(10); return 0; } int main(){ fileFunction(); } */ //#include /*void fileFunction(){ FILE *fp; //判断文件是否存在 if(fp=fopen("index5.c","r")==NULL){ //打开文件 puts("文件不存在:\n"); exit(0); fclose("index5.c"); //关闭文件 } } int main(){ fileFunction(); } */ //#include /* void enumFunction(){ ); }*/ //enum enum_var{a=1,b=2,c=3,d=4}; /* enum{A=1,B=2,C=3,D=4}enum_var_2; int main(){ //enumFunction(); printf(enum_var_2); } */ /*链表*/ /*#include struct st{ struct st *next; int name[10]; int age; };; int main(){ //建立三个节点,向内存申请指针 struct st a,b,c,*head,*p; //初始化这三个节点 a.name=1;a.age=18; b.name=2;b.age=19; c.name=3;c.age=20; //将头指针指向起始a节点 head=&a; //同理,逐个将前一个节点指向下一个节点 a.next=&b; b.next=&c; c.next=NULL; p=head; //对a,b,c这三个节点输出 do{ printf("a:%s\nb:%d\n",p->name,p->age); p=p->next; }while(p!=NULL); } */ /*结构体练习*/ /*#include void structFunction(){ //定义一个结构体 struct lannuage{ char name; int id; char content[10]; }; //初始化一个二维结构体成员 struct lannuage la[4]={ {"c",1,"include"}, {"python",2,"import"}, {"javascript",3,"alert"}, {"php",4,"echo"} }; //向内存申请一个指针 struct lannuage *p; //遍历这个二维结构体成员 for(p=la;pname,p->id,p->content); } } int main(){ structFunction(); } //#define X "结构体成员1和结构体成员2相等" //定义一个结构体存放学生信息 //void structFunction(){ /*typedef*/ /*struct stu{ char name[10]; float score; int id; }; int main(){ //初始化学生1-2的结构体变量 struct stu student1;struct stu student2; printf("请输入第一个学生的姓名和成绩:\n"); scanf("%s,%lf",&student1.name,&student1.score); printf("请输入第二个学生的成绩和姓名:\n"); scanf("%s,%lf",&student2.name,&student2.score); //对两个结构体进行大小判断 if(student1.score>student2.score){ //输出结构体成员大的值 printf("stu1name:%s\n,stu1score:%lf\n", student1.name,student1.score); }else if(student1.score #include //声明1: /* typedef struct { char name[10]; int age; float money; }structtest1; structtest1 st1; st1.age=18; */ //声明2 struct structtest2{ char name[10]; int age; float money; }st2={"liupeng",18,20.0}; //声明3 /* struct structtest3{ char name[10]; int age; float money; }st3; st3.money=20.0; */ int main() { printf("st2:%d\n",/*st1.name*/st2.age/*st3.money*/); } /* void check(*); //声明检查函数 int i,*p1; //定义指针和计数器 p1=(int *)malloc(5 *sizeof(int));//为指针开辟一块空间 for(i=0;i<5;i++) //循环遍历指定要输入的值 { scanf("%d",&p+i); } check(p1); //引用检查函数 return 0; } //定义检查函数 void check(*p){ int i; //计数器 for(i=0;i<5;i++){ //循环筛选出值<60的 if(p[i]<60){ printf("%d",p[i]); } } */ #include #include #include //定义字符变量 char ch='a'; if(isalnum(ch)){ printf("True:\n\a"); }else{ printf("False:\n\a"); } #define MAX(a,b)((a)>(b)?(a):(b)) //定义参数宏 void testFunction(){ //定义指针变量 int *p1,*p2; printf("请输入a和b的值:\n"); scanf("%d%d",p1,p2); //调用定义的参数宏 printf("MAX:%d\n",MAX(p1,p2)); int a=-1; printf("a:%d\na:%d\n",abs(a),a); } int main(){ testFunction(); } /* #define tag(n) printf("cpy"=#n"%d",cpy##n) int main(void){ int cpy18=19; tag(18); }*/ /*练习*/ #include #define tag(n) printf("cpy=n"%d",cpy=##n) void testFunction(){ int cpy18=19; tag(18); } // printf("name is" #a "and age is" #b ); //结构体和含有位域的结构体大小比较 //位域的执行次数 /* FILE *fp; char buff[255]; fp=fopen("C:\cfree5\include\1.txt","w+"); fscanf(fp,"%s",buff) //读字符数组首地址 printf("%s\n",buff); fgetc(fp,255,FILE(*fp)); //读取字符数组全部地址 printf("%s\n",buff); */ /* fputc(fp,"这是一个文件"); fprintf("这是一个文件",fp); fclose(fp); */ /* struct struct_2{ int a; int b; int c; }str1; struct struct_3{ int a:1; //允许调用1次 // int b:1; //int c:1; }str2; str2.a=2; printf("str2:%d\n",sizeof(str2.a)); str2.a=3; //第二次调用 printf("str2:%d\n",sizeof(str2.a)); //printf("str1:%d\n",sizeof(str1)); */ /*结构体的两种表示及位域*/ /* struct struct_1 { int a:1; //位域 float b:2; double c:5; /* data */ /* }x,*p; x.a=2; p=&x; p->b=3; printf("a:%d\nb:%lf\n",x.a,p->b); */ /* //初始化野指针 int *p=NULL; //执行判断 if(p){ puts("指针为野指针:\n"); }esle{ puts("指针不为野指针\n"); } /* for(;;){ putchar('a'); } register int a; scanf("%d",&a); printf("format\a"); void *malloc(int); puts("a"); */ } int main(){ testFunction(); } //定义迭代器 /* int iterInval; char string[10]; for(iterInval=0;iterInval<10;iterInval++){ scanf("%s",string); printf("%s",string); } //清除多余的文件输入 fflush(stdin); gets(string); */ /* #pragma message("hello world") void testFunction(){ */ }

posted on 2018-08-29 17:18  activecode  阅读(156)  评论(0编辑  收藏  举报

导航