C言語なら俺に聞け 158

■ このスレッドは過去ログ倉庫に格納されています
2021/12/25(土) 12:11:46.61ID:xxeaCAplM
!extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを2行書き込んでください)
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/

C17
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4713.pdf

C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf

C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html

C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/

JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/

※前スレ
C言語なら俺に聞け 157
https://mevius.5ch.net/test/read.cgi/tech/1624846971/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2021/12/25(土) 12:43:13.14ID:Ktk9audT0
C2x ドラフト
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2731.pdf
2021/12/25(土) 17:06:51.38ID:yFln3WYH0
規格が一杯あるけれど、普通はどれを使うの?
2021/12/25(土) 18:23:03.37ID:1RbqwiRd0
>>3
C89=K&R2
2021/12/25(土) 20:24:45.71ID:SzBCpv2O0
考え方によるのでどれが普通ということはないと思う。

たとえば C は古いシステムの保守のためと割り切るなら C89 にこだわる理由になるが、
C++ との連携を考えるなら C17 を選択する理由になる。
(C++20 が参照する C の規格は ISO/IEC 9899:2018 のことなので。)

私自身は C99 を基本としつつ C99 がどうしても使えない事情があるなら C89 を選択することはありうるが、
C99 で問題ない場面であえて C89 を使ったりはしない。
C11 以降の機能が各プロジェクトで特に有用で処理系やツールチェインに不安がないならそれを選ぶこともある。
2021/12/25(土) 22:11:33.64ID:UngnJYXc0
C++が使えるならC++でいいと思うんだがな。
C99以降が使えるけどC++が使えない|使っちゃダメなシチュエーションてのがあまり思いつかない。
2021/12/25(土) 22:18:46.07ID:yFln3WYH0
Linuxカーネル
2021/12/25(土) 22:35:15.30ID:UngnJYXc0
個々のプロジェクトのポリシーとしてならそれこそPLの好みでいくらでもあるだろうけど。
でもLinuxてC99使ってた?
2021/12/28(火) 07:02:41.51ID:p+qHklGW0
C99か。。。。
変数を途中で定義できたりforスコープは有難いんだけど
そういうのはC++があるからCにはあんまり求めない

