(. 9.16).
.
. 9.16.
ü! .
( ), . /++ strlen().
strlen()
. :
strlen(buf)
strlen ;
buf ;
() .
string.h.
1. .
2. , .
3. ( ) \0.
4. ( ).
n str:
#include <string.h> /* */
char str[10]; /* () str */
int n;/* */
gets(str); /* str*/
n = strlen(str); /* */
str , 10 . gets(str); str ( ) Enter. n = strlen(str); n .
. 9.6.
9.6.
buf | n | i | j | bufi | bufj | |
bufpr | n | i | j | buf[i] | buf[j] |
#include<stdio.h>
#include<stdlib.h>
#include<windows.h>
#include<conio.h>
main()
{
int i,j,n; /* */
char bufmes[50], buf[30], bufpr; /* */
clrscr();
CharToOem(" ", bufmes);
printf("\n %s \n", bufmes); /* */
gets(buf); /* */
|
|
n = strlen(buf); /* */
CharToOem(" \n\n \n", bufmes);
printf("%s %s",bufmes, buf); /* */
for (i=0; i< n-1; i++)/* . */
for(j=i+1; j<n; j++) /* . */
if(buf[i] > buf[j])
{
bufpr= buf[i];
buf[i]= buf[j];
buf[j]=bufpr;
}
CharToOem(" \n\n \n", bufmes);
printf("%s %s", bufmes, buf);/* */
getch();
}
.
9.11.
.
(EditBuf). (EditSortBuf).
, . .
.
#include<stdio.h>
#include<stdlib.h>
#include <string.h>
void TVrDlgClient::BNClickedOk()
{
// INSERT>> Your code here.
int i,j,n; /* */
char buf[30], bufpr; /* */
EditBuf->GetText(buf,30); /* */
n = strlen(buf); /* */
for (i=0; i< n-1; i++)/* . */
for(j=i+1; j<n; j++) /* . */
if(buf[i] > buf[j])
{
bufpr= buf[i];
buf[i]= buf[j];
buf[j]=bufpr;
}
EditSortBuf->SetText(buf); /* */
}
.
9.12.