《C语言及程序设计》程序阅读——字符数组与字符串处理
2015-05-01 07:52
549 查看
返回:贺老师课程教学链接
阅读下面的程序,说出输出结果。
与此同时,从一些程序中,学习处理问题的方法。
对于理解不了的程序,请通过单步执行的方法进行观察,达到学会的目的。
这一讲涉及的文字处理,是计算机应用广泛的一个领域,相关的方法,应该要学会。
(1)
(2)
(3)
(4)
(5)
(6)当运行下面程序时,从键盘上输入AabD↙,则写出下面程序的运行结果。
(7)运行下面程序输入数据时,分别输入aid和and,输出结果是什么?
(8)
(9)
(10)
(11)
(12)阅读下面的程序,对于不认识的函数,通过搜索引擎学会使用
阅读下面的程序,说出输出结果。
与此同时,从一些程序中,学习处理问题的方法。
对于理解不了的程序,请通过单步执行的方法进行观察,达到学会的目的。
这一讲涉及的文字处理,是计算机应用广泛的一个领域,相关的方法,应该要学会。
(1)
#include <stdio.h> int main( ) { char b[]="ADCEBADEFG"; char *chp=&b[9]; while(--chp>&b[2]) putchar(*chp); putchar('\n'); return 0; }
(2)
#include <stdio.h> int main( ) { char s[]="ABCD",*p; for(p=s+1; p<s+4; p++) printf("%s\n",p); return 0; }
(3)
#include <stdio.h> int main( ) { char ch[]= {"12yue25ri"}; int i,s=0; for(i=0; ch[i]>='0' && ch[i]<='9'; i++) s=10*s+ch[i]-'0'; printf("%d\n",s); return 0; }
(4)
#include <stdio.h> int main( ) { char *s="12134211"; int v[4]= {0,0,0,0} ; int k,i; for(k=0; s[k]; k++) { switch(s[k]) { case '1': i=0;break; case '2': i=1;break; case '3': i=2;break; case '4': i=3;break; } v[i]++; } for(k=0; k<4; k++) printf("%d",v[k]); return 0; }
(5)
#include <stdio.h> int main( ) { int i=0; char a[ ]="abm", b[ ]="aqid", c[10]; while (a[i]!='\0' && b[i]!='\0') { if (a[i]>=b[i]) c[i]=a[i]-32 ; else c[i]=b[i]-32 ; i++; } c[i]='\0'; puts(c); return 0; }
(6)当运行下面程序时,从键盘上输入AabD↙,则写出下面程序的运行结果。
#include <stdio.h> int main( ) { char s[80]; int i=0; gets(s); while (s[i]!='\0') { if (s[i]<='z' && s[i]>='a') s[i]='z'+'a'-s[i] ; i++; } puts(s); return 0; }
(7)运行下面程序输入数据时,分别输入aid和and,输出结果是什么?
#include <stdio.h> int main( ) { int i,s; char s1[100],s2[100]; printf("input string1:\n"); gets(s1); printf("input string2:\n"); gets(s2); i=0; while ((s1[i]==s2[i])&&(s1[i]!='\0')) i++; if ((s1[i]=='\0')&&(s2[i]=='\0')) s=0; else s=s1[i]-s2[i]; printf("%d\n",s); return 0; }
(8)
#include <stdio.h> int main( ) { int n=0; char str[80]="Beijing-China 2008"; printf("%s\n",str); while(str !='\0') str[n++]=(str >='a'&&str <='z')?(str -'a'+'A'):str ; printf("%s\n",str); return 0; }
(9)
#include <stdio.h> #include<string.h> char cchar(char ch) { if (ch>='A'&&ch<='Z') ch=ch-'A'+'a'; return ch; } int main() { char s[]="ABC+abc=defDEF",*p=s; while(*p) { *p=cchar(*p); p++; } printf("%s\n",s); return 0; }
(10)
#include <stdio.h> #include<string.h> void fun(char *p, int n) { char *i,*j,t; for (i=p,j=p+n-1; i<j; i++,j--) { t=*i; *i=*j; *j=t; } } int main() { char s[]="1234567890"; fun(s,strlen(s)); puts(s); return 0; }
(11)
#include <stdio.h> #include<string.h> void del (char *s,char c ) { int i,j; for (i=j=0; s[i]!='\0'; i++) if (s[i]!=c) s[j++]=s[i]; s[j]='\0'; } int main() { char s[]="the c language"; del(s,'a'); puts(s); return 0; }
(12)阅读下面的程序,对于不认识的函数,通过搜索引擎学会使用
#include <stdio.h> #include<string.h> # include "ctype.h" void space(char *str) { int i ,t ; char ts[81]; for(i=0,t=0 ; str[i]!='\0' ; i+=2) if(!isspace(*(str+i))&&(*(str+i)!='a')) ts[t++]=toupper(str[i]) ; ts[t]='\0' ; strcpy(str ,ts) ; } int main( ) { char s[81]= {"abcdefg"} ; space(s); puts(s); return 0; }
相关文章推荐
- 《C语言及程序设计》程序填空——字符数组与字符串处理
- 《C语言及程序设计》实践项目——字符数组与字符串处理
- 第14周 《C语言及程序设计》程序阅读——数组与指针
- C语言:字符数组与字符串处理 实践 1
- 第7周 C语言及程序设计提高例程-28 字符串、字符数组、字符指针
- C语言及程序设计提高例程-28 字符串、字符数组、字符指针
- C语言及程序设计提高例程-30 字符和字符串处理函数
- 《C语言及程序设计》程序阅读——数组与指针
- 第8周 C语言及程序设计提高例程-30 字符和字符串处理函数
- C语言:字符数组与字符串处理 实践 2
- 《C语言及程序设计》程序阅读——字符串数组
- 【转】c语言中的字符数组与字符串
- C语言中的字符数组与字符串
- 字符串处理——删除字符中的abc字符程序
- C语言 字符及字符串处理函数
- C语言提高-28讲: 字符串、字符数组、字符指针
- 整型数组处理算法(十四)不用库函数,用C语言实现将一整型数转换成字符串
- c语言字符数组与字符串的使用详解
- C++编程入门系列之三十三(数组、指针和字符串:用字符数组存放和处理字符串)
- C语言的字符数组(字符串)的定义与初始化