c语言编程题题目 求一详细解答

【要求】(1)定义函数intStrTransfer(char*str),用于将字符串中的小写英文字母改成大写,并返回被转换的字符数量。(2)main函数功能:从键盘输入字... 【要求】
(1)定义函数int StrTransfer(char *str),用于将字符串中的小写英文字母改成大写,并返回被转换的字符数量。
(2)main函数功能:从键盘输入字符串,并调用函数StrTransfer,将相关信息输出到屏幕,以及输出到文件”Transfer.txt”中。
【举例】若用户输入 aBC12def3Gh 则屏幕与文件中出现信息如下:
初始字符串: aBC12def3Gh 转换后字符串: ABC12DEF3GH 被转换的字符共5个。
展开
 我来答
百度网友f655510
2013-05-27 · TA获得超过123个赞
知道小有建树答主
回答量:82
采纳率:0%
帮助的人:68.9万
展开全部
查一个isupper等函数,学编程还是要想的,自动动手写一写,islower函数,再加上if判断一下

或者用if('a'<c&&c<'z')判断也可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dezhonger
2013-05-27 · TA获得超过153个赞
知道答主
回答量:85
采纳率:0%
帮助的人:56.6万
展开全部
if(s[i]<='z'&&s[i]>='a') {s[i]=s[i]-'a'+'A'; count++;}

return count;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CraZy_小猪
2013-05-27 · TA获得超过792个赞
知道小有建树答主
回答量:871
采纳率:55%
帮助的人:269万
展开全部
int StrTransfer(char *str)
{
int index = 0;
int istrlen = 0;
if (!str){
return index;
}
istrlen = strlen(str);
for (int i = 0;i<istrlen;i++){
if ( (97<=str[i]) && (str[i] <= 122)){
str[i]-=32;
index++;
}
}
return index;
}
int main(int argc, char* argv[])
{
char *p = NULL;
int strNum = 0;
p = new char[256];
HANDLE hFileHandle = NULL;
DWORD dwSize = 0;
char OputStr[20] = {"初始字符串:"};
scanf("%s",p);
hFileHandle = ::CreateFile("D:\\Transfer.txt", GENERIC_READ|GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (!hFileHandle){
printf("文件创建失败!");
return 0;
}
printf("%s",OputStr);
printf("%s\n",p);
int lenth = strlen(p);
::WriteFile(hFileHandle, OputStr, sizeof(OputStr), &dwSize, NULL);
::WriteFile(hFileHandle, p, lenth, &dwSize, NULL);
strNum = StrTransfer(p);
printf("转换的个数为:%d\n",strNum);
if (p){
delete []p;
p = NULL;
}
return 0;
}

目前已经完成一部分了,要下班了,没时间了,你自己看看能不能完成下半部分,如果不能请继续追问,望采纳!!!
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式