首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。调用fun函数输出字符串,当奇数次调用时要求把字符串中的小写字母转换成大写字母,偶数次调用时按输入字符串的逆序输出字符串。 请改正函数fun中指
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。调用fun函数输出字符串,当奇数次调用时要求把字符串中的小写字母转换成大写字母,偶数次调用时按输入字符串的逆序输出字符串。 请改正函数fun中指
admin
2018-10-20
84
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。调用fun函数输出字符串,当奇数次调用时要求把字符串中的小写字母转换成大写字母,偶数次调用时按输入字符串的逆序输出字符串。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行。也不得更改程序的结构。
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#pragma warning(disable:4996)
void fun(char*s)
{inti;
/*********found*********/
Statc intn=1;
if(n++%2)
/*********found*********/
for(i=0;i<=strlen(s);i++)
printf("%c",islower(s
)toupper(s
):s
);
else
/*********found*********/
for(i=strlen(s)﹣1;i>0;i﹣﹣)
printf("%c",s
);
}
main()
{int}i;
char s[]="Hello,C Programmer";
for(i=0;i<5;i++){fun
(s);printf("\n");}
}
选项
答案
(1)将Static改为static (2)将for循环中的i<=strlen(s)改为i<strlen(s) (3)将for循环中的i>0改为i>=0
解析
(1)函数使用static修饰变量n,用来保存调用次数以便判断是奇数次还是偶数次,关键字应为static,第一个字母为小写,所以将Static改为static。
(2)用strlen()计算字符串长度,但因为字符串保存在一个数组中,而数组元素是从0位置开始的,例如一个字符数组s[]有5个字符,利用数组调用它们应为a[0]、a[1]、a[2]、a[3]、a[4],for循环中当i=strlen(s﹣1)时即为最后一个字符,所以将for循环中的i<=strlen(s)改为i<strlen(s)。
(3)利用for循环从该字符数组最后一个字符开始依次向前输出字符,实现该字符串的逆序输出,字符数组的第一个元素应为s[0],因此最后输出的字符为s[0],所以将for循环中的i>0改为i>=0。
转载请注明原文地址:https://kaotiyun.com/show/GMxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
已知字母a的ASCII码为十进制数的97,下面程序的输出结果是______。 main() { char c1,c2; c1=’a’+’5’-’3’; c2=’a’+’6’-’3’; printf("%c,%d\n",c1,c2); }
有如下程序 long fib(int n) { if(n>2)return(fib(n-1)-fib(n-2)); else return(1); } main() { printf("%d\n",fib(5)); }该程序的输出结果是______。
下列特征中不是面向对象方法的主要特征的是()。
若有定义inta=10,b=9,c=8;,接着顺序执行下列语句,变量b中的值是【】。c=(a-=(b-5));c=(a%11)+(b=3);
不改变关系表中的属性个数但能减少元组个数的是()。
在下列字符序列中,合法的标识符是()
有以下程序intadd(inta,intb){return(a+b);}main(){intk,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是
下列程序的运行结果是【】。main(){inti;for(i=1;i<=5;i++)f(i);}f(j){intj;staticinta=1000;auto
若有定义doublea[5];,则a数组元素下标的上限为______。
有如下说明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是______。
随机试题
我同对外政策的根本原则是()
局域网的网络软件主要包括网络数据库管理系统、网络应用软件和__________。()
等渗性缺水病人,给予补充液体治疗应首选
急性心肌梗死时最早最突出的症状是
硬肿症的好发季节是
我国学者提出的青年发展课题包括()。
阅读下面短文,回答下列问题。新闻作为一种媒体信息,本应有助于人们了解事情的真相,如信息论的提出者香农就曾把信息定义为“不确定性的消除”,然而信息也会增加人们对真相认识的不确定性。尤其在这个信息爆炸的时代,如何摆脱这种困境?除了优化信息环境外,更现实的途径
1755年,以罗蒙诺索夫为首的学者、科学家创办了莫斯科大学。莫斯科大学的专业不包括
设F1(x)与F2(x)分别是随机变量X1与X2的分布函数,为使F(x)=aF1(x)一bF2(x)是某一随机变量的分布函数,在下列给定的各组数值中应取
Evenbeforeheis80,theagingpersonmayundergoanotheridentitycrisislikethatofadolescence.Perhapstherehadalsobeen
最新回复
(
0
)