C语言课程设计---小学生考试系统

/*************************************************************************

功能描述:实现小学生考试。

参数:X:是否进入下一个学生的标志

                 text:学生基本信息。

                 a,b:题干参数。

                 c:正确答案。      

                rightnum:答对题目个数。

               answer:学生答案。

              p:正确率。

             j:算法类型的选择

***********************************************************************/

程序:

#include <stdio.h> #include<stdlib.h> #include<time.h> struct student //定义学生信息 {     int num;   //学号     char name[20]; //姓名 }; int main() {     char X;     struct student text;     int a,b,c,i,t,j;     int rightnum;  //定义回答正确题目数目     int answer;    //回答的答案     double p;     srand(time(0));     while(1)     {         rightnum=0;         printf("请输入4位学号:");         scanf("%d",&text.num);         printf("请输入名字:");         scanf("%s",&text.name[20]);//输入学生的基本信息         for(i=1; i<=10; i++)         {             a=rand()%100+1;             b=rand()%100+1;//两个随机数             j=rand()%4;             if(a<b&&(j==2||j==0))             {                 t=b;                 b=a;                 a=t;             }             if(j==0)                 a=(a/b)*b;

            if(j==1)             {                 c=a+b;                 printf("%d+%d=",a,b);             }         //加法题目             else if(j==2)             {

                c=a-b;                 printf("%d-%d=",a,b);             }       //减法题目             else if(j==3)             {                 c=a*b;                 printf("%dx%d=",a,b);             }      //乘法题目             else             {                 c=a/b;                 printf("%d/%d=",a,b);             }             scanf("%d",&answer);                 if(answer==c)                 {                     printf("Yes");                     rightnum+=1;                 }                 else                     printf("No");                 printf("\n");  //学生答题过程         }         p=rightnum/10.0;         printf("答题正确率:%.2f\n",p);         printf("*********OK*********\n");         printf("输入N或n推出考试,按任意键由下一个学生答题\n");//是否进入下一个学生考试         scanf("%s",&X);         if(X=='N'||X=='n')             break;     }     return 0; }

测试:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值