|
第一周 |
第二周 |
第三周 |
第四周 |
第五周 |
第六周 |
第七周 |
第八周 |
第九周 |
第十周 |
第十一周 |
第十二周 |
备注 |
时间(包括上课) |
2小时 |
2小时 |
|
|
|
||||||||
代码量(行) |
98行 |
161行 |
|
|
|
||||||||
博客量(篇) |
1篇 |
2篇 |
|
|
|
||||||||
了解的知识点 |
srand函数
|
四则运算是由简单的十以内的加减法修改而成,在这个工程中我是第一次使用随机数发生器的初始化函数srand,还不太熟练,以后会慢慢修改。
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
void main()
{
char again='y'; //again表示是否终止
int count=0,option; //count存储输入无效数字的次数,option存储输入的菜单项
int sum,cha,ji,shang,k,right=0,wrong=0,num1,num2;
while(again=='y')
{
printf("===========欢迎你进行100以内四则运算练习============\n");
printf("=================================================\n");
printf(" 1.加法练习 \n");
printf(" 2.减法练习 \n");
printf(" 3.乘法练习 \n");
printf(" 4.除法练习 \n");
printf(" 5.退出 \n");
printf("=================================================\n");
printf("请输入1或2或3或4或5,并按回车键进入:"); //显示欢迎界面
scanf("%d",&option);//接受用户的选择
switch(option)
{
case 1: // 加法练习
system("cls");//清屏
printf("=================================================\n");
printf(" 1.加法练习 \n");
printf("=================================================\n");
printf("\n");
srand(time(0));
for (k=1;k<=30;k++){//控制总题数
num1=rand()%100;
num2=rand()%100;
printf("%d+%d=",num1,num2);
scanf("%d",&sum);
if (sum==(num1+num2))
right++;//存储答对的题数
else
wrong++;//存储答错的题数
printf("\n");
}
printf("=================================================\n");
printf("你算正确了%d次,错误了%d次。\n",right,wrong);
break;
case 2: // 减法练习
system("cls");//清屏
printf("=================================================\n");
printf(" 2.减法练习 \n");
printf("=================================================\n");
printf("\n");
srand(time(0));
k=1;
do{
num1=rand()%100;
num2=rand()%100;
}
while (num1<num2);
{
printf("%d - %d =", num1,num2);
scanf("%d",&cha);
printf("\n");
if (cha==(num1-num2))
right++;//存储答对的题数
else
wrong++;//存储答错的题数
k++;
}
while (k<=30);//外循环控制总题数
printf("=================================================\n");
printf("你算正确了%d次,错误了%d次。\n",right,wrong);
break;
case 3: //乘法练习
system("cls");//清屏
printf("=================================================\n");
printf(" 3.乘法练习 \n");
printf("=================================================\n");
printf("\n");
srand(time(0));
for (k=1;k<=30;k++)
{
num1=rand()%100;
num2=rand()%100;
printf("%d*%d=",num1,num2);
scanf("%d",&ji);
if (ji==(num1*num2))
right++;//存储答对的题数
else
wrong++;//存储答错的题数
printf("\n");
}
printf("=================================================\n");
printf("你算正确了%d次,错误了%d次。\n",right,wrong);
break;
case 4://除法练习
system("cls");//清屏
printf("=================================================\n");
printf(" 4.除法练习 \n");
printf("=================================================\n");
printf("\n");
srand(time(0));
k=1;
do{
num1=rand()%100;
num2=rand()%100;
}
while ((num1<num2)&&(num2%num1==0));
{
printf("%d / %d =", num1,num2);
scanf("%d",&shang);
printf("\n");
if (shang==(num1-num2))
right++;//存储答对的题数
else
wrong++;//存储答错的题数
k++;
}
while (k<=30);//外循环控制总题数
printf("=================================================\n");
printf("你算正确了%d次,错误了%d次。\n",right,wrong);
break;
case 5: //退出练习
again='q';
break;
default: //输入了无效的字符
system("cls");//清屏
count++;
again='s';
printf("=================================================\n");
printf("你第%d次输入的数字无效。\n",count);
printf("=================================================\n");
}//switch 语句结束
if (again=='q')
break;
else if (again=='s'){
again='y';
continue;
}
fflush(stdin); //清楚缓存中的数据
printf("=================================================\n");
printf("还想继续练习吗?(y or n)");
scanf("%c",&again);
system("cls");
} //while语句结束
system("cls");//清屏
printf("============================================================\n");
printf("谢谢您进行四则运算练习!\n");
printf("============================================================\n");
}