做网站要学哪些程序,郴州网站建设设计制作,wordpress设置登录可见,wordpress google ad程序要求#xff1a; 1.题目避免重复 2.可定制#xff08;数量\打印方式#xff09; 3.可以一下控制参数 ① 是否有乘除法 ② 是否有括号#xff08;最多支持十个数参与运算#xff09; ③ 数值范围 ④加减有无负数 ⑤除法有无余数 分析#xff1a;① 如果是两个数… 程序要求 1.题目避免重复 2.可定制数量\打印方式 3.可以一下控制参数 ① 是否有乘除法 ② 是否有括号最多支持十个数参与运算 ③ 数值范围 ④加减有无负数 ⑤除法有无余数 分析① 如果是两个数的算式很容易就可以输出但是多个数就有点儿难住我了仔细想想可以将一个算式看作为一个数再加上一个符号和一个数就可以输出但int型和char型无法一起输出于是我就去网上寻找解决办法找到了itoa()函数这个函数可以将int型转为字符型这样就可以将一个算式作为一个string字符串输出具体的用法我是在 http://www.cnblogs.com/lidabo/archive/2012/07/10/2584706.html 和http://blog.csdn.net/lwj103862095/article/details/12005105 这个博客上学习的。将整数型转为字符型后加入括号也就容易了许多我是用这样一个语句加入的str_num1 ( str_num1 )在字符串str_num的左右添加括号。 ② 选择是否添加乘除法首先建立一个存储符号的数组如果不添加乘除就随机生成1或2两个数1代表“”2代表“-”如果添加乘除就随机生成1-4四个数1代表“”2代表“-”3代表“*”4代表“÷” ③数值范围的控制num1 rand() % (max - min 1) min;// 随机生成min-max的整数 ④加减有无负数和除法有无余数这两个功能目前还没有实现我感觉这两个功能的实现如果我一开始用二维数组写这个程序会容易很多现在我用itoa()函数没有写出来不过我会继续改进一下不然我就用二维数组尝试重新写一个。 1 #include iostream2 #include time.h3 #include stdio.h4 #include stdlib.h5 #include math.h6 #include fstream7 #include string8 using namespace std;9 10 11 //数字转换为字符串12 string int_string(int number)13 {14 int temp abs(number);//取绝对值15 char str[100];16 _itoa_s(temp, str, 10); //运用itoa()函数将int型整数转换为字符串 17 string str_ str;18 return str_;19 }20 //算式转换为字符串21 string group(string str1, string str2, char m) // group:算式组合22 {23 string Equation; // equation:算式24 Equation str1 m str2;25 return Equation;26 }27 //生成运算符28 char mark(int opt)29 {30 int opt1, a;31 char symbol[1]; // 符号数组32 if (opt 0)33 {34 opt1 2;35 }36 if (opt 1)37 {38 opt1 4;39 }40 a rand() % opt11; //随机生成1-2或1-4的数随opt的值而定opt意为是否含有乘除法41 if (a 1) symbol[0] ;42 if (a 2) symbol[0] -;43 if (a 3) symbol[0] *;44 if (a 4) symbol[0] ÷;45 return symbol[0];46 }47 //主函数48 void main()49 {50 int num1, num2, minus, remainder;51 int opt, bracket, output, max, min, amount, control, b, c;52 string str_num1, str_num2, value; //数字-字符串53 cout 是否需要包含乘除法1(有)0(没有) endl;54 cin opt; //opt:选择是否含有乘除法55 cout 是否含有括号1有0没有 endl;56 cin bracket;57 cout 是否需要包含负数1有0没有 endl;58 cin minus;59 cout 题目是否要在文件中输出1是0不是 endl;60 cin output;61 cout 请输入数字范围(格式为最小数 空格 最大数) endl;62 cin maxmin;63 cout 请输入出题数量 endl;64 cin amount;65 string equation[100]; //定义数组66 char symbol;67 ofstream fout;68 if (opt 1)69 {70 cout 除法有无余数1有0无 endl;71 cin remainder;72 }73 if ( output 1 )74 {75 fout.open(output.txt);76 fout amount 道四则运算题如下 endl;77 }78 else79 {80 cout amount 道四则运算题如下 endl;81 }82 for (int i 0; iamount; i) //为输出规定题数83 {84 srand((int)time(NULL)); //设置时间种子每次执行种子不同生成不同的随机数85 num1 rand() % (max - min 1) min;// 随机生成min-max的整数86 num2 rand() % (max - min 1) min;// 随机生成min-max的整数87 control rand() % 9 2; //控制是几个数的运算式最多支持10个数的运算式88 symbol mark(opt);89 if (minus 0)90 {91 if (remainder 0)92 {93 str_num1 int_string(num1);94 str_num2 int_string(num2);95 }96 if (remainder 1)//??????????97 {98 str_num1 int_string(num1);99 str_num2 int_string(num2);
100 }
101 }
102 if (minus 1)//??????????????错误
103 {
104 if (remainder 0)
105 {
106 str_num1 int_string(num1);
107 str_num2 int_string(num2);
108 }
109 if (remainder 1)//??????????
110 {
111 str_num1 int_string(num1);
112 str_num2 int_string(num2);
113 }
114 }
115 if (remainder 0)
116 {
117 str_num1 int_string(num1);
118 str_num2 int_string(num2);
119 }
120 equation[i] group(str_num1, str_num2, symbol);
121 if (control 2)
122 {
123 for (; control 2; control--)
124 {
125 symbol mark(opt);
126 str_num1 equation[i];
127 if (bracket 1)
128 {
129 b rand() % 2; //随机生成0-2的数
130 if (b 0) //如果b2就在字符串str_num1的左右加上括号
131 {
132 str_num1 ( str_num1 );
133 }
134 }
135 symbol mark(opt);
136 str_num2 int_string(num2);
137 b rand() % 2;
138 if (b 0)
139 {
140 value str_num1;
141 str_num1 str_num2;
142 str_num2 value;
143 }
144 equation[i] group(str_num1, str_num2, symbol);
145 }
146 }
147 //判断是否重复
148 int repeat 0; //repeat:重复
149 for (c 0; ci; c)
150 {
151 if (equation[c] equation[i])
152 {
153 i i - 1;
154 repeat 1;
155 break;
156 }
157 }
158 if (repeat ! 1)//若不重复则输出
159 {
160 if (output 1)
161 {
162 fout equation[i] endl;
163 }
164 else
165 {
166 cout equation[i] endl;
167 }
168 }
169
170 }
171 if (output 1) //输出到文件
172 {
173 fout.close();
174 }
175 } 程序运行截图 问题错误1num2每次生成的数都一样 错误2无法生成含乘除法的算式 总结通过本次编程我发现我还有太多的不足对于很多编程的基本知识还没有掌握现在想想以前总是对编程不上心得过且过真的很后悔现在大三我一定积极努力努力把编程水平提升上去。 项目计划总结 日期\任务听课/时编写程序/时查阅资料/时日总计/时星期一210.53.5星期二 2 2星期三 314星期四22 4星期五 2.513.5星期六 5 27星期日 周总计415.54.5 24 时间记录日志 日期开始时间结束时间中断时间净时间活动备注3/71400155010100听课软件工程上课 16301730 60编写程序作业 21:002130 30阅读书籍《构建之法》3/819002100 2090查资料编写程序作业3/9 14:25 16:30 15 110编写程序 作业 17:00 18:00 60 查阅资料和阅读构建之法 21:00 22:00 60 编写程序 作业3/1014001550 10100听课软件工程上课 21:202210 50查资料编写程序聊天作业3/1116201830 10120继续编程... 194020:30 50阅读《构建之法》 21:002145 45查阅资料聊天上网查阅资料3/1290011:40 160编程作业 12:20 15:00 160 调试程序 15:00 写博客 缺陷记录日志错误很多没有专门去记录以后会注意养成这个习惯的 日期编号引入阶段排除阶段修复时间问题描述3/71编码编译 3/8 3/9 3/10-3/112编码编译 3/11-3/123编码编译 转载于:https://www.cnblogs.com/me-tts/p/5268771.html