c言語

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
まりな

c言語

#1

投稿記事 by まりな » 17年前

こんばんは。よろしくおねがいします
①から⑯の文章は、正しく書けているでしょうか?
どこか、一箇所でも誤った箇所や、おかしな部分がありましたら教えていただきたいです。

①10進数58を、8ビットの2進数で表現すると、01000111となる。

②8ビットの2進数10101100を2桁の16進数で表すとABとなる。

③C言語でchar型では-128~+128までの整数を表現することができる。

④C言語の算術演算子には+、*、-、/などがある。

⑤10進数の13を16進数で表すとDである。

⑥B=a++の意味はaとbに代入してからaに1を加えるである。

⑦c言語の論理演算子で[&&]は論理和(OR)を表す。

⑧次のプログラムを実行すると配列の各要素の平均を出力する。

#include <stdio.h>
#define YOUSO 5
main8()
{
int data[YOUSO]=[3,6,5,8,2];
int total;
int*p;

total=0;
for(p=data;p<YOUSO;p++)
total+=*p;

printf("Total=%d,total/YOUSO);
}

⑨次のプログラムを実行すると入力した整数の奇数偶数の判定ができる。
#include<stdio.h>
main()
{
int a;
printof(“整数を入力して下さい。”);
scanf(“%d”,&a);

if(a%2==0)
printf(“奇数です。\n”);
else
printf(“偶数です。\n”);
}

⑩C言語でint型では-32768~+32767までの整数を表現することができる。

⑪10進数の15を2進数で表すと1111である。

⑫2進数の1001を16進数で表すと9である。

⑬b=a&#8212;の意味はaをbに代入してからaから1を引くである。

⑭a=>bの意味はaはbより大きいか等しいである。

⑮次のプログラムを実行すると1から10までの整数の和を出力する。

#include<stdio,h>
#define MAX 5
main()
{
int I,total;
total=1;
for(i=0;I<MAX;i++>){
total+=I;
}
printf(“%d”,total);
}

⑯次のプログラムを実行すると変数cの値は3になる。

#include<stdio,h>
#define MAX 10
main()
{
int a,b,c;

a=1;
b=a++;
c=++b;
}

box

Re:c言語

#2

投稿記事 by box » 17年前

> ①10進数58を、8ビットの2進数で表現すると、01000111となる。

誤っています。

> ②8ビットの2進数10101100を2桁の16進数で表すとABとなる。

誤っています。

> ③C言語でchar型では-128~+128までの整数を表現することができる。

誤っています。

> ④C言語の算術演算子には+、*、-、/などがある。

正しいです。
ところで、「など」は具体的に何を指しますか?

> ⑤10進数の13を16進数で表すとDである。

正しいです。

> ⑥B=a++の意味はaとbに代入してからaに1を加えるである。

誤っています。

> ⑦c言語の論理演算子で[&&]は論理和(OR)を表す。

誤っています。

> ⑧次のプログラムを実行すると配列の各要素の平均を出力する。

コンパイル時にエラーが出ます。したがって、実行できません。

> ⑨次のプログラムを実行すると入力した整数の奇数偶数の判定ができる。

同上

> ⑩C言語でint型では-32768~+32767までの整数を表現することができる。

ある処理系においては、正しいです。
別の、ある処理系においては、もっと広い範囲の整数を表現できます。

> ⑪10進数の15を2進数で表すと1111である。

正しいです。

> ⑫2進数の1001を16進数で表すと9である。

正しいです。

> ⑬b=a&#8212;の意味はaをbに代入してからaから1を引くである。

誤っています。マイナスが1個足りませんか?

> ⑭a=>bの意味はaはbより大きいか等しいである。

誤っています。C言語には=>という演算子はありません。

> ⑮次のプログラムを実行すると1から10までの整数の和を出力する。

コンパイル時にエラーが出ます。したがって、実行できません。

> ⑯次のプログラムを実行すると変数cの値は3になる。

誤っています。

管理人

Re:c言語

#3

投稿記事 by 管理人 » 17年前

十進数と2進数についてですが
(2) 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111 10000
(10)0 1  2  3   4   5   6   7    8    9   10   11   12   13   14   15    16
ですね。つまり2進数の1111を見てみます。
1        1        1        1
↑2の3乗 ↑2の2乗 ↑2の1乗 ↑2の0乗
2の3乗は8ですね、2乗は4、1乗は2、0乗は1です。
8+4+2+1=15
つまり2進数の1111は十進数の15です。上の表で確かめてください。

2の乗数は1,2,4,8,16,32...となっていきますね。
今11を2進数に変えたい時は、

11までに一番近い乗数は8がありますから
8である2の3乗のところは1になります。

11-8=3です。
2の2乗は4です。
3以下に4はありませんから
4である2の2乗のところは0になります。

現在3です。
2の1乗は2です。
2は3以下にあります。
2である2の1乗のところは1になります。

3-2=現在1です。
2の0乗は1です。
1は1以下あります。
1である2の0乗のところは1になります。

これを並べると1011つまり十進数の11です。

筆算で計算する方法もあります。
でも筆算で計算するより理論を覚えたほうが忘れないので良いと思います。

・・・と全部答えているとすごく時間がかかってしまいそうなので、
どうしてもわからない部分があったらまた聞いてください。

閉鎖

“C言語何でも質問掲示板” へ戻る