📄 main.lst
字号:
C51 COMPILER V6.23a MAIN 11/20/2002 00:48:35 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c LARGE DEBUG OBJECTEXTEND
stmt level source
1 #include <REG52.H> /* special function register declarations */
2 /* for the intended 8051 derivative */
3
4 #include <stdio.h> /* prototype declarations for I/O functions */
5 #include <string.h>
6 #ifdef MONITOR51 /* Debugging with Monitor-51 needs */
char code reserve [3] _at_ 0x23; /* space for serial interrupt if */
#endif /* Stop Exection with Serial Intr. */
9 /* is enabled */
10 /*------------------------------------------------
11 The main C function. Program execution starts
12 here after stack initialization.
13 ------------------------------------------------*/
14 void main (void) {
15 1 char *ptr1[4],str[4][20],temp[20];
16 1 /*定义指针数组、二维字符数组、用于交换的一维字符数组*/
17 1 int i,j;
18 1
19 1 /*------------------------------------------------
20 1 Setup the serial port for 1200 baud at 16MHz.
21 1 ------------------------------------------------*/
22 1 #ifndef MONITOR51
23 1 SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */
24 1 TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */
25 1 TH1 = 221; /* TH1: reload value for 1200 baud @ 16MHz */
26 1 TR1 = 1; /* TR1: timer 1 run */
27 1 TI = 1; /* TI: set TI to send first char of UART */
28 1 #endif
29 1 /*------------------------------------------------
30 1 Note that an embedded program never exits (because
31 1 there is no operating system to return to). It
32 1 must loop and execute forever.
33 1 ------------------------------------------------*/
34 1 for (i=0;i<4;i++)
35 1 gets(str[i],20);/*输入4个字符串*/
36 1 printf("\n") ;
37 1 for(i=0;i<4;i++)
38 1 ptr1[i] = str[i] ;/*将二维字符数组各行的首地址传递给指针数组的各指针*/
39 1 printf("original string:\n");
40 1 for(i=0;i <4;i++)/*按行输出原始各字符串*/
41 1 printf("%s\n",ptr1[i]) ;
42 1 printf("ordinal string:\n");
43 1 for(i=0;i<3;i++)/*冒泡排序*/
44 1 for ( j = 0 ; j <4-i-1; j++)
45 1 if(strcmp(ptr1[j],ptr1[j+1])>0)
46 1 {
47 2 strcpy(temp,ptr1[j]);
48 2 strcpy(ptr1[j],ptr1[j+1]) ;
49 2 strcpy(ptr1[j+1],temp) ;
50 2 }
51 1 for( i=0;i<4;i++)/*输出排序后的字符串*/
52 1 printf("%s\n" , ptr1[i]);
53 1 while (1) {};
54 1 }
55
C51 COMPILER V6.23a MAIN 11/20/2002 00:48:35 PAGE 2
56
57
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 713 ----
CONSTANT SIZE = 41 ----
XDATA SIZE = ---- 116
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -