c言語プログラミングでアルファベットの大文字を順番に表示するプログラムで
char x;
for(x='A';x<=___;x++)
[
printf(”___”,x);
]
下線部に何をいれたら良いですか?

A 回答 (3件)

とりあえず、なんでもいいから入れてコンパイルしてみたら?


それで間違ったらマニュアルを参照。この繰り返しが大事。
    • good
    • 0

最初 'Z'


次 %c\n
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2017/05/14 23:56

ちゃんと授業はサボらず出席しましょうね。


入門レベルですよ。


た、いうことで授業では多分○貰えないパターンを。

最初の下線は
'A' + 26
とか。
2つ目の方は…余地があまりありませんが……
%c¥n
とか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aと関連する良く見られている質問

Qchar c = 'a'; char h[1] = c; エラー

char型のものを char[]型に代入したいです。

char c = 'a';
char h[1] = c;

として、

h[0] は \x97
h[1] は \x00

にしたいです。
型変換の方法を教えてください。

Aベストアンサー

とりあえず、確認を。

C では、'a'の表す値は 0x61 = 97 であって、 \x97 ではないと思います。
(\xnnn を、十六進数の意味に取りましたが、あってますでしょうか?
この場合、C では通常 0xnnn のように書くと思います。)
ので、 これは 0x61 のことをおっしゃっていると仮定します。

> char h[1] = c;
っと、これではたぶんコンパイルが通りません。

char h[1] = {c};

のように、配列であることを明示して代入してください。
この式では、前半でh という名前の、*長さ1 の* char の配列変数を確保します。
後半で、その中を初期化しています。
添え字は 0 からはじまるので、この場合、h[0] に c の内容が代入されます。
1個しか場所を確保していないので、 h[1] の位置のデータは内容が不定です。
文字列として h を扱いたいのであれば、 C の文字列には終端として 0 が必要ですから、
char c = 'a';
char h[2] = { c, '\0'};

のような書き方が必要になります。
これで、お望みのデータになると思います。

とりあえず、確認を。

C では、'a'の表す値は 0x61 = 97 であって、 \x97 ではないと思います。
(\xnnn を、十六進数の意味に取りましたが、あってますでしょうか?
この場合、C では通常 0xnnn のように書くと思います。)
ので、 これは 0x61 のことをおっしゃっていると仮定します。

> char h[1] = c;
っと、これではたぶんコンパイルが通りません。

char h[1] = {c};

のように、配列であることを明示して代入してください。
この式では、前半でh という名前の、*長さ1 の* char の配列変数...続きを読む

Q{x = x>y ? x:y; return x;}

#include <iostream>
using namespace std;

inline int max(int x, int y){x = x>y ? x:y; return x;}

int main()
{
int num1, num2, ans;

cout << "2つの整数を入力して。\n";
cin >> num1 >> num2;

ans = max(num1, num2);

cout << "最大値は" << ans << "です。\n";

return 0;
}
の{x = x>y ? x:y; return x;}の部分の意味が解りません。

Aベストアンサー

inline int max(int x, int y){x = x>y ? x:y; return x;}
これを普通に関数で書くと

int max(int x, int y)
{
x = x>y ? x:y;
return x;
}

です。

x = 部分は右辺の結果が代入されます。これはわかりますよね。
x>y?x:y;
と書くと?より左にある条件式を判定し、その結果が真である場合は:で区切られた左側の値を、偽である場合は右の値を帰します。
x>yが真であればxを、偽であればyを返します。
それが、左辺値xに代入され、関数の戻り値として帰ります。

従って、2つの値をこの関数に入れると、大きいほうの値が帰ることになります。

Qchar *str; と char* str;

char *str; と char* str;
どっちも同じことを意味しているんですか?

Aベストアンサー

同じことを指している、というのは、先の回答の通りです。

また、ひとつの宣言で変数を複数宣言したときに、char* str という表記は間違い
易いじゃないか、ということが言われているのも事実です。実際、いろいろな C のソースを
見ていても、まずアスタリスクを型につけて書くのは、まずお目にかかれません。

ただ C++ では、char* str という宣言も良く使われています。

C++ に限らずオブジェクト指向の言語は、強く型を意識するので、「文字のポインタ型」と
いう意味で、まとめて書く方が馴染むのでしょう。ちなみにそういう風な人たちは

char *str1, *str2;

とは、書けない体になっています。

char* str1;
char* str2;


変数の宣言だと、C に慣れていれば、char* str というのはちょっと違和感があるのは
私も分かりますが、関数のプロトタイプ宣言だと、どちらの方がすっきりしますか?

extern char *memcpy(char *, const char *);

extern char* memcpy(char*, const char*);


# まあ、どっちが正しい、っていうんじゃ無いんですよね

同じことを指している、というのは、先の回答の通りです。

また、ひとつの宣言で変数を複数宣言したときに、char* str という表記は間違い
易いじゃないか、ということが言われているのも事実です。実際、いろいろな C のソースを
見ていても、まずアスタリスクを型につけて書くのは、まずお目にかかれません。

ただ C++ では、char* str という宣言も良く使われています。

C++ に限らずオブジェクト指向の言語は、強く型を意識するので、「文字のポインタ型」と
いう意味で、まとめて書く方が馴染む...続きを読む

Qthix.x = x; について(this.x とxの違い)

this xとxの指しているものは違うのだと思いますが、
それぞれが指しているものの違いについて教えてください。
public class aaa
{
//(中略)
public bbb (int x)
{
this.x = x;
}
}

Aベストアンサー

どっちの変数名も「x」だから悩ましいだけ。

メンバ変数の「x」を「Member_Value」に名前を変え、引数として与えられた仮変数の「x」を「Function_Paramater」に名前を変えてみましょう。

public class aaa
{
//(中略)
public bbb (int Function_Paramater)
{
this.Member_Value = Function_Paramater;
}
}
はい、こうなりました。

何か疑問点や質問はありますか?

Qc言語のプログラミングの問題でキーボードからアルファベット大文字を入力すると、Aから入力した文字まで

c言語のプログラミングの問題でキーボードからアルファベット大文字を入力すると、Aから入力した文字までのアルファベットを順番に表示するプログラムを作成できる方お願いします

Aベストアンサー

こういうのも
#include <stdio.h>

int main()
{
char table[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int i = 0;
int c;

c = getchar();
do
{
printf("%c", table[i]);
} while(table[i++] != c);

return 0;
}

文字コードが非連続でも大丈夫バージョン。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報