c语言编程题题目 求一详细解答
【要求】(1)定义函数intStrTransfer(char*str),用于将字符串中的小写英文字母改成大写,并返回被转换的字符数量。(2)main函数功能:从键盘输入字...
【要求】
(1)定义函数int StrTransfer(char *str),用于将字符串中的小写英文字母改成大写,并返回被转换的字符数量。
(2)main函数功能:从键盘输入字符串,并调用函数StrTransfer,将相关信息输出到屏幕,以及输出到文件”Transfer.txt”中。
【举例】若用户输入 aBC12def3Gh 则屏幕与文件中出现信息如下:
初始字符串: aBC12def3Gh 转换后字符串: ABC12DEF3GH 被转换的字符共5个。 展开
(1)定义函数int StrTransfer(char *str),用于将字符串中的小写英文字母改成大写,并返回被转换的字符数量。
(2)main函数功能:从键盘输入字符串,并调用函数StrTransfer,将相关信息输出到屏幕,以及输出到文件”Transfer.txt”中。
【举例】若用户输入 aBC12def3Gh 则屏幕与文件中出现信息如下:
初始字符串: aBC12def3Gh 转换后字符串: ABC12DEF3GH 被转换的字符共5个。 展开
展开全部
查一个isupper等函数,学编程还是要想的,自动动手写一写,islower函数,再加上if判断一下
或者用if('a'<c&&c<'z')判断也可以
或者用if('a'<c&&c<'z')判断也可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(s[i]<='z'&&s[i]>='a') {s[i]=s[i]-'a'+'A'; count++;}
return count;
return count;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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;
}
目前已经完成一部分了,要下班了,没时间了,你自己看看能不能完成下半部分,如果不能请继续追问,望采纳!!!
{
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;
}
目前已经完成一部分了,要下班了,没时间了,你自己看看能不能完成下半部分,如果不能请继续追问,望采纳!!!
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询