前提・実現したいこと
与えられた文字列をアルファベット順に並び替えて表示するプログラムを書いていますが、上手く実行できません。
誤っている箇所を教えて頂きたいです。よろしくお願い致します。
発生している問題・エラーメッセージ
Segmentation fault
該当のソースコード
#include <stdio.h> #include <string.h> void sort(int no, char *month){ int temp, i, j; for(i=0; i<no; i++){ for(j=i+1; j<no; j++){ if(strcmp((month+i),(month+j))<0){ temp = *(month+i); *(month+i) = *(month+j); *(month+j) = temp; } } } } int main( void ){ int i, no; char *month[] = {"January", "February", "March","April", "May","June", "July", "August", "September", "October", "November", "December",NULL}; no = sizeof(month)/sizeof(month[0]); sort(no, *month); for(i=0; i<no; i++) printf("month[%d]=%s\n", i, month[i]); return 0; }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/29 18:57