ページ 1 / 1
構造体で入力された文字列の先頭を大文字にする
Posted: 2012年1月07日(土) 11:03
by sa
構造体に入力した文字列を大文字にする方法を教えてください
コード:
#include<stdio.h>
typedef struct{
char moziretu[40];
}PE;
void nyuuryoku(PE *p);
int main(void)
{
int i;
PE a[990];
nyuuryoku(a);
return 0;
}
void nyuuryoku(PE *p)
{
int b;
for(b=0;2>b;b++)
{
printf("文字列を入力\n");
scanf("%s",(p+b)->moziretu);
}
}
このプログラムです
Re: 構造体で入力された文字列の先頭を大文字にする
Posted: 2012年1月07日(土) 11:27
by beatle
構造体などという話をするまえに,ある一文字を大文字にする方法はご存知でしょうか?
コード:
#include <stdio.h>
#include <ctype.h>
int main(void)
{
char c = 'a';
if (islower(c))
{
/* cを大文字にする */
}
printf("\c\n", c);
return 0;
}
Re: 構造体で入力された文字列の先頭を大文字にする
Posted: 2012年1月07日(土) 11:39
by sa
ありがとうございます
それは知ってました。
でも出来れば関数を使わないで行いたいです
関数を使ってやる方法も今の段階ではよくわからないですけど
Re: 構造体で入力された文字列の先頭を大文字にする
Posted: 2012年1月07日(土) 11:48
by box
sa さんが書きました:
でも出来れば関数を使わないで行いたいです
main関数だけで実装したい、ということですか?もしそういうことでしたら、
行ないたいことをすべてmain関数に押し込むだけのことです。
ところで、タイトルと本文とが一致していないです。質問者さんが本当に行ないたいことは、
・文字列の先頭を大文字にする
・文字列を大文字にする
のどちらなんでしょうか。
Re: 構造体で入力された文字列の先頭を大文字にする
Posted: 2012年1月07日(土) 11:51
by sa
nyuuryoku関数の中で行いたいですね
最初の文字を大文字にしたいです
Re: 構造体で入力された文字列の先頭を大文字にする
Posted: 2012年1月07日(土) 12:19
by non
ASCIIだとすると、
char str[]="abcd";
なら
str[0]=str[0]-('a'-'A');
とすればいいです。
Re: 構造体で入力された文字列の先頭を大文字にする
Posted: 2012年1月07日(土) 13:34
by sa
ありがとうございます
おかげさまで解決できました