77范文网 - 专业文章范例文档资料分享平台

字符串习题

来源:网络收集 时间:2020-06-03 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

字符串习题

要求:独立完成。

做完这些题目以后,以word格式文件发到网站

改错题目在原题上直接改,并且用加粗加红字体方式明显标出 编程题目直接将代码粘贴在题目后面

注意排版格式,可用VC的Alt+F8功能格式化文本 发送文件名格式学号+姓名

在周日之前提交,若错过时间发至邮箱(chengzkahut@gmail.com)

1.用调试程序的方法找出下列程序的错误:

输入一个以回车结束的字符串(少于80个字符),将它的内容逆序输出。如“ABCD”输出为“DCBA”。 源程序如下:

#include int main( ) {

int i, k, temp;

char str[81];

printf(\ i = 0;

while((str[i] = getchar( )) != '\\n') i++; str[i] = '\\0'; k = i - 1;

for(i = 0; i < =(k-1)/2; i++){ /* 调试时设置断点 */ temp = str[i];

str[i] = str[k-i]; str[k-i] = temp;

} /* 调试时设置断点 */ for(i = 0; str[i] != '\\0'; i++) putchar(str[i]);

return 0; }

2.输入一个字符,再输入一个以回车结束的字符串(少于80个字符),在字符串中查找该字符。如果找到,则输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出“Not

Found”。

#include int main( ) {

int i, k, temp; char str[81],ch,ch1; printf(\输入一个字符:\\n\ scanf(\ /*ch1在这里是吸收回车键*/ printf(\ i = 0;

while((str[i] = getchar( )) != '\\n') i++;

for(i=0;str[i]!='\\0';i++) {if(str[i]==ch) {k=i;temp=1;} } if(temp==1) printf( \这个字符最大的下标是:%d\ else printf(\ }

3.输入一个以回车结束的字符串(少于80个字符),统计并输出其中大写辅音字母的个数(大写辅音字母:除A、E、I、O、U以外的大写字母)。 #include int main( ) {

int i, k=0; char str[81]; printf(\ i=0;

while((str[i] = getchar( )) != '\\n') i++;

for(i=0;str[i]!='\\0';i++)

if(str[i]>='A'&&str[i]<='Z')

if(str[i]=='A'||str[i]=='E'||str[i]=='I'||str[i]=='O'||str[i]=='U') continue; else k++;

printf(\字符串中的大写辅音字符有:%d个\}

4. 输入一个以回车结束的字符串(少于80个字符),将其中的大写字母用下面列出的对应大写字母替换,其余字符不变,输出替换后的字符串。

原字符 对应字母 A―――>Z B―――>Y C―――>X D―――>W ???? X―――>C Y―――>B Z―――>A

#include int main( ) {

int i, n; char str[81]; printf(\ i=0;

while((str[i] = getchar( )) != '\\n') i++;

for(i=0;str[i]!='\\0';i++)

if(str[i]>='A'&&str[i]<='Z') {n=str[i]-'A';

str[i]=(str[i]+25-n*2);}

printf(\变换后的字符串是:%s\\n\}

5. 输入一个以回车结束的字符串(少于80个字符),滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。

6. 用调试程序的方法找出下列程序的错误:

输入一个以回车结束的字符串(少于80个字符),把字符串中的所有数字字符(0~9)转换为整数,去掉其他字符。例如,字符串“3a56bc”转换为整数后是356。

源程序如下:

#include #include int main(void) {

int i,s=0;

char str[80];

i = 0;

while((str[i] = getchar( )) != '\\n')

i++; str[i] = '\\0';

for(i = 0;str[i]!='\\0'; i++) if(str[i] >= '0' || str[i] <= '9')

s = s * 10 + str[i]-'0';

printf(\

return 0; }

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库字符串习题在线全文阅读。

字符串习题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1084959.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: