STEP1。day6のC言語の配列と基本的な訓練の文字列

文字列の知識のレビューの配列である今日、知識の内容の配列を体験するためにいくつかの短い演習を投稿:

1.バブルソート

書式#include <stdio.hに>

#define N 10

INTメイン(int型ARGC、CONSTのchar *のARGV [])
{
int型I、J。
INT ARR [N]、TEP。
printf( "入力を喜ば10の番号:\ nを");
用(i = 0; iがN <、iは++){
のprintf( "[%dを] ARR:"、I)。
scanf関数( "%dの"、およびARR [I])。
}
のprintf( "ARRは:")。
用(i = 0; iがN <、iは++){
のprintf( "%dの"、ARR [I])。
}
のprintf( "の\ n");

用(i = 0; iがN-1 <; iは++){
ため(J = 0; J <のNi-1; J ++){
IF(ARR [J]> [J + 1] ARR)
{
TEPの=のARR [J ];
ARR [J] =のARR [J + 1]。
ARR [J + 1] = TEP。
}
}
}
のprintf( "ソートARRがあります:");
用(i = 0; iがN <、iは++){
のprintf( "%dの"、ARR [I])。
}
のprintf( "の\ n");
0を返します。
}

2.選択ソート(中間変数の交換を使用しません)

書式#include <stdio.hに>

#define N 10

INTメイン(int型ARGC、CONSTのchar *のARGV [])
{
int型I、J。
int型のインデックス。
INT ARR [N]。

printf( "入力を喜ば10の番号:\ nを");
用(i = 0; iがN <、iは++){
のprintf( "[%dを] ARR:"、I)。
scanf関数( "%dの"、およびARR [I])。
}

printf( "編曲は次のとおりです。");
用(i = 0; iがN <、iは++)
のprintf( "%dの"、ARR [I])。
printf( "\ n")を。


用(i = 0; iがN <、iは++){
インデックス= I。
用(J = I + 1、J <N; J ++){
IF(ARR [インデックス]> ARR [J])
インデックス= J。
}
もし{(インデックス= I!)
ARR [I] + = ARR [インデックス]。
ARR [インデックス] = ARR [I] - [インデックス] ARR。
ARR [I] =のARR [I] - [インデックス] ARR。
}
}

printf(「ソート編曲は次のとおりです。」);

用(i = 0; iがN <、iは++)
のprintf( "%dの"、ARR [I])。
printf( "\ n")を。

0を返します。
}

3.複製のstrcpyのstrcmp STRCAT STRLEN(不意質量機能に参加し、関数ポインタを使用します)

書式#include <stdio.hに>
する#include <string.hの>

#define N 50
のintレンス(チャー*のSRC)
{
iが0 = int型。
しばらく(SRC [I] = '\ 0'!)
I ++;
私は返します。
}

ボイドCPY(CHAR * DEST、チャー*のSRC){
iが0 = int型。
一方、(!SRC [I] = '\ 0'){
DEST [I] = SRC [I]。
I ++;
}
DEST [I] = '\ 0'。

printf( "!コピー完全にdestがある:%sの\ nを"、DEST)。
}

空猫(のchar *のDEST、するchar * SRC){
int型I = 0、J = 0;
int型のk;
しばらく(SRC [I] = '\ 0'!)
I ++;
しばらく(!DEST [J] = '\ 0')
J ++;
(; K <iは、++ kはK = 0)ため
DEST [J + K] = SRC [K]。
DEST [J + K] = '\ 0'。

printf( "!猫完全にdestがある:%sの\ nを"、DEST)。
}

INT比較(CHAR * DEST、チャー* SRC)は{
I =レンス(SRC)をint型。
用(i = 0; iは<レンス(SRC)を、iは++)
IF(SRC [I]> DEST [i])と
リターン-1。
それ以外の場合(SRC [I] <DEST [i])と
リターン1。
他を
続けます。
0を返します。
}


INTメイン(int型ARGC、CONSTのchar *のARGV [])
{
チャーSRC [20]。
チャーDEST [N]。

printf( "SRC strの入力をしてください:");
// scanf関数( "%sの"、SRC); //无法如数空格符
(SRC)を取得します。
printf( "DEST strの入力をしてください:");
// scanf関数( "%sの"、DEST)。
(DEST)を取得します。

// printfの( "CMP結果:%dは\ nを"、(DEST、SRC)を比較)。
// printfの( "函数验证比較:%dは\ n"を、strcmpの(DEST、SRC));

CPY //(DEST、SRC);
//のprintf( "認証機能CPのn - :%S \ N-"、strcpyの(DEST、SRC));
//
// printf関数は、(「SRCの文字長は次のとおりです。%D \ nは"レンス(SRC));
//のprintf("認証機能レンス:strlenを%dは\ nを」、 (SRC));

CAT //(DEST、SRC);
のprintf( "CAT検証機能:%S \ N-"、STRCAT(DEST、SRC));
戻り0;
}

おすすめ

転載: www.cnblogs.com/huiji12321/p/11123381.html