C语言编程 100以内整数加减法

1. 能随机产生20个数,分别组成5个加法算式和5个减法算式(不允许小的数减大的数,计算结果可以超出100),用户输入10个算式的答案。最后,系统给出得分情况(百分制)。并且根据得分,给出相应的鼓励的话。
0~50 分:要加油哦!
60~80分:真不错哦!
80~90分:你真棒!
100分:酷必了!
2. 要求:程序运行的时候,应该有相应的提示信息!

这对于初学者还真不简单;要产生真正的随机数,必须用时间函数初始化随机种子,还有相应提示等。你参考下下面的代码:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()

 int i,a[20],answer,score=0;
 srand(time(NULL));
 for(i=0;i<20;i++)
  a[i]=rand()%90+10;//产生20个10到99间的随机数
 printf("请输入答案,共10道题:\n");
 for(i=0;i<10;i+=2)
 {//取前10个数,组成5个加法题
  printf("%d+%d=",a[i],a[i+1]);
  scanf("%d",&answer);
  if(a[i]+a[i+1]==answer)
   score+=10;//对了加10分
 }
 for(;i<20;i+=2)
 {//取前10个数,组成5个加法题
  if(a[i]>a[i+1])//保证不出现小的数减大的数
   printf("%d-%d=",a[i],a[i+1]);
  else
   printf("%d-%d=",a[i+1],a[i]);
  scanf("%d",&answer);
  if(a[i]-a[i+1]==answer)
   score+=10;//对了加10分
 }
 switch(score){
 case 100:
  printf("酷毙了!!\n");break;
 case 80:
 case 90:
  printf("真棒!\n");break;
 case 60:
 case 70:
  printf("真不错哦!!!\n");break;
 default:
  printf("要加油哦!\n");
 }
 return 0;
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-03-23
srand(time(0));
int a[20];
for(int i=0;i<20;i++)
{
    a[i]=rand()%100;
}
for(int i=10;i<20;i+=2)
{
    if(a[i]<a[i+1])
    {
        int t=a[i];a[i]=a[i+1];a[i+1]=t;
    }
}
int score =0;
for(int i=0;i<20;i+=2)
{
    char c=i<10?'+':'-';
    printf("%d%c%d=几?\n",a[i],c,a[i+1]);
    int x;
    scanf("%d",&x);
    if( (i<10&x=a[i]+a[i+1]) | (i>=10&x=a[i]-a[i+1]) )
    {
        score+=10;
        cout<"回答正确"<<endl;
    }
    else cout<"回答错误"<<endl;
}
switch(score)
{
    case 0:
    case 10:
    case 20:
    case 30:
    case 40:
    case 50:cout<<"要加油哦"<<endl;break;
    case 60:
    case 70:
    case 80:cout<<"真不错哦"<<endl;break;
    case 90:cout<<"你真棒"<<endl;break;
    case 100:cout<<"酷毙了"<<endl;break;
    default:;
}

第2个回答  2015-03-23
#include <stdlib.h>
#include <stdio.h>

int main()
{
int a[20];
int i;

for(i = 0;i < 20;i++)

{
a[i] = rand() % 100;

}
retunr 0;
}
仅此提示到这里,以上只是随机产生20个小于一百的整数并放入a[20]这个数组。后面的应该很容易的!
第3个回答  2015-03-23
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void rnd(int m, int *a, int n)
{
int *p = (int*)malloc(m*sizeof(int));
int i,t;
for(i=0;i<m;i++)p[i]=i;
for(i=0;i<n;i++)
{
t=rand()%m--;
a[i]=p[t];
p[t]=p[m];
}
free(p);
}
int main()
{
int a[20],i;
srand(time(0));
rnd(21,a,20);
for(i=0;i<20;i++)printf("%d ",a[i]);
}
第4个回答  2015-03-23
你太懒了,这么简单,动动手吧追问

不会诶,不是懒

C语言编程:100以内的进位加法和借位减法?
int main(int argc,char *argv[]){ int i,a,b,x,y,n;printf("How many pages...\\n");if(scanf("%d",&n) && n<1)return 0;srand((unsigned)time(NULL));while(n--){ printf("班级: 姓名: 学号: 时间:\\n");for(i=0;i<17;i++){ if(rand()&1){ a=10*(...

C语言编程 100以内整数加减法
a[20],answer,score=0; srand(time(NULL)); for(i=0;i<20;i++) a[i]=rand()%90+10;\/\/产生20个10到99间的随机数 printf("请输入答案,共10道题:\\n"); for(i=0;i<10;i+=2) {\/\/取前10个数,

c语言如何随机100以内的加减乘除算术题
÷4然后表达式:a=随机函数算出的100以内整数b=随机函数算出的100以内整数c=随机运算符的编号然后casecc=1\/\/即加法的时候计算a+bc=2\/\/即减法的时候计算a-b(此时需要判断a和b的大小,如果a

C语言编写小学100以内加减法,急求!!!急急急急急!!!
printf("there are %d Questions,Right %d,Wrong %d.\\nScore is %2.1f.\\n",countRc,score,countRc-score,(float)score\/countRc*100);}

C语言编程 设计一个100以内的整数四则运算测试程序
正确答案是:%d\\n",result);return 0;}int main() {int a,b,t,answer,result;int n = MAXSIZE,yes = 0,no = 0;char op,ops[] = {"+-*\/"};srand((unsigned)time(NULL));while(n--) {op = rand()%4;switch(ops[op]) {case '+' : do {a = rand()%90 + 10;...

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; \/\/产生...

c语言编程 由计算机随机出一道100以内的加减乘除运算之一的计算题_百度...
int main(){int a,b,c,n=5,n1=0,i;srand(time(NULL));for(i=0;i<n;i++){a=rand()%80+1;b=rand()%(100-a)+1;printf("%d+%d=",a,b);scanf("%d",&c);if(c==a+b){printf("\/\\n"); n1++;} else printf("X\\n");} printf("5道题中您共答对了%d道题\\n",n1)...

C语言实现100位以内大数的加法,只用char,数组,循环。
用两个char型字符串就可以了。测出长度,以长的为被加数,短的为加数。举例代码如下:\/\/#include "stdafx.h"\/\/If the vc++6.0, with this line.#include "stdio.h"#include "string.h"int main(void){ char a[102],b[102],*pl,*ps,ll,ls; printf("Please enter 2 integers......

C语言编程——100以内的整数四则运算测试程序设计
timu[i].b = rand() % 100+1;timu[i].op = rand() % 4;if(timu[i].b == 0 && timu[i].op == 3) { f = 0;continue;} else f = 1;switch(timu[i].op) { case 0: timu[i].result = timu[i].a + timu[i].b;break;case 1: timu[i].result = timu[i].a -...

用c语言编程,请输入100以内的整数,求100以内中最大的能够被这个数字整除...
include<stdio.h>int main(){int n=0,i; printf("请输入100以内的整数:"); scanf("%d",&n); for(i=100;i>0;i--) if(i%n==0)break; printf("%d\\n",i) ; return 0;}

相似回答