TA的每日心情 | 开心 2014-6-18 08:29 |
---|
签到天数: 14 天 [LV.3]偶尔看看II
滴水大师
 
- 积分
- 2345
|
题目
解决代码及点评
- <pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"></pre><pre class="cpp" name="code" code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179"><pre class="cpp" name="code" code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"></pre><pre code_snippet_id="91880" snippet_file_name="blog_20131210_3_1755294" class="cpp" name="code">/*
- 68. 在主函数中输入10个不等长的字符串,用另一函数对它们排序。
- 然后在主函数中输出这10个已排好序的字符串,用指针数组完成。
- */
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-
- void f50068(char **pp)
- {
- int a[10]={0};
- for (int i=0;i<10;i++)//将字符串长度挨个存入数组a[10]
- {
- a=strlen(*(pp+i));
- }
- for (int i=0;i<10;i++)//通过比较字符串长度交换指针地址,达到排序目的
- {
- for (int j=0;j<10;j++)
- {
- if (a<a[j])
- {
- char *ptemp;
- ptemp=*(pp+i);
- *(pp+i)=*(pp+j);
- *(pp+j)=ptemp;
- }
- }
- }
- }
- void main()
- {
- char *p[10]={"1234567890","123456789","12345678","1234567","123456","12345","1234","123","12","1"};
-
- for (int i=0;i<10;i++)
- {
- printf("%s\n",*(p+i));
- }
- char **p1=p;
-
- f50068(p1);
-
- for (int i=0;i<10;i++)
- {
- printf("%s\n",*(p+i));
- }
- system("pause");
- }</pre><br><br><br></pre></pre></pre>
|
|