|
发表于 2014-8-22 22:46:26
|
显示全部楼层
- #include <stdio.h>
- int main()
- {
- char a[]="I am a student.",b[20]; //定义字符数组
- int i;
- for (i=0;*(a+i)!='\0';i++)
- *(b+14-i)=*(a+i); //将a[i]的值赋给b[i]
-
- *(b+15)='\0'; //在b数组的有效字符之后加'\0',做为字符串结束标志
- printf("string a is:%s\n",a);//输出a数组中全部有效字符
- printf("string b is:");
- for (i=0;b[i]!='\0';i++)
- printf("%c",b[i]); //逐个输出b数组中全部有效字符
- printf("\n");
- return 0;
- }
- /*
- //也可以这样实现上面的程序
- #include <stdio.h>
- #include <string.h>
- int main()
- {
- const char arr[] = "I am a student.";
- int arrLen = strlen(arr)-1;
- for(; arrLen>=0; arrLen--)
- {
- printf("%c",arr[arrLen]);
- }
- return 0;
- }
- //也许你是想单词不变
- #include <stdio.h>
- #include <string.h>
- void PrinfWord(char *arrWord,int index,int len)
- {
- for(int i=0;i<len;i++)
- {
- printf("%c",arrWord[i+index]);
- }
- }
- int main()
- {
- char arr[] = "I am a student.";
- int arrLen = strlen(arr);
- int idxLen=1;
- while(arrLen-- >=0)
- {
- if(arr[arrLen] == ' ')
- {
- PrinfWord(arr,arrLen+1,idxLen);
- idxLen=0;
- }
- else if(arrLen == 0)
- {
- PrinfWord(arr,arrLen,idxLen);
- idxLen=0;
- }
- idxLen++;
- }
- }
- */
复制代码
:lol:自己动手也写了写 |
|