📄 fig05_08.c
字号:
/* Fig. 5.8: fig05_08.c
Roll a six-sided die 6000 times */
#include <stdio.h>
#include <stdlib.h>
/* function main begins program execution */
int main( void )
{
int frequency1 = 0; /* rolled 1 counter */
int frequency2 = 0; /* rolled 2 counter */
int frequency3 = 0; /* rolled 3 counter */
int frequency4 = 0; /* rolled 4 counter */
int frequency5 = 0; /* rolled 5 counter */
int frequency6 = 0; /* rolled 6 counter */
int roll; /* roll counter, value 1 to 6000 */
int face; /* represents one roll of the die, value 1 to 6 */
/* loop 6000 times and summarize results */
for ( roll = 1; roll <= 6000; roll++ ) {
face = 1 + rand() % 6; /* random number from 1 to 6 */
/* determine face value and increment appropriate counter */
switch ( face ) {
case 1: /* rolled 1 */
++frequency1;
break;
case 2: /* rolled 2 */
++frequency2;
break;
case 3: /* rolled 3 */
++frequency3;
break;
case 4: /* rolled 4 */
++frequency4;
break;
case 5: /* rolled 5 */
++frequency5;
break;
case 6: /* rolled 6 */
++frequency6;
break; /* optional */
} /* end switch */
} /* end for */
/* display results in tabular format */
printf( "%s%13s\n", "Face", "Frequency" );
printf( " 1%13d\n", frequency1 );
printf( " 2%13d\n", frequency2 );
printf( " 3%13d\n", frequency3 );
printf( " 4%13d\n", frequency4 );
printf( " 5%13d\n", frequency5 );
printf( " 6%13d\n", frequency6 );
return 0; /* indicates successful termination */
} /* end main */
/**************************************************************************
* (C) Copyright 1992-2007 by Deitel & Associates, Inc. and *
* Pearson Education, Inc. All Rights Reserved. *
* *
* DISCLAIMER: The authors and publisher of this book have used their *
* best efforts in preparing the book. These efforts include the *
* development, research, and testing of the theories and programs *
* to determine their effectiveness. The authors and publisher make *
* no warranty of any kind, expressed or implied, with regard to these *
* programs or to the documentation contained in these books. The authors *
* and publisher shall not be liable in any event for incidental or *
* consequential damages in connection with, or arising out of, the *
* furnishing, performance, or use of these programs. *
*************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -