编写字符串拷贝程序,并要求将字符串中的小写字母转换成大写字母! 谁能帮我解释下这个程序谢了

2025-03-25 20:15:40
推荐回答(3个)
回答1:

#include

int main()

{char a[80],b[80];

int i;

printf("输入一个字符串:\n");        //提示

gets(a);            //读入字符串

for(i=0;b[i]=a[i];i++)    //复制整个字符串(连同串结束标记)

if(b[i]>='a'&&b[i]<='z')    //若是小写字母

b[i]-=32;        //转为大写字母

puts(b);        //输出转换后的字符串

}

回答2:

#include
char toupper(char c)
{
int i;
i = c;
return (i-32);
}
main()
{
char a[80],b[80]; //定义2个数组分别保存输入的字符和拷贝后的字符
int i;
printf("输入一个字符串:"); //输出"输入一个字符串:"这句话
gets(a); //从键盘中读取输入的字符并保存到数组a中去
for(i=0;a[i]!='\0';i++) //用循环检查单个字母,直到遇到'\0',这里你因该写错了。
{
b[i]=a[i]; //把数组a里面的字符逐个地赋给数组b
if(b[i]>='a'&&b[i]<='z') // 判断是不是小写字母
b[i]=toupper(b[i]); //赚换成大写
}
puts(b); //输出数组b的字符
}

回答3:

toupper这个函数你没贴上来