鱼C论坛

 找回密码
 立即注册
查看: 1991|回复: 4

[技术交流] 关于int main() 和 C视频的中加密的两个问题

[复制链接]
发表于 2015-6-5 15:53:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1- 为什么有的书中是int main 而非 void main 呢?
2-我的代码:
/***********************************************

purpose:加密解密
Algorithm: 先加4 后减4 China->G****

************************************************/


#include <stdio.h>
#include <stdlib.h>

int main()
{

    char a,b,c,d,e;
    int passwords;

    printf("Please input original content!");
    scanf("%c%c%c%c%c",&a&b&c&d&e);

    a = a+4;
    b = b+4;
    c = c+4;
    d = d+4;
    e = e+4;

    printf("The content is %c%c%c%%c%c\n",a,b,c,d,e);
    printf("Please input the passwords!\n");
    scanf("%d",passwords);

    if (331414 == passwords)
    {
    a = a-4;
    b = b-4;
    c = c-4;
    d = d-4;
    e = e-4;
    printf("The content is %c%c%c%%c%c\n",a,b,c,d,e);
    }
    else
        printf("the wrong passwords!\n");

}

报错:E:\小甲鱼学习课程\programmer_Aidon\C\0017\0017.c(19) : error C2296: '&' : illegal, left operand has type 'char *'
执行 cl.exe 时出错.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-6 21:59:03 | 显示全部楼层
1.编译器原因,不必深究,int main的方式可能更好些
2.语法错误,后面的参数与参数之间需要逗号隔开,即:
scanf("%c%c%c%c%c",&a, &b, &c, &d, &e);

楼主的程序还有其它错误,“password”没有加取地址符,最后没有返回值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-9 16:33:50 | 显示全部楼层
南郊居士 发表于 2015-6-6 21:59
1.编译器原因,不必深究,int main的方式可能更好些
2.语法错误,后面的参数与参数之间需要逗号隔开,即: ...

/***********************************************

purpose:加密解密
Algorithm: 先加4 后减4 China->Glame****

************************************************/


#include <stdio.h>
#include <stdlib.h>

int main()
{

    char a,b,c,d,e;
    int passwords;

    printf("Please input original content!");
    scanf("%d,%d,%d,%d,%d",&a&b&c&d&e);

printf("The content is %c,%c,%c,%c,%c\n",a,b,c,d,e);
    a = a+4;
    b = b+4;
    c = c+4;
    d = d+4;
    e = e+4;

    printf("Please input the passwords!\n");
    scanf("%d",&passwords);

    if (331414 == passwords)
    {
    a = a-4;
    b = b-4;
    c = c-4;
    d = d-4;
    e = e-4;
    printf("The content is %c,%c,%c,%c,%c\n",a,b,c,d,e);
    }
    else
        printf("the wrong passwords!\n");
return 0;

}
已经做出了改变 编辑还是出错,错误指向:scanf("%d,%d,%d,%d,%d",&a&b&c&d&e);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-6-9 16:59:57 | 显示全部楼层
阁龙1427 发表于 2015-6-9 16:33
/***********************************************

purpose:加密解密

c语言中函数调用每个参数之间都需要用逗号隔开,你用scanf接收输入,a、b、c、d、e都是独立的参数,怎么能写成&a&b&c&d&e这样呢,之间都需要逗号隔开的,你仔细看我的代码
scanf("%d,%d,%d,%d,%d",&a, &b, &c, &d, &e);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-18 15:40:37 | 显示全部楼层
谢谢 问题解决了额
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 01:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表