版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《程序设计基础:C上一章知识 本讲教学 数据“交换”的方法。数据“交换”的方法。 本章授课标准库与非标准字符处标准语言补 本章授课标准库与非标准字符处标准语言补 转计标准库与转计日 数输输游 文开 读游 标准库与非标准#include<stdio.h>#include<stdlib.h>#include<math.h>int{intx=-printf("x的绝对值是:%d\nabs(x/*printf是标准库函数*/printf("x绝对值开根号的结果是:%.2f\n",sqrt(abs(x)));system("PAUSE");/*system是标准库函数*/return} 标准库与非标准assert.h:包含定义assertcomplex.h(C99新增):ctype.h(ANSIC)数(如isalpha和toascii等) inttype.h(C99):包含大量有关printf、scanf 标准库与非标准方便地使用C 标准库与非标准 stdbool.h(C99):包含4stdbool.h(C99):包含4个宏:bool、true 标准库与非标准 wchar.hC95 本章授课标准库与非标准字符处标准语言补 字符 字符例11-2编写一个对字符串进行加密的函数,形
字符#include #include#include
#includechar*encrypt(constchar*src,char{charc=*src;assert(src&&dest);{cif(isalphac&&isupper*dest++=tolower(c);elseif(isalpha(c)&&islower(c))*dest++=*dest++=}while('\0'!=return} int{
字符charsrc[MAX_LENGTH]=chardest[MAX_LENGTH];encrypt(src,dest);
printf" return} 本章授课标准库与非标准字符处标准语言补 字符串处字符串指:字符串字面值或以’\0’为最后一个例11-3字符数组:charstr1
字符数组:charstr2‘a’,b 字符串处 字符串处例11-4编一个函数,从给定字符串(由形式参#include#include<stdlib.h>#include<assert.h>#include<string.h>#include#defineMAX_LENGTH1000char*erase(char*src,constchar{charchar*tmpDest=malloc(strlen(src)+1);tmpDest[0]='\0';returnword=strtok(src, 字符串处while(NULL!={strcat(tmpDest,word=strtok(NULL,}strcpy(src,tmpDest);returnsrc;}int{erase(src,",.");return0;},charsrc[MAX_LENGTH]="Thisisanerase(src,",.");return0;},字符串处例11-5有5#include<stdio.h>#include #include#include<string.h>#include<memory.h>#defineMAX_LENGTH100voidsortCountry(char(*country)[MAX_LENGTH],int{inti=intj=char*c=malloc(MAX_LENGTH+1);if(0>=countryCount||MAX_LENGTH<={} 字符串处for(i=0;i<countryCount-1;{for(j=0;j<countryCount-1-i;{if(strcmp(country[j],country[j+1])>{strcpy(c,country[j]);strcpy(country[j+1],c);}}}} 字符串处int{charcountry[][MAX_LENGTH]={ NewGuinea","Colombia","Kyrgyzstan",intcountryCount=inti=sortCountry(&country[0countryCount*排序*/for(i=0;i<countryCount;i++)return0;} 本章授课标准库与非标准字符处标准语言补 文所谓“文件”一般是指 在外部介质上数据的 文件的打开与关、虽然读、虽然读者可以利用FILE类型定义变量,但有通过fopen成的FILE型的对象才是有意 文件的打开与关例11-6设有FILE*fp;,且c盘根 a.txt文件,文件内容为“Thisisan 文件 文件例11-7请在c盘根 的文本文件,其内容设置为:Thisiaanexample,givenbyWenbin.。#include #include #include#include #includeintmain(void){FILE*fp=fopen("c:\\a.txt","r");longintpos;char*str=errno=0;{printf(stderr,"openc:\a.txtfailed.Errorcode:%s\n",return-} 文件fscanf(fp,"%s",fseek(fp,8L,SEEK_SET);pos=f if(-1L==pos&&errno<={fprintf(stderr,"返回c:\a.txt的指针当 位置失败.Errorcode:return-}printf("指针当前位置为:%ld\n",pos);fscanf(fp"%s"str); fseek(fp,20L,SEEK_SET);fscanf(fp,"%s",str); fseek(fp,pos,SEEK_SET);fscanf(fp,"%s",str); fclose(fp);/*关闭文件*/return}
文件的读文件 文件的读例11-8c盘根 下有一名为a.txt的文件,
98899987 文件的读#include<stdio.h>#include<stdlib.h>#include<string.h>#defineHEAD_OF_FORM"学 #defineSTU_NO_LENGTH#defineNAME_LENGTHtypedefcharname[NAME_LENGTH];floatmathScore;floatengScore;floatliteraScore; 文件的读int{inti=0;intj=char*fileName=STUDENT_SCOREFILE*fp=fopen(fileName,errno={fprintf(stderr,"openc:\a.txtfailed.Errorcode:%s\n",return-}fseek(fp,sizeof(HEAD_OF_FORM),i=while(!feof(fp)&&i<{fscanf(fp,"%s%s%f%f%f\n",stuScores[i].stuNo,stuScores[i].name,} }文件的读for(j=0;j<i;{}return0;} 文件的写 文件的写例11-9将 文件的写#include<stdio.h>#include<stdlib.h>#include<string.h>#defineHEAD_OF_FORM #defineADDRESS_LENGTH#defineMOBILE_LENGTH typedefstruct{charcharmobileNo[MOBILE_LENGTH]; 文件的写int{inti=char*fileNamec:\\contact.txt*写入的文件名 _COUNT]={"Yiying","Yiying'saddress",{"Yiying","Yiying'saddress", intCount=FILE*fp=fopen(fileName,errno={fprintf(stderr,"Creat/openc:\a.txtfailed.Errorcode:%s\n",return-} 文件的写fprintf(fp,"%s\n",for(i=0;i Count;{ }return0;} 文件的标准输入输
文件的标准输入输#includee1#include#include
与printf、fscanf与scanfint{charstr1[MAX_LENGTH]= ocharfprintf(stdout,由fprintf输出的:%s\n",fscanf(stdin,"%s",str2);printf("你刚才输入的字符串为:%s\nscanf("%s",printf("你刚才输入的字符串为:%s\nstr2);return} 本章授课标准库与非标准字符处标准语言补 标准语言“标准语言补充”的标准库对应的头文件有: 标准语言补充--iso646.h 标准语言补充--例11-11阅读下面的程序,体会“助记符”。#include<stdio.h>#include<stdlib.h>#include<iso646.h>int{inta=3,b=4,c=if(aandprintf 的值为:%d\n"aandc=abitorprintf("abitorb的值为:%d\n"c);sstem"PAUSE"return} 标准语言补充--stdarg.h中包含的函数为编程人员提供了 标准语言补充--例11-12请编写一个可变参数的函数,能对多#include<stdio.h>#include<stdlib.h>voidsum(char*string,intnum_args,{ints=0;va_listap;inti;va_start(ap,for(i=0;i<num_args;i++)s+=va_arg(ap,int);printf(string,s);} 标准语言补充--intmain{sum("Thesumof10+15is%d.\n",2,10,sum("Thesumof10+15+13is%d.\n",3,10,15,return} 取的当前的可变参数的类型。这个宏首先将ap取的当前的可变参数的类型。这个宏首先将apva_end:这个宏有一个参数:ap。在用va_argstdarg.hva_list:该类型用于局部状态变量(ap),用该宏用于对ap进行初始化。在标准C语言中,其主 标准语言补充--ANSIC注意
类型形式参数1 标准语言补充-- 标准语言补充--例11-13阅读下面的程序,体会bool型变量的#include<stdio.h>#include<stdlib.h>#include<stdbool.h>intmain(void){boolx=booly;printf("x=%d\n",printf("y=%d\n",printf("y=%d\n",y= return},标准语言补充--size_t,是sizeof参数:结构体类 标准语言补充--#includsd.>#includ<stdli.h>#inlde<stdf.LL{strutst{charintint{inta[]={1,2,3,int*p=NULL;ptrdiff_tnum=0;size_tst=0;p=q=num=q-st=
int*q=printf("sizeof(num)=%d,num=%d\n",st,num);printf("offsetof(structTest,y)=%d\n",offsetof(structTest,y)); return0;}
标准语言补充-- 标准语言补充-- 标准语言补充-- 标准语言补充-- 标准语言补充-- cluds #includelud<tdi.h#includeint{int8_tx=intmax_tmv=intptr_tptr=printf("x的宽度为:%d\n"
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 常用学生期末鉴定评语模板50句
- 宣传消防的横幅标语(165句)
- 2024五人合伙旅游开发项目合作协议模板3篇
- 广播稿大全范文
- 2025年山东济南市济阳区所属单位引进急需紧缺专业人才4人管理单位笔试遴选500模拟题附带答案详解
- 2025年山东泰安宁阳县事业单位招聘人员拟聘用历年管理单位笔试遴选500模拟题附带答案详解
- 2025年山东新华健康科技限公司(省属国企)校园招聘125人管理单位笔试遴选500模拟题附带答案详解
- 2025年山东德州市陵城区事业单位“人才回引”历年管理单位笔试遴选500模拟题附带答案详解
- 打麦机课程设计
- 师德标兵个人主要事迹(5篇)
- 【8地RJ期末】安徽省芜湖市无为市2023-2024学年八年级上学期期末地理试题(含解析)
- 分布式光伏场站管理制度-运行管理
- 初中数学培优补差总结3篇
- 医疗救护合作协议
- 开题报告:数智技术赋能的师范生深度学习过程画像与实践路径优化研究
- 第六单元《质量与密度》3.密度的测量(分层训练)(解析版)
- 《无人机飞行操控技术(微课版)》全套教学课件
- 2023-2024学年广东省深圳高级中学七年级(上)期末历史试卷
- 病例封存应急预案
- GB/T 44800-2024太阳能光热发电站储热/传热用工作介质技术要求熔融盐
- 2024年人教版初二道德与法治上册期末考试卷(附答案)
评论
0/150
提交评论