#include<stdlib.h>
#include<time.h>
#include<stdio.h>
void main()
{
int i ;
int a;
int b;
int c;// 加1 減2 乘3 除4
int m;
int p;
int q;
Loop:srand(time(NULL));//初始化随機數
printf("你要做分數題還是整數題 整數1 分數2\n");
scanf("%d", &m);
switch (m){
case 1:
{
for (i = 0; i < 30; i++)
{
a = rand() % 100;
b = rand() % 100;
c = rand() % 4;
switch (c)
{
case 0:
printf("%d+%d=\n", a, b);
break;
case 1:
printf("%d-%d=\n", a, b);
case 2:
printf("%d*%d=\n", a, b);
case 3:
printf("%d/%d=\n", a, b);
}
}
}
break;
case 2:
p = rand() % 100;
q = rand() % 100;
printf("(%d/%d)+(%d/%d)=\n", a, b, p, q);
printf("(%d/%d)-(%d/%d)=\n", a, b, p, q);
printf("(%d/%d)*(%d/%d)=\n", a, b, p, q);
printf("(%d/%d)/(%d/%d)=\n", a, b, p, q);
}
system("pause");
system("cls");
goto Loop;

因為是出30道題 是以我設定了30 個循環 但是這道題 我并沒有考慮 假分數的問題。
我定義了一個C 變量 來控制四則運算的符号
通過設定了4個變量 來生成 2個分式的分子和分母