#include <stdio.h> #include <stdlib.h> int main( void ) { int i, j, r; for ( i = 0; i < 10; i++ ) { r = rand( ) % 80; for ( j = 0; j < r; j++ ) { putchar( '*' ); } putchar( '\n' ); } return 0; }
#include <stdio.h> #include <stdlib.h> #include <ctype.h> int main( void ) { char str[128]; int i, dot=0, err; double d; long l; printf( "数値を入力しなさい" ); scanf( "%s", str ); /* 先頭文字の判定 */ if ( str[0] == '+' || str[0] == '-' || isdigit( str[0] ) != 0 ) { err = 0; } else if ( str[0] == '.' ) { err = 0; dot++; } else { err = 1; } /* 2文字目以降の判定 */ i = 1; while ( err == 0 && str[i] != '\0' ) { if ( str[i] == '.' ) { dot++; } else if ( isdigit( str[i] ) == 0 ) { err++; } i++; } /* 上記判定でエラーでない場合 */ if ( err == 0 ) { if ( dot == 0 ) { /* 整数 */ l = atol( str ); printf( "整数値入力 = %ld\n", l ); } else if ( dot == 1 ) { /* 浮動小数点数 */ d = atof( str ); printf( "浮動小数点数入力 = %f\n", d ); } else { /* 小数点が複数ある場合 */ printf( "入力エラー\n" ); } } else { printf( "入力エラー\n" ); } return 0; }
▼戻る▼
「初心者のためのポイント学習C言語」 Copyright(c) 2000-2004 TOMOJI All Rights Reserved