ここから本文です

解決済みの質問

C言語についての質問です

clanguagebuntokuさん

C言語についての質問です

C言語の宿題が出たのですが、全然わかりません。
これを出さないと退学になってしまいます!!!!!!!
作ってくれませんか?

1、文字列を入力し、char型配列に格納し、配列内の数字をint型に変換するプログラムを作成する。
2、int型のデータを入力し、一桁ごとに文字型配列に格納するプログラムを作成する。
3、上の1と2をまとめて一つのプログラムを作成し、両方の機能が実行できるようにする。
これらの3つのプログラム内のどこかで、関数、ポインタ、構造体を何らかの形で使うこと。

自分の力ではここまでできました。

#include<stdio.h>
#include <stdlib.h>

void main() {

char str[256];
int inum,*p;
p=&inum;
printf("文字を入力=>");
scanf("%s",&str);
inum=atoi(str);
printf("%d\n",*p);
}

補足
ecl_love_youさん
1番は変換する方法は指定されていませんでしたが、atoiを使うのかなと自分は思いました。
あと、2番の補足で、int型以外の文字が入力された場合は、「0」を変換結果としなければいけないようです。

kaikou_desuさん
課題を提出しないとD判定をもらってしまい進級出来なくなってしまうんです><

この質問は、活躍中のチエリアンに回答をリクエストしました。

違反報告

ベストアンサーに選ばれた回答

ecl_love_youさん

1の回答
int i[100];
char c[100];
fgets(c,100,stdin);
for(j=0;j<100;j++)
i[100]=isdigit(c[i])?c[i]-'0':0;
配列内の数字をint型に変換する方法が書いていなかったので。

2の回答
int i=0,d;
char a[10];
if(scanf("%d",&d)!=1)d=0;
if(d<0)d=-d,a[i++]='-';
if(d)
for(;d>0;d/=10)
a[i++]=d%10+'0';
else
a[i++]='0';
a[i]='\0';
問題文に一桁ごとの順番が書いていなかったので。

  • 違反報告
  • 編集日時:2012/2/14 13:42:32
  • 回答日時:2012/2/14 12:24:21
この質問・回答は役に立ちましたか?
役に立った!

お役立ち度:お役立ち度 1点(5点満点中)1人が役に立つと評価しています。

ベストアンサー以外の回答

(1件中1〜1件)

 

kaikou_desuさん

なんでこれを出さなかった程度で退学になるんだよw
scanf("%s",&str);//文字列を入力するときは&はいりません。
もうちょっと頑張ろう

  • 違反報告
  • 編集日時:2012/2/14 11:51:07
  • 回答日時:2012/2/14 11:50:44

この質問に付けられたタグ

タグとは

知恵ノートとは?

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。

お客様自身の責任と判断で、ご利用ください。

話題のキーワード

[カテゴリ:C言語関連]

ただいまの回答者

01時39分現在

2355
人が回答!!

1時間以内に4,300件の回答が寄せられています。

>>回答ひろばに行く


知恵コレに追加する

閉じる

知恵コレクションをするID/ニックネームを選択し、「追加する」ボタンを押してください。
※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する