C语言 程序设计

C语言 程序设计,第1张

#include <stdioh> //3、给数据加密程序

#include <mathh>

int encrypt(int a,int b,int c,int d); //加密函数

int deciphering(int a,int b,int c,int d); //解密函数

main()

{

int number,k;

int g,s,b,q;

printf("please enter a number(四位数):");

scanf("%d",&number);

printf("---------------------------------\n"); //菜单

printf("-------------菜单选项------------\n");

printf("---------------------------------\n");

printf("1对输入的四位数进行加密 *** 作。\n");

printf("2对输入的四位数进行解密 *** 作。\n");

printf("3退出程序。\n");

printf("---------------------------------\n");

while(k!=3) //循环选择 *** 作

{

printf("please enter your chance:");

scanf("%d",&k);

g=number%10;

s=number/10%10;

b=number/100%10;

q=number/1000;

switch(k)

{

case 1: //加密选项

{

encrypt(g,s,b,q);

printf("加密后的数字为:%d\n",encrypt(g,s,b,q));

}

break;

case 2: //解密选项

{

deciphering(g,s,b,q);

printf("解密后的数字为:%d\n",deciphering(g,s,b,q));

}

break;

case 3: //退出选项

{

printf("close the code!\n");

}

break;

default:

{

}

break;

}

}

}

int encrypt(int a,int b,int c,int d) //加密函数

{

int encryptnumber=0;

int temp1,temp2;

if(a+5>=10) //判断是否超过十,此处可以简化为函数,不过我没做

{

a=abs(a+5-10);

}

else

{

a=a+5;

}

if(b+5>=10)

{

b=abs(b+5-10);

}

else

{

b=b+5;

}

if(c+5>=10)

{

c=abs(c+5-10);

}

else

{

c=c+5;

}

if(d+5>=10)

{

d=abs(d+5-10);

}

else

{

d=d+5;

}

temp1=a;

a=d;

d=temp1;

temp2=b;

b=c;

c=temp2;

encryptnumber=d1000+c100+b10+a;

//printf("加密后的数字为:%d\n",encryptnumber);

return encryptnumber;

}

int deciphering(int a,int b,int c,int d) //解密函数

{

int encrypt(int a,int b,int c,int d); //函数嵌套

int decipheringnumber=0;

int encryptnum=encrypt(a,b,c,d); //取得加密函数的结果

int temp1,temp2;

int gg,ss,bb,qq;

gg=encryptnum%10;

ss=encryptnum/10%10;

bb=encryptnum/100%10;

qq=encryptnum/1000;

temp1=gg;

gg=qq;

qq=temp1;

temp2=bb;

bb=ss;

ss=temp2;

if(gg-5<=0) //判断是否超过十,此处可以简化为函数,不过我没做

{

gg=abs(gg-5+10);

}

else

{

gg=gg-5;

}

if(ss-5<=0)

{

ss=abs(ss-5+10);

}

else

{

ss=ss-5;

}

if(bb-5<=0)

{

bb=abs(bb-5+10);

}

else

{

bb=bb-5;

}

if(qq-5<=0)

{

qq=abs(qq-5+10);

}

else

{

qq=qq-5;

}

decipheringnumber=qq1000+bb100+ss10+gg;

return decipheringnumber;

}

第一章 习题答案

一、选择题

1~5:BDCDA 6~10:DABBB 11~12:CC

二、填空题

1、main()

2、函数首部 ,函数体

3、函数

4、编辑、编译、连接、运行

5、cpp、obj、 exe

6、; 或 分号

三、编程题

#include <stdioh> / 包含标准库的信息 /

void main() / 定义名为main 的函数,它不接受参数值 /

{ / main函数的语句都被括在花括号中 /

printf("hello, world\n");

/ main 函数调用库函数printf 以显示字符序列,其中\n代表换行符 /

}

第二章 习题答案

一、选择题

1~5:CBABB 6~10:CDCDD 11~15:CADBC 16~20:BDAAD

二、填空题

1、整型,实型,字符型,枚举类型

2、1

3、9

4、12353514

5、2,1

6、2,2

7、10 20 0

8、a=14

9、2,3,1

首先,你要先明白,这个程序有两部分组成:函数fun()和主函数main();main()调用fun()函数实现算法运算。

首先介绍主函数main():主要负责打印输出结果,for循环由k控制,连着调用fun()函数两次,并打印。

fun()函数:实现算法运算。

第一次调用:x == 1(参数a的值), z == 4(在z++后), y==1(在y++后),所以此时返回值(x + y + z) = 6

第二次调用:x == 1(参数a的值), z == 5(在第一次z++后,本次有执行了一次z++), y==2(在第一次y++后,本次有执行了一次y++),所以此时返回值(x + y + z) = 8

直接运行了一次你的代码,输出结果如下:

注意事项以及建议:

1、这个道题目我觉得是对static的考察。

2、static 修改的变量在整个程序生命周期内只会被定义一次,并且在程序生命周期结束前,其上次的运行结果会被保存,供下次使用。

3、在fun()函数中, y,z是static类型。

如果以上问题对你有帮助,请采纳一下,谢谢。

以上就是关于C语言 程序设计全部的内容,包括:C语言 程序设计、《C语言程序设计》习题答案吉林大学出版社、C语言程序设计求详解过程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9274470.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存