24小时热门版块排行榜    

查看: 862  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

zyj8119

木虫 (著名写手)

[交流] 【求助】请教一个C++语言程序 已有1人参与

CODE:
#include
#include
struct DIC{
        char name[3];
        char code[5];
};
struct PROD{
        char name[3];
        char no[3];
};

void code(PROD *p1,int m,DIC *p2,int n)
{    for(int i=0;i              char code[8];
                 for(int j=0;j                          if(strcmp((p1+i)->name,(p2+j)->name)==0){
                                 strcpy(code,(p2+j)->code);
                                 strcpy(code+4,(p1+j)->no);
                                 break;
                         }
                         if(j>=n){
                                 cout<<"企业名称:"<<(p1+i)->name<<';';
                                 cout<<"内部产品编号:"<<(p1+i)->no<<','<<"企业名不存在"<                                  continue;
                         }
                         for(int k=0,m=0;k<6;k++)
                                 if(code[k]=='1')m++;
                         code[k]=m%2+'0';
                         code[k+1]='\0';
                         cout<<"企业名称:"<<(p1+i)->name<<',';
                         cout<<"内部产品编号:"<<(p1+i)->no<<','<<"产品代码:"< }
}

void main()
{    DIC di[4]={"AA","0101","BB","1101","CC","0111","DD","1111"};
     PROD pr[5]={"AA","01","BB","10","CC","11","EE","10","DD","01"};
         code(pr,5,di,4);
}

[ Last edited by zyj8119 on 2010-11-1 at 21:24 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

好好学习,天天向上。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fzr417

木虫 (正式写手)


zyj8119(金币+1):谢谢参与
引用回帖:
Originally posted by zyj8119 at 2010-11-01 21:23:58:

还有=和==有什么区别?||和&&有什么区别?

=是赋值,比如 int i=1;
==是比较它们是否相等,如
if(i==j)
就是如果i与j是相等的话,执行后面的语句
如果在if()括号里面用i=j的话,就会执行的是,把j的值赋给i,然后判断i是否为真(非0),如果为真,则执行后面的语句


||是或的意思
&&是与,并且的意思
比如,if(i>2 && j>3),就是如果i大于2且j大于3,则执行后面的语句
if(i>2 || j>3),就是如果i大于2,或者j大于3,只要有一个成立,则执行后面的 语句
8楼2010-11-02 14:21:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

zyj8119

木虫 (著名写手)

引用回帖:
Originally posted by zyj8119 at 2010-11-01 21:19:21:
[code]#include
#include
struct DIC{
        char name[3];
        char code[5];
};
struct PROD{
        char name[3];
        char no[3];
};

void code(PROD *p1,int m,DIC *p2,int n ...

code[k]=m%2+'0';
                         code[k+1]='\0';
这两句是什么意思?"\0"和'\0'有什么区别?
好好学习,天天向上。
2楼2010-11-01 21:20:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

引用回帖:
Originally posted by zyj8119 at 2010-11-01 21:20:29:

code[k]=m%2+'0';
                         code[k+1]='\0';
这两句是什么意思?"\0"和'\0'有什么区别?

还有=和==有什么区别?||和&&有什么区别?
好好学习,天天向上。
3楼2010-11-01 21:23:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚


zyj8119(金币+1):谢谢参与
CODE:
code[k]=m%2+'0';
code[k+1]='\0';

这是要“凑”一个什么码。

例如,m=8的话,m%2=0
那么,code[k]这个字符就是‘0’

而,m=9的话,m%2=1
那么,code[k]这个字符就是‘1’;即'0'+1,字符'0'加上1,就是字符'1'。

code[k+1]='\0';

这是为了给code这个字符串加上一个结束符。
5楼2010-11-01 22:58:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见