No.4ベストアンサー
- 回答日時:
文字にもちゃんと大小がありますよ。
参照URLをごらんあれ。
#No.2の方が気を使ってくれていますが、Cなら避けて通れない道ですので・・・
具体例を挙げると、
"taro"の場合は {0x74,0x61,0x72,0x6f,0x00}
"jiro"の場合は {0x6a,0x69,0x72,0x6f,0x00}
※ taro[0] == 0x74 jiro[2] == 0x72
という風にchar配列に入力されています。
はい、あとは簡単ですね。
参考URL:http://e-words.jp/p/r-ascii.html
No.6
- 回答日時:
サンプル、並び替える部分は、かなりムダがあるので自分のヤツに置き換えて下さい。
というか、qsortを使えばいいけど・#if 0
"taro", "jiro", "saburo"をアルファベッド順に並び替えて、画面に表示するプログラム
#endif
#include <stdio.h>
#include <string.h>
void main(void){
char *data[]={"taro", "jiro", "saburo"};
char *wk;
int i,flag;
int arraySize = sizeof(data)/sizeof(char*);
do{
flag=0;
for(i=0;i<arraySize-1;i++){
if(strcmp(data[i],data[i+1])>0){
wk =data[i];
data[i] =data[i+1];
data[i+1]=wk;
flag=1;
}
}
}while(flag);
for(i=0;i<arraySize;i++)
printf("%s\n",data[i]);
}
No.5
- 回答日時:
>並び替える部分の…文字には大小がないので
string.h の strcmpを使って文字列の順序(辞書順による大小比較)ができます。
strcmp("taro","jiro")の時
"taro">"jiro"なので関数の値はプラスになります。
つまり、
if(strcmp(data[i],data[j])>0){
/* data[i]がdata[j]より大きかった時の処理 */
}
というようなやり方で、大小の判定と処理ができます。
ちなみに
strcmp(const char *s,const char *t)
で
s>tの時>0
s==tの時==0
s<tの時<0
です。
No.2
- 回答日時:
えーとですね。
文字コードが…
とか
文字の大小比較をする関数が…
とかいう話はしないことにします。
(おそらくそういう話の宿題じゃないと思うので…)
>文字には大小がないので…
で、あれば、文字に対して大小比較ができるように数字を結びつけてあげればいいんですよ。
例えば…
比較用の文字列の配列を作っておく
その配列には
比較用配列[0] = 'a';
比較用配列[1] = 'b';
…
のようにすると、「文字(配列の中身)」と「数字(配列のINDEX)」が結びついたので大小比較ができますよね?
No.1
- 回答日時:
何がどうさっぱりわからないのでしょうか?
少しも考えずに宿題を丸投げする質問は禁止ですよ。
「○○と××について△△と思う。」
など具体的に質問しましょう。
で、学校の宿題なら
・宿題が正解すること
よりも
・問題について考えること
が大切なんだから、自分なりの答えを出せばいいのでは?
単に「正解」を提出したいだけなら、授業前にできた友達のノート写せばいいでしょ。
この回答への補足
ええと、分からない部分を詳しく言うなら、並び替える部分のプログラムが分からないのです。
数字なら大小比較で並び替えることができると思いますが、文字には大小がないのでさっぱりわかりません・・・。
とりあえず、丸投げしているわけではないので、ヒントだけでも教えてください。
配列の仕方はわかっているので、その先に進めるきっかけを何か下さい。
それでは、お願いしますm(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- Ruby VBA 2 2023/01/14 14:14
- Excel(エクセル) Excel 郵便番号順に並び変えたい 同じ番号が複数あるとき 4 2022/04/28 18:35
- その他(プログラミング・Web制作) 大学一年でVBAのプログラミングを勉強しているものです。来週の情報の授業で以下の問題のプログラムを勉 4 2023/01/19 16:15
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 1 2022/06/18 21:20
- C言語・C++・C# C#の問題です。 文字列型の配列 s[100] にキーボードから入力された100文字以内の文字列(単 2 2022/06/22 15:18
- Java Javaの問題なのですが、「3文字以上の英数字文字列を入力し、文字列の中に文字(9)が出てくるまでの 1 2023/06/06 18:55
- その他(プログラミング・Web制作) 変換のプログラムを教えてください。 6 2023/07/01 09:57
- その他(Microsoft Office) 1の行を固定した上でVBAを用いて日付順に自動並べ替え 2 2022/06/06 15:09
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
関数から配列を返すには?
-
配列の要素数に変数を入れたい...
-
C言語において、 配列要素をひ...
-
2番目の最大値を求める
-
define で 配列
-
char型配列をint型に代入するには
-
構造体のextern方法
-
引数に二重配列のある関数について
-
c言語
-
配列のアドレス部
-
規則的な数列の合計。
-
10人分の生徒の英語の点数{32,3...
-
C言語 ファイルの指定された行...
-
VC++2010で配列の要素数を取得...
-
C言語の2次元配列 容量が大き...
-
C言語についてです 5人のテスト...
-
C++DLLからC#へのコールバック...
-
'.GetSize' : 左側がクラス、構...
-
行きがけ順で表示するプログラム
-
c言語 構造体
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数から配列を返すには?
-
配列の要素数に変数を入れたい...
-
define で 配列
-
c言語
-
C#で構造体の配列を持った構造...
-
構造体のextern方法
-
C言語において、 配列要素をひ...
-
C#でのフィボナッチ数列
-
C言語の2次元配列 容量が大き...
-
C#で配列が空かを判定するには?
-
配列のアドレス部
-
char型配列をint型に代入するには
-
C言語の課題が出たのですが自力...
-
2番目の最大値を求める
-
C言語についてです 5人のテスト...
-
C言語から質問です。
-
C言語 ファイルの指定された行...
-
c言語 構造体
-
コンボボックスでデフォルト値...
-
MFCのCArrayを使った二次元配列
おすすめ情報