C语言学习与应用课后习题答案 学习任务九参考答案 北邮_第1页
C语言学习与应用课后习题答案 学习任务九参考答案 北邮_第2页
C语言学习与应用课后习题答案 学习任务九参考答案 北邮_第3页
C语言学习与应用课后习题答案 学习任务九参考答案 北邮_第4页
C语言学习与应用课后习题答案 学习任务九参考答案 北邮_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学习任务九参考答案问题9-17.29101.29AB回车问题9-2#include"stdio.h"#include"ctype.h"voidmain(){ charc; while((c=getchar())!='\n') { if(isalpha(c)) { if(c<='z'&&c>='a') { c=(c-'a'+2)%26+'a'; } else { c=(c-'A'+2)%26+'A'; } } putchar(c); } putchar('\n'); getchar();}问题9-3字符串字符串字符串字符串字符串字符串字符串错误字符型数组问题9-4正确错误正确错误问题9-5#include"stdio.h"intslength(char*s){ inti=0;while(s[i]){ i++; } returni;}voidmain(){ chara[80]; gets(a); printf("%d",slength(a)); getchar();}编程训练9-1-1#include"stdio.h"voidmain(){ chars[80]; puts("请输入一个英文句子:"); gets(s); printf("输入的内容是:"); puts(s);//或printf("%s",s);}程序执行结果:输入的内容是:Bestwishforyou.编程训练9-1-2#include"stdio.h"#include"string.h"voidfun1(chars1[],chars2[]){ inti,j; strcpy(s2,s1); for(i=0,j=0;s2[i];i++) if(s2[i]!='') s2[j++]=s2[i]; s2[j]=0;}voidmain(){ charstr1[80],str2[80]; puts("请输入一个英文句子:"); gets(str1); printf("输入的内容是:%s\n",str1); fun1(str1,str2); printf("删除空格后的内容是:%s\n",str2); getchar();}程序执行结果:删除空格后的内容是:Bestwishforyou.编程训练9-1-3#include"stdio.h"voidfun2(chars[],intc[]){ inti; for(i=0;i<=4;i++) c[i]=0; for(i=0;s[i];i++) { switch(s[i]) { case'a':case'A':c[0]++;break; case'e':case'E':c[1]++;break; case'i':case'I':c[2]++;break; case'o':case'O':c[3]++;break; case'u':case'U':c[4]++;break; } }}voidmain(){ charstr1[80]; intc[5],i; puts("请输入一个英文句子:"); gets(str1); printf("输入的内容是:%s\n",str1); fun2(str1,c); printf("a,e,i,o,u元音字母出现的次数分别是:"); for(i=0;i<5;i++) printf("%d",c[i]); getchar();}程序执行结果:a,e,i,o,u元音字母出现的次数分别是:01121编程训练9-1-4#include"stdio.h"#include"ctype.h"voidfun3(chars[],inta[]){ inti,j; for(i=0;i<26;i++) a[i]=0; i=0; while(s[i]) { if(islower(s[i])) a[(s[i]-97)]++; elseif(isupper(s[i])) a[(s[i]-65)]++; i++; }}voidmain(){ charstr1[80]; inti,a[26]; puts("请输入一个英文句子:"); gets(str1); printf("输入的内容是:%s\n",str1); fun3(str1,a); printf("\nabcde...各出现的次数分别是:\n"); for(i=0;i<26;i++) { printf("%c:%d次",i+65,a[i]); if((i+1)%5==0) printf("\n"); } getchar();}程序执行结果:请输入一个英文句子:Bestwishforyou.输入的内容是:Bestwishforyou.abcde...各出现的次数分别是:A:0次B:1次C:0次D:0次E:1次F:1次G:0次H:1次I:1次J:0次K:0次L:0次M:0次N:0次O:2次P:0次Q:0次R:1次S:2次T:1次U:1次V:0次W:1次X:0次Y:1次Z:0次编程训练9-1-5#include"stdio.h"#include"ctype.h"intfun4(char*s){ intin=0,k=0,i=0; while(s[i]) { if(s[i]!='') { if(in==0) { in=1; k=k+1; } } else { if(in==1) { in=0; } } i++; } returnk;}voidmain(){ charstr1[80]; inti; puts("请输入一个英文句子:"); gets(str1); printf("输入的内容是:%s\n",str1); i=fun4(str1); printf("\n单词的个数是:%d\n",i); getchar();}程序执行结果:请输入一个英文句子:Bestwishforyou.输入的内容是:Bestwishforyou.单词的个数是:4任务二对多个字符串的操作编程训练9-2-2#include"stdio.h"#include"string.h"#include"stdlib.h"#defineM30#defineN80voidfout(chara[M][N],intn)//输出字符串的函数{ inti; for(i=0;i<n;i++) puts(a[i]);}voidfun1(chara[M][N],intn){ inti,j; charc[80]; for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) { if(strcmp(a[j],a[j+1])>0) { strcpy(c,a[j]); strcpy(a[j],a[j+1]); strcpy(a[j+1],c); } } }}voidmain(){ chara[M][N]; inti; FILE*fp;//定义文件指针 if((fp=fopen("d:\\信息.txt","r"))==NULL)//打开文件的操作 { printf("打开文件错误!\n"); exit(0); }i=0; while(!feof(fp))//将文件内容读入数组 { fgets(a[i++],80,fp);//读入一行字符串,学号连同姓名 }fclose(fp);//关闭文件 fun1(a,i); fout(a,i);//调用输出函数}程序执行结果:第一行显示:1021113李晓珍第五行显示:1022214郭莹莹第八行显示:1173101杨天伟最后一行显示:1173114王少晨编程训练9-2-3#include"stdio.h"#include"string.h"#include"stdlib.h"#defineM30#defineN80voidfout(chara[M][N],intn)//输出字符串的函数{ inti; for(i=0;i<n;i++) puts(a[i]);}intfun2(chara[M][N],intn,charb[M][N]){ inti,k=0; for(i=0;i<n;i++) { if(a[i][1]=='0') { strcpy(b[k],a[i]); k++; } } returnk;}voidmain(){ chara[M][N],b[M][N]; inti,k; FILE*fp;//定义文件指针 if((fp=fopen("d:\\信息.txt","r"))==NULL)//打开文件的操作 { printf("打开文件错误!\n"); exit(0); }i=0; while(!feof(fp))//将文件内容读入数组 { fgets(a[i++],80,fp);//读入一行字符串,学号连同姓名 }fclose(fp);//关闭文件 k=fun2(a,i,b); fout(b,k);//调用输出函数}程序执行结果:1022114赵敏敏1022216那金1021113李晓珍1021115杨猛1023113卫晓莎1022212徐磊1022214郭莹莹任务测试#include"stdio.h"#include"ctype.h"#include"string.h"voidfun1(chars1[],chars2[]){ inti,j; strcpy(s2,s1); for(i=0,j=0;s2[i];i++) if(s2[i]!='') s2[j++]=s2[i]; s2[j]=0;}voidfun2(chars[],intc[]){ inti; for(i=0;i<=4;i++) c[i]=0; for(i=0;s[i];i++) { switch(s[i]) { case'a':case'A':c[0]++;break; case'e':case'E':c[1]++;break; case'i':case'I':c[2]++;break; case'o':case'O':c[3]++;break; case'u':case'U':c[4]++;break; } }}voidfun3(chars[],inta[]){ inti,j; for(i=0;i<27;i++) a[i]=0; i=0; while(s[i]) { if(islower(s[i])) a[(s[i]-97)]++; else a[(s[i]-65)]++; i++; }}intfun4(char*s){ intin=0,k=0,i=0; while(s[i]) { if(s[i]!='') { if(in==0) { in=1; k=k+1; } } else { if(in==1) { in=0; } } i++; } returnk;}voidmain(){ charstr1[80],str2[80]; intc[5],i,a[26]; puts("请输入一个英文句子:"); gets(str1); printf("输入的内容是:%s\n",str1); fun1(str1,str2); printf("删除空格后的内容是:%s\n",str2); fun2(str1,c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论