c语言100行代码,哪个大神能帮我现编100行c语言代码啊谢了!!!!100行现编的 爱问知识人...

什么代码都可以?

我有个小学数学 -运算的,你可参考下:

#include

#include

#include

struct node

{

? ?int num1;

? ?char ope;

? ?int num2;

? ?int res;

? ?struct node *next;

};

void ?generator(struct node *head) //用随机产10道计算题并通过链表保存数据

{

? ?int c;

? ?int count = 0;

? ?srand((unsigned)time(NULL));

? ?while(count != 10)

? ?{

? ? ? ?int a = rand() % 51; //产随机数

? ? ? ?int b = rand() % 51;

? ? ? ?struct node *data = (struct node *) malloc(sizeof(struct node)); ?//申请存储节点

? ? ? ?int i = rand() % 2;

? ? ? ?if(i == 0 && b > a)

? ? ? ?{

? ? ? ? ? ?data->num1 = b;

? ? ? ? ? ?data->ope = '-';

? ? ? ? ? ?data->num2 = a;

? ? ? ? ? ?data->res = b - a;

? ? ? ?}

? ? ? ?else if(i == 0 && a > b)

? ? ? ?{

? ? ? ? ? ?data->num1 = a;

? ? ? ? ? ?data->ope = '-';

? ? ? ? ? ?data->num2 = b;

? ? ? ? ? ?data->res = a - b;

? ? ? ?}

? ? ? ?else if(i == 1 && a num1 = a;

? ? ? ? ? ?data->ope = ' ';

? ? ? ? ? ?data->num2 = b - a;

? ? ? ? ? ?data->res = b;

? ? ? ?}

? ? ? ?else if(i == 1 && a > b)

? ? ? ?{

? ? ? ? ? ?data->num1 = b;

? ? ? ? ? ?data->ope = ' ';

? ? ? ? ? ?data->num2 = a - b;

? ? ? ? ? ?data->res = a;

? ? ? ?}

? ? ? ?else if(a == b)

? ? ? ? ? ?continue;

? ? ? ?data->next = head->next;

? ? ? ?head->next = data;

? ? ? ?count ;

? ?}

}

void test(struct node *head) //测试程序

{

? ?int count, que_num = 1;

? ?int sum = 0;

? ?int result;

? ?struct node *data = head->next;

? ?while(data != NULL)

? ?{

? ? ? ?count = 3;

? ? ? ?printf("第%d题是: ?%d%c%d

", ?que_num , data->num1 , data->ope , data->num2);

? ? ? ?scanf("%d", &result);

? ? ? ?while(result != data->res && count != 1)

? ? ? ?{

? ? ? ? ? ?count--;

? ? ? ? ? ?printf("请输入答案,你有 %d次机会

", count);

? ? ? ? ? ?scanf("%d", &result);

? ? ? ?}

? ? ? ?if(count == 3)

? ? ? ?{

? ? ? ? ? ?printf("恭喜你,答对了!

");

? ? ? ? ? ?sum = sum 10 ;

? ? ? ?}

? ? ? ?else if(count == 2)

? ? ? ?{

? ? ? ? ? ?printf("恭喜你,答对了!

");

? ? ? ? ? ?sum = sum 7;

? ? ? ?}

? ? ? ?else if(count == 1 && result == data->res)

? ? ? ?{

? ? ? ? ? ?printf("恭喜你,答对了!

");

? ? ? ? ? ?sum = sum 5;

? ? ? ?}

? ? ? ?else if(count == 1 && result != data->res)

? ? ? ? ? ?printf("本题正确答案:%d%c%d=%d

" , data->num1 , data->ope , data->num2 , data->res);

? ? ? ?data = data->next;

? ?}

? ?printf("你的得分为:%d

" , sum);

? ?printf("—————————

");

? ?if(sum >= 90)

? ? ? ?printf("优!

");

? ?else if(sum >= 80)

? ? ? ?printf("良!

");

? ?else if(sum >= 70)

? ? ? ?printf("一般!

");

? ?else if(sum >= 60)

? ? ? ?printf("及格!

");

? ?else

? ? ? ?printf("不及格!

");

? ?printf("—————————

");

}

int main()

{

? ?struct node *head = ( struct node *)malloc(sizeof(struct node));

? ?head->next = NULL;

? ?generator(head);

? ?test(head);

}。

全部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值