有以下程序 void ss(char *s,char t) { while(*s) { if(*s==t),s=t-’a’+’A’; s++; }} main() { char str1[100]="abcddfe

admin2010-12-10  25

问题 有以下程序    void ss(char *s,char t)    {  while(*s)    {  if(*s==t),s=t-’a’+’A’;    s++; }}    main()    {  char str1[100]="abcddfefdbd",c=’d’;    ss(str1,c);printf("%s\n",str1);}    程序运行后的输出结果是   

选项 A、ABCDDEFEDBD     
B、abcDDfefDbD
C、abcAAfefAbA     
D、Abcddfefdbd

答案B

解析  在内存中,字符数据以ASCII码存()储,它的存储形式与整数的存储形式类似。C语言中,字符型数据和整型数据之间可以通用,也可以对字符型数据进行算术运算,此时相当于对它们的ASCII码进行算术运算,在本题中,s++相当于s=s+1,即让s指向数组中的下一个元素。
转载请注明原文地址:https://kaotiyun.com/show/R2Pp777K
0

最新回复(0)