2022年西北农林科技大学C语言上机实习答案 .pdf
《2022年西北农林科技大学C语言上机实习答案 .pdf》由会员分享,可在线阅读,更多相关《2022年西北农林科技大学C语言上机实习答案 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实习四答案1、字符串连接/*exer 4-1 两串字符连接*/由键盘任意输入两串字符,不用库函数strcat,连接将两串字符。输入:两串字符输出:连接将两串字符输入样例:abc def 输出样例:abcdef#include#include void main(void)unsigned int i,j;char soustr80,desstr80;/printf(please enter soustr:);gets(soustr);/*输入原串*/printf(please enter desstr:);gets(desstr);/*输入目的串*/i=strlen(soustr);/*取目的
2、串尾部位置*/for(j=0;j=strlen(soustr);j+,i+)soustri=desstrj;/*将原串依次接入目的串尾部*/puts(soustr);2、简单加密程序/*exer 4-2 字符加密*/由键盘任意输入一串字符,对其进行加密,加密原则为:如果为字母,将其循环右移2 个字母,其他字符保持不变。输入:一串字符输出:加密后的字符串输入样例:abl2CDxyz 输出样例:cdl2EFzab 提示:1.可用 gets()和 puts()输入输出字符串。2.利用 ASCII 码运算进行加密。3.循环右移的含义是:将a-z,AZ 各看成一个环进行移动,即y 右移 2 个字母后为a
3、,z 右移 2 个字母后为 b;Y 右移 2 个字母后为A,Z 右移 2 个字母后为B。#include#include void main(void)unsigned int j;char soustr80,secstr80;/printf(please enter soustr:);gets(soustr);/*输入原串*/名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 8 页 -for(j=0;j=A&soustrj=a&soustrj=z)secstrj=(soustrj-a+2)%26+a;/*计算小写字母密文*/else secstrj=soustrj;/*其它字符不
4、变*/puts(secstr);3、矩阵对角线元素求和/*exer 4-3 主和辅对角线上元素之和*/输入一个55 的数组,分别求其主对角线和辅对角线上元素之和。输入:55 的数组输出:主对角线和辅对角线上元素之和输入样例:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 输出样例:65 65 主对角线为从矩阵的左上角至右下角的连线,在数组中即指行列下标相同的元素,辅对角线为从矩阵的右上角至左下角的连线,这些元素的下标之间也可用相应的表达式表达。#include#include void main(void)in
5、t i,j;int a55;int sum1=0,sum2=0;/printf(please enter soustr:);for(i=0;i5;i+)for(j=0;j5;j+)scanf(%d,&aij);/*输入数组*/for(i=0;i5;i+)sum1=sum1+aii;/*主对角线*/sum2=sum2+ai4-i;/*辅对角线*/printf(%d%dn,sum1,sum2);4、数据顺序调整/*exer 4-4 将最大数调到最前面,最小数调到最后面*/名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 8 页 -由键盘任意输入10 个数,将最大数调到最前面,最小数调到
6、最后面。输入:任意 10 个数 输出:数据调整后的 10 个数。输入样例:0 1 2 3 4 5 6 7 8 9 输出样例:9 1 2 3 4 5 6 7 8 0 提示:定义四个变量d1、d2、x1、x2,分别存放最大数、最小数及它们的位置;在循环开始前,将第一个元素作为参考,将其值分别存入d1、x1,将其下标分别存入d2、x2;在循环中将其它元素逐一与d1 比较,若比d1 大,将其存入d1,并将其下标存入d2;否则将其与x1 比较,若比x1 小,将其存入x1,并将其下标存入x2;结束循环后,将 d2 所示位置的数与第一个数交换,将 x2 所示位置的数与最后一个数交换,然后输出数组所有元素即可
7、。#include#include void main(void)int i,a10,temp;int kmax=0,kmin=0;/printf(please enter:);for(i=0;i10;i+)/*输入数组*/scanf(%d,&ai);for(i=0;iakmax)kmax=i;/*找最大数位置*/else if(aiakmin)kmin=i;/*找最小数位置*/if(kmax=9&kmin=0)temp=a0;a0=akmax;akmax=temp;/*与最前面的数交换*/else temp=a0;a0=akmax;akmax=temp;/*与最前面的数交换*/temp=a9
8、;a9=akmin;akmin=temp;/*与最后面的数交换*/for(i=0;i9;i+)printf(%d,ai);/*输出数组*/printf(%dn,ai);名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 8 页 -5、字符个数统计/*exer 4-5 统计大写字母、小写字母、数字及其它字符的个数*/由键盘输入任意一串字符串,将其存入一个字符数组,统计其中的大写字母、小写字母、数字以及其他字符的个数。输入:任意一串字符串输出:大写字母、小写字母、数字以及其他字符的个数。输入样例:abcdefg123456ABCDEFG 输出样例:7 7 6#include#includ
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年西北农林科技大学C语言上机实习答案 2022 西北农林 科技大学 语言 上机 实习 答案
限制150内