文档详情

实验七 字符串.doc

发布:2017-11-14约6.94千字共11页下载文档
文本预览下载声明
实验七 实验目的 1.熟练掌握字条数组的定义、初始化和元素引用 2.熟练掌握字符串的存储和操作 3.继续使用字符输入输出函数getchar()和putchar() 实验内容 1.调试,输入一个以回车结束的字符串(少于80个字符),将它的内容颠倒过来再输出。如”ABCD”颠倒为”DCBA”。 源程序(有错误的程序) #includestdio.h void main() { int i,k,tmp; char str[]; printf(“input a string:”); i=0; while((str[i]=getchar())!=’\n’) i++; str[i]=’\0’; k=i-1; for(i=0;ik;i++) { /*调试时设置断点*/ tmp=str[i]; str[i]=str[k]; str[k]=tmp; k++; } /*调试时设置断点*/ for(i=0;str[i]!=’\0’;i++) putchar(str[i]); } 运行结果(改正后程序的运行结果) welcome to you! !uoy ot emoclew #includestdio.h void main() { int i,k,tmp; char str[50]; printf(input a string:); i=0; while((str[i]=getchar())!=\n) i++; str[i]=\0; k=i-1; for(i=0;ik;i++) tmp=str[i]; str[i]=str[k]; str[k]=tmp; k--; } /*调试时设置断点*/ for(i=0;str[i]!=\0;i++) putchar(str[i]); } #include stdio.h int main(int argc, char *argv[]) { char c[81]; int i; for(i=0;;i++) { scanf(%c,c[i]); if(c[i]==\n) break; } for(--i;i=0;i--) printf(%c,c[i]); printf(\n); return 0; } 2.编程,输入一个以回车结束的字符串(少于80个字符),先输出其中的小写英文字母、空格和感叹号!,然后统计出字符的个数。 输入输出示例: thow hare young! how are you! n=12 #includestdio.h void main() { int i,b=0,d=0,=0,k =0,n; char str[80],c; gets(str); for(i=0;(c=str[i])!=\0;i++) { if(str[i]64str[i]91) continue; else if (str[i]96str[i]123) b++, printf(%c,str[i]); else if(str[i]47str[i]58) d++, printf(%c,str[i]); else if(str[i]==32) s++, printf(%c,str[i]); else k++, printf(%c,str[i]); } printf(\nn=%d\n,b+d+s+k); } #includestdio.h void main() { int i,k; char str[100],tmp; printf(input a string:); for(i=0;i80;i++) { scanf(%c,str[i]); if(97=str[i]str[i]=122)printf(%c,str[i]); if(str[i]== )printf( ); if(str[i]==!)printf(%c,str[i]); } printf(%d,i); } 3.编程,输入一个正整数n(n=5),再输入n行字符(每个字符串少于80个字符),分别统计其中的大写英文字母、小
显示全部
相似文档