求一个c++大神给我讲解一些问题

作者&投稿:公狐 (若有异议请与网页底部的电邮联系)
求一个大神帮我做一个C++程序~

明天帮你吧,今天晚了

回答不了,我帮不了,一般的人回答不了,所以看了也就走了,希望别人能帮到你

//这里使用头文件和命名空间,为了使用cout不解释
#include <iostream>
using namespace std;
int n = 0;//全局变量,用来保存共有多少方案
int rest[7][7];//全局变量,用来保存保安哪几天可以上班
/*这是一个函数用来交换两个int的值
//这个函数也可以不用指针,而用引用,改为这样:
void swap(int &a, int &b) {
int m;
m = a;
a = b;
b = m;
}
*/
void swap(int *a, int *b) {
int m;
m = *a;
*a = *b;
*b = m;
}
void perm(int list[], int k, int m) {
//变量定义写到下面的for里面去了,此处注释掉
//int i, j;
/*以下是递归的基本情况
 *当k为7时,0-6七天全部安排完毕,结束递归*/
if (k > m) {
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 7; j++) {
//第i个保安没有检查到可以在list[i]这天上班
//这种方案不可行,不用再输出了
if (rest[i][j] == 0)
return;
/*这两句没什么卵用去掉吧
if (rest[i][j] != list[i])
continue;
*/
//第i个保安可以在list[i]这天上班
//可以的,然后检查下一个保安
if (rest[i][j] == list[i])
break;
}
}
//7个保安检查完毕,全部可行
//接下来执行输出
n++;//进行解决方案个数的统计,输出-start
cout << "Solution:" << n << endl;
cout << "赵 钱 孙 李 周 吴 陈" << endl;
cout << "===============================================" << endl;
for (int i = 0; i <= m; i++) {
switch (list[i]) {
case 1:
cout << "星期一 "; break;
case 2:
cout << "星期二 "; break;
case 3:
cout << "星期三 "; break;
case 4:
cout << "星期四 "; break;
case 5:
cout << "星期五 "; break;
case 6:
cout << "星期六 "; break;
case 7:
cout << "星期日 "; break;
default:
break;
}
}
cout << endl;//输出合适的解决方案-end
}else{
for (int i = k; i <= m; i++){
//进行休假日互换,将从k到m之间没有安排过的星期安排给第k个保安list[k]
swap(list[k], list[i]);
//嵌套以实现所有可能方案的生成
//递归安排第k+1个保安的工作星期?是这段代码的核心!
perm(list, k + 1, m);
//还原默认休假日,以进行下一方案的生成
//也就是准备将下一个未安排的星期给第k个保安
swap(list[k], list[i]);
}
}
}

int main()
{
char name[7][7] = { "赵", "钱", "孙","李","周","吴","陈" };
int list[] = { 1,2,3,4,5,6,7 };

//这里没有用到k啊,去掉了
//i,j的定义放在了for循环的内部
//int i, j, k;

//用来输入7位保安?“星期?可以上班”的数据
for (int i = 0; i < 7; i++){
cout << "
请输入" << name[i] << "姓保安选择的休假日
(以数字0并按回车结束当前关于保安的输入!)
";
for (int j = 0; j < 7; j++){
cin >> rest[i][j];
if (rest[i][j] == 0)
break;
}
}
cout << "

";
perm(list, 0, 6);
cout << "共" << n << "种排班方式 


";
return 0;
}
//报酬10元 绝对诚信 今天晚上我们老师要检查程序 很急!!!
//对你有帮助,如果你看完了,请看我的ID。




各位大神给我编一个c语言程序呗, 编写一个函数求长度为10类型为浮点型...
\/\/其中max是最大数,min是最小数,s是和,如果报错不能运行可以问我

