當前位置:首頁 » 編程語言 » c語言加減乘除隨機10道
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言加減乘除隨機10道

發布時間: 2022-07-23 08:51:30

⑴ 用c++6.0編程 隨機出十道加減乘除四則運算 並判斷答案的對錯 和正確率

這類題目很簡單的。如果你這不是作業的話,我有空幫你寫一個。

#include<iostream>
#define HOW 10
using namespace std;

char get_oper(int n)
{
switch(n)
{
case 0:return '+';
case 1:return '-';
case 2:return '*';
case 3:return '/';
}
}

int main()
{
int num1=0,num2=0,count=0;
float user_answer=0,right_answer=0;
int operators=0; //0:+ 1:- 2:* 3:/

for(int i=1;i<=HOW;i++)
{
//隨機產生運算的數和運算符。
num1=rand();
num2=rand();
operators=rand()%4;

//為了避免除不盡的情況,使除法運算調整為都能整除的。
if(operators==3)num1=num2*(rand()%100);

//輸出算式,等待用戶輸入結果。
cout<<i<<": "<<num1<<get_oper(operators)<<num2<<"=";
cin>>user_answer;

//自動計算出正確的答案,便於檢查用戶輸入的對錯
switch(operators)
{
case 0:right_answer=num1+num2;break;
case 1:right_answer=num1-num2;break;
case 2:right_answer=num1*num2;break;
case 3:right_answer=num1/num2;
}

//檢查用戶輸入的答案
if(right_answer==user_answer)
{
cout<<"RIGHT"<<endl;
count++;
}
else
cout<<"WRONG"<<endl;
}

//輸出統計的數據
cout<<"Right:"<<count<<" Wrong:"<<HOW-count<<" "<<count<<"/"<<HOW<<"="<<count/HOW;

return 0;
}

c語言中如何隨機輸出加減乘除

給定加減乘除的符號,給一個字元串,然後隨機分配一個數,輸出這個數所對應的字元串中的字元。

#include<stdio.h>

main()

{

float a,b;

char c;

printf("請按照這樣的格式輸入zhuan:a(+,-,*,/)b ");

scanf("%f%c%f",&a,&c,&b);

switch(c)

{

case'+': printf("%f",a+b);break;

case'-':printf("%f",a-b);break;

case'*':printf("%f",a*b);break;

case'/':printf("%f",a/b);break;

default:printf("輸入有誤");

}

}

(2)c語言加減乘除隨機10道擴展閱讀:

C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。

⑶ c語言隨機生成10到加減法題 用rand函數

先用srand函數設置隨機數種子,再用rand函數取兩個隨機數作為運算數字,而運算符只有+和-,那麼用rand()%2來得到0~1的隨機數來決定運算符號。

下面演示代碼,隨機生成10道加減題,輸入回答,判斷正確性。

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

#define M 10//題目數量

int main(void)

{

int n=M,num1,num2,s,y,a;

srand(time(NULL));

while(n--)

{

y=rand()%2;

num1=rand();

num2=rand();

if(y)

printf("問題%d:%d+%d=",M-n,num1,num2),s=num1+num2;

else

printf("問題%d:%d-%d=",M-n,num1,num2),s=num1-num2;

scanf("%d",&a);

if(a==s)printf("回答正確! ");

else printf("回答錯誤!正確答案:%d ",s);

}

return 0;

}

⑷ c語言隨機生成10道題目遇見的問題。

if (z[i]<100)
{
if (z[i]>0)
if (x[i]%y[i]==0&&y[i]>0)
你有3個條件 在這里,如果條件符合了,才會出題 。這就限制了你出題的次數。

⑸ C語言編程:隨機出10道100以內的整數加減法算術題。

這個其實很簡單
給你個完整的,我很少寫完整的代碼
#include <stdio.h>
main()
{
int i;
int a[10],b[10],c[10],d[10],e[10];
for(i=0;i<10;i++) //生成題目
{
while(1)
{
a[i]=rand()%100+1; //產生ab隨機數
b[i]=rand()%100+1;
c[i]=rand()%4+1; //產生運算+-*/隨即數
switch(c[i])
{
case 1:d[i]=a[i]+b[i];break;
case 2:d[i]=a[i]-b[i];break;
case 3:d[i]=a[i]*b[i];break;
case 4:while(b[i]==0) //在除法中,要是b是0,重新生成,直到不是0為止
b[i]=rand()%100+1;
d[i]=a[i]%b[i];break; //這里看余數,一般來說,不能整除,不可以
}
if((d[i]<100||d[i]>0)II(c[i]==4&&d[i]!=0)) //判斷d是否在100之內,還有就是除法不能有餘數
break; //滿足條件,生成下一個,不滿足重新來過
}
if(c[i]==4)
d[i]=a[i]/b[i]; //這個算出除法的結果
}
for(i=0;i<10;i++) //出題
{
printf("%d\n%d",i+1,a[i]);
if(c[i]==1)
putchar("+");
if(c[i]==2)
putchar("-");
if(c[i]==3)
putchar("X");
if(c[i]==4)
putchar("/");
printf("%d=",b[i]);
scanf("%d",e[i]);
system("cls");
}
for(i=0;i<10;i++) //最後列印結果
{
printf("%d\n%d",i+1,a[i]);
if(c[i]==1)
putchar("+");
if(c[i]==2)
putchar("-");
if(c[i]==3)
putchar("X");
if(c[i]==4)
putchar("/");
printf("%d=%d",b[i],e[i]);
if(d[i]==e[i])
printf("yes!!\n");
else
printf("NO!! %d\n",d[i]);
}
}

⑹ 用C語言隨機出十個加減乘除運算,判斷對錯給總分

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
voidfun()
{
inta,b,c,s,s1;
srand(time(NULL));
a=rand()%9+1;
b=rand()%9+1;
c=rand()%4+1;
switch(c)
{
case1:s=a+b;printf("%d+%d=",a,b);break;
case2:s=a-b;printf("%d-%d=",a,b);break;
case3:s=a*b;printf("%d*%d=",a,b);break;
case4:s=a;printf("%d/%d=",a*b,b);break;
}
scanf("%d",&s1);
if(s==s1)printf("回答正確! ");
elseprintf("回答錯誤!答案是:%d ",s);
}
intmain()
{
while(1)fun();
return0;
}

⑺ 用c語言編程,隨機出十道100以內的加減乘除,並判斷對錯和正確率

#include#include#includevoidmain(){inta[100];inti,j,n,m,k;for(i=0;ia[m+1]){k=a[m];a[m]=a[m+1];a[m+1]=k;}}}printf("產生的隨機數由小到大排序為:\n");for(j=0;j<100;j++){printf("%d",a[j]);}}這只是簡單的冒泡排序,如果要用選擇排序只需要把排序那塊改一下,如果還不明白+965974742