下の表は東海道新幹線の料金表(=乗車券+自由席特急券)である。
キーボードから乗車駅と下車駅(行き先)をコードで入力し、
料金を求めるプログラムを作成。
00 01 02 03 04 05 06 07 08 09
発着\着駅 | 東京 新横浜 小田原 熱海 三島 新富士 静岡 掛川 浜松 豊橋
============================================================================
00 東京 | -
01 新横浜 | 1320 -
02 小田原 | 3130 1900 -
03 熱海 | 3570 2960 1240 -
04 三島 | 3890 3300 2330 1160 -
05 新富士 | 4930 4300 2790 2420 1320 -
06 静岡 | 5670 4930 3300 2960 1900 1410 -
07 掛川 | 7140 6820 4930 4620 4300 3130 1660 -
08 浜松 | 7560 7140 5350 4930 4620 4300 2230 1320 -
09 豊橋 | 8190 7870 6820 5670 5350 4930 4300 2790 1490 -
問題2.
キーボードから適当な人の姓名を10人分入力し、それをアルファベット順に
並べるプログラムを作成。(大小を区別し、大→小の順)
問題1のプログラム
int main(void) { long int ryokin[10][10]={{},{1320},{3130,1900},{3570,2960,1240},{3890,3300,2330,1160},{4930,4300,2790,2420,1320},{5670,4930,3300,2960,1900,1410},{7140,6820,4930,4620,4300,3130,1660},{7560,7140,5350,4930,4620,4300,2230,1320},{8190,7870,6820,5670,5350,4930,4300,2790,1490}}; int i,j; char s[1],t[1]; printf("乗車駅コードと下車駅コードを入力してください\n"); printf("01:東京 02:新横浜 03:小田原 04:熱海 05:三島 06:新富士 07:静岡 08:掛川 08:浜松 09:豊橋\n"); printf("乗車駅コード:"); scanf("%s",s); strtok(s,"0"); i = atoi(s); printf("下車駅コード:"); scanf("%s", &t); strtok(t,"0"); j = atoi(t); printf(" 料金は"); if(i<=j){printf("%ld円です。",ryokin[j-1][i-1]);} else {printf("%ld円です。",ryokin[i-1][j-1]);} return 0; }
問題2のプログラム
#define MAX 10 int main(void) { int h,i,j; char name[MAX][20],s[128]; for(h =0;hprintf("%d個目の名前: ",h+1); scanf("%s", name[h]); } for(i=0;i for(j=i+1;j if (strcmp(name[i], name[j]) > 0) { strcpy(s, name[i]);strcpy(name[i], name[j]);strcpy(name[j], s); } } } printf("アルファベット順(a to z,大文字 to 小文字)\n"); for(h=0;h return 0; }
0 件のコメント:
コメントを投稿