わざわざCなときは枯れたところを使いたい
すると半ば無意識にC89になってる
2021/12/28(火) 11:07:50.33ID:3O27DpuF0
途中宣言なんてブロック内でしか使いたくない
2021/12/28(火) 11:12:07.15ID:p+qHklGW0
ん? いや、ブロック内でしかできんだろ
12デフォルトの名無しさん (ワッチョイ 8f5f-j5Xv)
垢版 |
2021/12/29(水) 11:02:54.88ID:gOGJDejA0
1/6までc magazineが1冊55円でセールやってるぞ。
13デフォルトの名無しさん (ワッチョイ 9db3-ass7)
垢版 |
2021/12/29(水) 12:26:40.10ID:TemGM5eX0
>>12
サンクス!
2021/12/29(水) 13:44:32.51ID:Uqmbe8qT0
アマゾンにあるな。55円か。俺のアマゾンポイントが56なのでポイントで1冊ただで買えるが。うーん。どれを買うか。
15デフォルトの名無しさん (ワッチョイ b101-j5Xv)
垢版 |
2021/12/29(水) 13:47:59.87ID:wwN1RbRp0
消費税が6円必要だぞ。
2021/12/29(水) 13:49:14.80ID:TemGM5eX0
アマゾンは全部税込み表示だよね?
2021/12/29(水) 13:50:10.27ID:Uqmbe8qT0
>>15
いや、これ、税込み55円のようだよ。本体50円で消費税5円なのではないかな。
更にアマゾンで Kindle unlimited の人は全部0円。
18デフォルトの名無しさん (ワッチョイ b101-j5Xv)
垢版 |
2021/12/29(水) 13:51:51.39ID:wwN1RbRp0
じゃあ真面目にどれを買うべきか話し合うか。
19デフォルトの名無しさん (ワッチョイ b101-j5Xv)
垢版 |
2021/12/29(水) 13:54:15.86ID:wwN1RbRp0
バックナンバー一覧を見つけた。
https://gist.github.com/tk3/a605e6d39d8309c7ce72e9141d461845
2021/12/29(水) 14:22:36.20ID:Uqmbe8qT0
全部セットで1万ぐらいで買えたりしたら一々選ばんでいいのだがな。
全部読み切れないとは思うが。(てか今となっては読む価値のない記事が多いかな・・・)
2021/12/29(水) 15:02:06.61ID:ARRRFsJF0
200冊ぐらいか
11000円で買えるぞ
2021/12/29(水) 16:45:16.84ID:TemGM5eX0
まだ読んでないkindle本あるのに・・・16冊購入(´・ω・`)
2021/12/29(水) 19:45:04.56ID:vNNNNQH+0
はるか昔の bit の小話にて人間の「感覚の受信→解釈→意識・自覚」の一連の情報処理にはタイムラグがある、という「受動意識仮説」がすでに提示されていましたが
その小話が載っている bit って何年何月でしたっけ?

意識は幻想か?―「私」の謎を解く受動意識仮説
https://www.youtube.com/watch?v=Ox8gJEIe5Ac

準備運動電位
https://ja.wikipedia.org/wiki/%E3%83%99%E3%83%B3%E3%82%B8%E3%83%A3%E3%83%9F%E3%83%B3%E3%83%BB%E3%83%AA%E3%83%99%E3%83%83%E3%83%88
2021/12/29(水) 22:11:44.70ID:Uqmbe8qT0
検索していたらこんなページ見つけた。しかしここでの販売は6冊単位で600円なので1冊100円。

C Magazine セット販売
https://tatsu-zine.com/magazines/cmagazine
25デフォルトの名無しさん (ワッチョイ b101-j5Xv)
垢版 |
2021/12/29(水) 22:57:46.13ID:wwN1RbRp0
C MAGAZINE 2005・2月号 特集2 グラフ理論入門
2021/12/30(木) 23:16:11.26ID:4vPJ4A600
質問

#include <stdio.h>
int main (void){

char str[100];
int i,j,n,m,a,b;
char A[100];
scanf("%d %d %s",&n, &m, A);

for(a=0;a<n;a++){
j=0;
for(b=0;b<m;b++){
scanf("%s",str);
for(i=0;str[i];i++) {
if(str[i]== *A) {
j++;
}
}
}
printf("%d\n",j);
}
return 0;
}


っていうコードを書いてみたんだけど、思うような出力が出ない
どうすればいいか教えてくださいお願い
以下問題
https://i.imgur.com/6TnIX9K.jpg
2021/12/30(木) 23:17:59.44ID:4vPJ4A600
問題がうまくはれてなかった
https://i.imgur.com/e5ViyH2.jpg
2021/12/31(金) 00:46:48.51ID:TgisNlKh0
なんで、N, M, KのKを文字列として受けてるの?
29デフォルトの名無しさん (ワッチョイ 9aad-xRAa)
垢版 |
2021/12/31(金) 05:03:08.34ID:4SEvuYeQ0
>>26>>27
paizaの問題って公開しちゃいけないと思ったが、その問題は大丈夫なのか?
30デフォルトの名無しさん (ワッチョイ 9aad-xRAa)
垢版 |
2021/12/31(金) 05:08:21.26ID:4SEvuYeQ0
>>26
これって入力は全て数値だから scanf() のフォーマットは全て %d で良い筈だが、何故文字列として受け取ろうとしている個所があるのか?
31デフォルトの名無しさん (ワッチョイ 9aad-xRAa)
垢版 |
2021/12/31(金) 05:14:19.43ID:4SEvuYeQ0
>>27
公開しても良い問題だったね。しかも問題のURLをコピーしたりも出来る。
だったら画像貼ってないで素直にURL貼った方が良い。スマホでWi-Fi使わず見てたりしたらパケット余計に使うことになるからね。(だから専ブラではいきなり画像をダウンロードしない設定にしてあったりして、見られる率が下がる)。

URLはこれな。
https://paiza.jp/works/mondai/c_rank_level_up_problems/c_rank_for_boss
2021/12/31(金) 09:00:32.53ID:VTzS4kbc0
とりあえずfgetsとstrtok_rを使って、
一行まるごと読み込んで、読み込んだ一行分の文字列を空白で分割して表示するだけのプログラムを書いてみたらどうかね
2021/12/31(金) 09:38:23.12ID:AQXYYOVd0
>>30
俺の地元のルールだと、
22 22 22 ...(25回22を選ぶ)
みたいなピックしてkが2だと50ポイントもらえるルールだったから文字列として扱わんといかんかとおもてた
34デフォルトの名無しさん (ワッチョイ 8b01-h6Ia)
垢版 |
2021/12/31(金) 11:20:32.87ID:2Zk/vij+0
3[山田、山田、佐藤、田中、・・・]
7[・・・]
12[・・・]
というような表を作っておけば良いのでは?
2021/12/31(金) 21:31:16.10ID:AQXYYOVd0
https://paiza.jp/works/mondai/c_rank_level_up_problems/c_rank_sort_boss
これ教えて
2022/01/01(土) 00:39:58.19ID:gOXFnTf60
何が分からんかぐらい書きなよ
2022/01/01(土) 01:18:03.81ID:1OHQMytp0
何がわからんかも分からん
方針もわからん
2022/01/02(日) 13:30:00.29ID:o9R7ffl70
>>35
ソートするだけだよ。
まずは入力を配列変数に貯め込んでそれに対して並べ替えをする。
ソートする部分を自作するのが面倒なら qsort() 使えば良いんじゃないかな。
(この辺はC言語使わない方が楽かも知れないが)
2022/01/03(月) 21:40:15.76ID:qalXVoDK0
入力データの1行目を読みデータ件数を取得する
データ件数にあわせて配列を確保する
(予めMax値の配列を用意するのでも構わない)
2行目から最終行まで順に読み込み、配列に格納する
問題文の財産評価ルールに従いデータをソートする
並び変わったデータを出力する
2022/01/06(木) 15:33:37.60ID:soGE7KAW0
文字配列なんですが

char str[] = { 'A', 'B', 'C' };

↑のstrにはnull文字は付加されないという認識で合ってますか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況