这是一个C语言搜索的问题。求大神给我讲解下这段代码。
define max(a,b) a>b?a:b \/\/判断a、b的大小,返回大的 int a[25],n,m,s=0;void dfs(int num,int sum)\/\/函数功能大概是找出输入的n个数里面,小于等于m 的数中最大的数 { if(num>n)return;\/\/如果num 大于输入的 n 结束 if(sum<=m)\/\/如果sum 小于 输入的m 进入 { s=max(...

大一C语言求大神给我通俗地讲一下形参和实参各是什么意思,有啥区别...
形式参数,是变量,m, n 是 add()的形参。add(1,2);实际参数,是函数调用提供的值, 1, 2 是add()的实参。

C free-4 大神给我一个代码 可以运行 请大师解释
第一行预编译,不写第一行的话下面printf函数不能使用;接下来是main函数,程序开始的地方;然后定义了一个整型变量a,并赋值为1;然后令a=a+20,a变成了21;然后a++,等同于a=a+1,a变成了22;然后输出ASCII码表中编号为22的字符,C语言中字符是使用整数存储的,所以用%c也可以输出a,不过输出...

请大神给我一段代码 用c语言且用*打出字母H
include <stdio.h>int main() {char *strH[7] = {"* *","* *","* *","***","* *","* *","* *"};int i;for(i = 0; i < 7; i++)puts(strH[i]);return 0;}

请大神给我一段代码 用c语言打出字母“X”“H”“M”“W“”Y“”Z...
include<stdio.h> void main(){ printf("“X”“H”“M”“W“”Y“”Z"");}好了,就这样。

求C语言大神给我讲解下下图中的c=(a-=a-5),(a=b,b+3); 的运算过程以及...
首先,请搞明白一种表达式叫逗号表达式,就是将一组语句连着写出来,中间用逗号分隔;表达式的取值是最后一个语句的取值。c=(a-=a-5),(a=b,b+3); 这个语句是一个逗号表达式,前面的语句是c=(a-=a-5);后面的语句是(a=b,b+3);后面的语句也是个逗号表达式,整个表达式的值没有处理,所以不...

一个C语言程序问题,看晕了,求大神详解
第四次循环: 条件1不成立。条件2成立,x=5。执行continue。忽略3,执行下一个循环。第五次循环: 条件1不成立。条件2不成立,执行3,x=2, y=4 第六次循环: 条件1不成立。条件2成立,x=7。执行contine。 忽略3,执行下一个循环。第七次循环: 条件1不成立。条件2不成立。执行3,x=4, y...

跪求大神给我用c语言编程,用51单片机控制3个按键和3个发光二极管,设置...
最容易理解的写法:设置b1、b2、b3、reset四个按钮(按下为0)和对应的LED1、LED2、LED3三个灯(点亮为0)int reset, b1,b2,b3,LED1,LED2,LED3;while(1){(读取reset) if(reset==0) { LED1=LED2=LED3=1; read=1; } if(read==1) { (读取b1, b2, b3)...

戦乙女スィア1-4中文字幕 跪求大神给我发过来
如果你也在寻找这个资源,可能已经在网上搜索过,例如在mag爱么明过住适香修且随net上,有人分享了一个链接,其btih码为9a7c60f7fe21e8effd50832a617047cdb499ba93。不过,请注意,版权问题需要遵守,确保在合法渠道获取并分享内容。如果你已经找到了这个资源,希望你能将其分享给需要的人,共同欣赏...

北碚区13071895132: 我刚学C++有很多问题都不太懂,这是一个C++的程序,哪位高手能帮我讲解一下,请详细一点: -
颜胜巴美: #include <iostream.h>包含库文件,这是C++标准输入输出函数库. #define N 100 宏定义,在程序中N始终为100.int main() 表示main函数的返回值为整型,所以后面要有一个“return 0;”,表示返回数值0;如果改成void main (), 那么最...

北碚区13071895132: C++题目,求大神解答 -
颜胜巴美: 4. B 关键是这句代码:d += d++,计算结果为9.赋值语句先执行右端的运算,d++,计算值为5,但是并不改变d本身的值,再计算 d+=5时,就是4+5=9.另外,如果代码为d += ++d,那么结果为10.++d,计算值为5,同时改变了d本身的值,再计算 d+=5时,就是5+5=10了.5. D printf语句不检查格式字符串和后面变量之间的匹配关系.如果后面变量不足了,就填个随机数,一般是零;如果后面变量多了,就不输出了.一切以格式字符串为准

北碚区13071895132: 求c++大神解答啊 -
颜胜巴美: 把<cmath>换成#i<math.h>试试 while (i<=(int)sqrt(n)&&flag)换成while (i<=(int)sqrt(n*1.0)&&flag) sqrt函数的参数必须是浮点数 所以n换成n*1.0就行了 满意请采纳哦!

北碚区13071895132: 求c++大神解答问题
颜胜巴美: a=1; a = 5 + 5*2 %a-- 这一步 先执行 a = 5 + 5*2%1 在执行 a-- 也就是说 a=5+10%1 = 5 然后a-- ,a=4

北碚区13071895132: C++语言的问题大神求解!! -
颜胜巴美: Void fun(char *a,int b[]) {char p=a[0]; for(int i=0;i b[i]=0; while(p!='\0') { b[*p-48]++; P++;} }

北碚区13071895132: 求c++大神解答啊,我实在是解不出来啊 -
颜胜巴美: #include <iostream> #include <string> using namespace std; int main() { char a[100]; gets(a); int t=strlen(a),k=0; for(int i=0;i<t;i++) { if(a[i]<0)//汉字的ASSCII码值小于0 { cout<<a[i]<<a[i+1]; k++; i=i+1; if(k%5==0) cout<<endl; } } }

北碚区13071895132: 我有一个关于c++的问题,求高手解答
颜胜巴美: a这个变量没有必要,直接用j进行判断就可以了. 修改后的代码如下,供参考,望采纳. #include<iostream> using namespace std; int f(int k) { int p=1,i; for(i=1;i<=k;i++) p*=i; return p; } int main() { int s=0,n,j; cin>>n; for(j=1;j<=n;j+=2) { if((j+1)%4==0) s+=-f(j); else s+=f(j); } cout<<s<<endl; return 0; }

北碚区13071895132: 求C++大神解答问题!读程序~~快要考试了..求大神帮忙丫~~ -
颜胜巴美: 第一题:Value: 10, Constructed!Value: 10, Copy Constructed!Value: 20, Copy Constructed!Value: 20, Destructed!Value: 20, Destructed!Value: 10, Destructed!分析:本题主要考察构造函数和析构函数的特点,以及函数参数传递的特点.先分析...

北碚区13071895132: C++编程问题!求大神解答! -
颜胜巴美: 首先 你a b定义成char型b是后自增 所以输出是 9 9前置是先自增再参加运算,而后置是先参加运算再自增.

北碚区13071895132: C++问题.来个大神解答一下撒
颜胜巴美: 源程序如下: #include <iostream> using namespace std; float pi=3.14; template <typename T> float circumference(T &x) { return 2*pi*x; } template <typename T> float area(T &x) { return pi*x*x; } int main() { int r1; float r2,c1,c2,s1,s2; cout<<"输入圆...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网